I have some success on RB433UAH!
After playing a little in mach-rb4xx.c, I managed to get 'ether2' and 'ether3' ports working (ping), and swconfig also sees the switch. Unfortunately, ether1 doesn't work anymore ): , which was the only one working before. Somehow we have to find this out (:
Here's what I modified in mach-rb4xx.c (almost the same as luboznaiko suggested):
@@static void __init rb433_setup(void)
- ar71xx_add_device_mdio(0xffffffe9);
+ ar71xx_add_device_mdio(0xffffffe0);
- ar71xx_eth1_data.phy_mask = 0x00000010;
+ ar71xx_eth1_data.phy_mask = 0x00000001;
This makes the switch work, but it is seen as eth0, not eth1 as it's supposed to be I guess.
Maybe that's the reason 'ether1' stops working.
Regarding to swconfig 'ether2' is port1, 'ether3' is port2, and 'ether1' is port4.
This is also strange, because i thought 'ether1' is a stand alone port, it shouldn't be seen as a switch port. Right?
And also there is no Generic PHY detected in dmesg, only IP17XX PHY.
I'll post dmesg later, now I'm not with the board.
Maybe a little more play with those addresses and masks should get everything working. Isn't there any way to find the correct values for them.
(Last edited by duvi on 2 Jun 2010, 12:36)