[U-Boot] How do I use AM335x eth1 rather than eth0 ? [SOLVED]
Mark Jackson
mpfj-list at mimc.co.uk
Sat Apr 13 19:46:11 CEST 2013
On 12/04/13 11:56, Mark Jackson wrote:
> We have a dual Ethernet board (based on the BeagelBone) but with both Ethernet ports connected.
>
> I'm wanting to use eth1 (rather than eth0), so in my board.c file, I changed:-
>
> static struct cpsw_slave_data cpsw_slaves[] = {
> {
> .slave_reg_ofs = 0x208,
> .sliver_reg_ofs = 0xd80,
> .phy_id = 0,
> },
> {
> .slave_reg_ofs = 0x308,
> .sliver_reg_ofs = 0xdc0,
> .phy_id = 1,
> },
> };
>
> ... to ...
>
> static struct cpsw_slave_data cpsw_slaves[] = {
> {
> .slave_reg_ofs = 0x308,
> .sliver_reg_ofs = 0xdc0,
> .phy_id = 1,
> },
> {
> .slave_reg_ofs = 0x208,
> .sliver_reg_ofs = 0xd80,
> .phy_id = 0,
> },
> };
>
> ... assuming that eth0 would now be ignored (as only 1 slave is configured).
>
> But (eg) dhcp still only responds on eth0 !?!
>
> What else do I have to change ?
After much experimenting, I've managed to get it to work.
Based on the original board.c file copied from the TI starter kit, I
simply changed the slaves count to 2, and set CONFIG_PHY_ADDR to 1 in my
board config file.
Simple.
More information about the U-Boot
mailing list