How to properly register a custom PHY (Analog Devices ADIN1300) in TSE driver
Hi,
I am working on a project using NIOS-V with uc/OS and TSE MAC.
You can find attached all needed info (adin1300 datasheet, ug_ethernet, TSE c driver (zip)).
I need to add support for the ADIN1300 PHY.
I followed the Ethernet User Guide and created a PHY profile using alt_tse_phy_profile, along with a custom link‑status reader (ADIN1300_link_status_read()).... So far this part is clear.
My question is about "alt_tse_system_add_sys()." The user guide mentions the option to define each PHY instance using "alt_tse_system_phy_struct" and register it with _add_sys()... but I don’t see this function used for any of the default supported PHYs (DP83848C, DP83865, 88E1111, 88E1145).
Do I need to use "alt_tse_system_add_sys()" for the ADIN1300, or is it enough to only add the custom profile using "alt_tse_phy_add_profile()" and rely on the driver’s auto-detection?
Thanks.
Moran Farcas
I reviewed the PHY initialization process in the TSE driver. And it looks ADIN1300 PHY supports the standard MDIO specification.
I believe it will work by just adding alt_tse_system_phy_struct for that PHY and calling alt_tse_phy_add_profile() in alt_tse_phy_add_profile_default() function.
So ADIN1300 PHY should also be supported simply by using the altera_avalon_tse.c you attached. If you haven't done so yet, please try it. If you encounter any issues, please share them.
Thanks,
ShoH