[U-Boot] cpsw not working with slave2 port defined only
Mugunthan V N
mugunthanvnm at ti.com
Mon Jun 1 11:10:40 CEST 2015
On Tuesday 26 May 2015 01:00 AM, Belisko Marek wrote:
> Hi,
>
> I have custom am33xx board with phy connected to slave2 port. I
> copy'n'paste cpsw setup from /board/BuR/common/common.c but I'm using
> only slave2 port (RMII mode) so my cpsw_slave_data looks like:
>
> static struct cpsw_slave_data cpsw_slaves[] = {
> {
> .slave_reg_ofs = 0x308,
> .sliver_reg_ofs = 0xdc0,
> .phy_addr = 4,
> },
> };
>
> with this configuration cpsw driver can detect link but it cannot
> establish any communication (tested with dhcp command). When I add to
> cpsw_slaves dummy slave1 port definition (with e.g. phy_addr = 0) it
> start working.
>
> mdio bus is working fine (tested with mdio list + mdio read). Pinmux
> is good as it works with dummy slave1 config. Any ideas what I'm doing
> wrong or why only slave2 port cannot be used? I grep whole source code
> but all boards using cpsw use slave1 only or slave1/slave2
> configurations. Many thanks.
>
Do not remove slave 0 structures and have no of slaves as 2 and set
active slave to 1 as done in the following commit
4c8014b9429b593c28fbf0384a6c7ded8587806a in mainline u-boot.
The driver uses the slave numbers to add mac address to ALE, which will
fail when you remove slaves from the salve structures.
Regards
Mugunthan V N
More information about the U-Boot
mailing list