How does the magic SPI/JTAG tile debricking method work?

Hi Domino team and fans,

Firstly, domino.io is great! I do own a bunch of ar9331 routers, carambola2s and som9331 modules, and domino.io is the best, especially at this price point and with i2s support.

I’ve been trying to figure out how the SPI/JTAG method works. How does the ar9331 know to boot from the external chip? Is this a trick pulled by the u-boot? Please, someome shed some light on this “magic”.

Thanks!

Yes. It is a trick. The two flash is parallel. But when the internal flash cannot boot (uboot cannot boot at all), it will use the external flash to boot.

When the internal flash’s uboot is OK, you don’t need this trick.

So the 2 chips are just wired in parallel, both connected to the same SPI bus? Why no smoke then? Why does the piggyback flash takes precedence? No chip-select line manipulation or anything?

I am tempted to flash a domino module’s flash chip with 0x00 and check if the method still works, but I’m afraid it will not.

we have done a lot of test. No smoke, as long as you didn’t connect in the wrong polarity.