This router has two switches. Built-in SoC (bcm53012) and external (bcm53125). These serve 8 physical lan ports and 1 wan port on the router.
The built-in switch is detected and can be programmed, however the external one isn't detected.
3 out of 8 lan ports are wired to internal switch and rest 5 are wired to external. I found out this by doing a "robo reset" of gpio pin #10. Which made 5 ports not usable. Rebooting the router enables them again.
I'm trying to figure out a way to access the external switch and configure it. Any ideas?
Above information should allow us to communicate with external switch via mdio -> external bit -> gpio mux -> 53125. This is how the GPL source does it. I haven't been able to do this with LEDE unfortunately. It appears to have two levels of muxing happening.
Also, both 0x18003000 and 0x1800c000 are mapped/used by usb2-phy and usb3-phy nodes. I think some how this mapping in current bcm5310x.dtsi is incorrect. But my understanding limited and can only go so far.
I'll keep digging, although soon I'll have less time to spend on this
I have been able to successfully detect both switches now using DSA driver and DTS changes. The problem now is that, LEDE (non-DSA b53 driver) creates switchX devices and are automatically setup by LEDE. DSA does not create switchx devices, and treats all ports on the swiches as individual devices. I'm trying to figure out how to use brctl + bridge utility to configure 8 + wan ports
Did you solve this issue?
First of all, thank you very much for your hard work.
By the way, I tried openwrt-20190315.trx, but I have problem with communicating between ports of BCM53125 (lan 1,5,2,6) and ports of BCM53012 (lan 7,4,8)