Tool/software: Linux
Hi Everyone,
I'm attempting to get our ethernet phy working and running into an issue. We are on a DM385 with a Marvell 88E1510 phy chip. The steps I've taken to get this chip working so far are:
1. Enable Marvell phy's in the kernel config
2. Patch the kernel's Marvell phy driver to add support for the 88E1510 ()
3. Bring the phy out of reset in uboot
At this point, upon bootup, davinci_mdio.c could probe the phy and would print:
davinci_mdio davinci_mdio.0: davinci mdio revision 1.6 davinci_mdio davinci_mdio.0: detected phy mask fff7ffff davinci_mdio.0: probed davinci_mdio davinci_mdio.0: phy[19]: device 0:13, driver unknown
At that point, I was able to modify the kernel's devices.c (arch/arm/mach-omap2/devices.c) to change the phy_id of cpsw_slaves[] from 0:00 to 0:13. After this change, CPSW could find the phy, however the id it gives is incorrect:
CPSW phy found : id is : 0x4820482
PHY 0:01 not found
From the modification to the marvell driver I made, the id should be 0x01410dd0, not 0x4820482. If I modify the driver to change the id to 0x4820482, davinci_mdio.c will correctly find the driver for the phy. Even though it finds the driver, it does not actually work.
Does anyone know why my phy id is coming back as 0x4820482 instead of 0x01410dd0?
Thanks!