Reputation: 31
I recently study Linux phy driver, and i have some questions that need help.
For example: my ethernet phy is Marvell Alaska 88E1548
Thank you~
Upvotes: 1
Views: 4365
Reputation: 9412
The general procedure for porting PHYS is looking for completely or partly compatible existing PHYS like in http://git.emacinc.com/Linux-Kernel/linux-emac/commit/819ec8e1f349f73bdf65bf33a364538e59007a9a
According to datasheet and product brief ( https://www.marvell.com/transceivers/assets/Marvell-Alaska-88E1548-48P-Product-Brief.pdf, https://www.marvell.com/documents/ymlgvtjaejhhxflojtro/ ) the 88E1548 has a wider functionality than 88E1545. It combines functionality of 88E1543 and 88E1545 however register names, communication protocols,... are widely identical ...
In https://github.com/torvalds/linux/blob/v4.18/drivers/net/phy/marvell.c the 88E1545 is supported while the 88E1543 is not existent ( possibly compatible , no time to compare both in datasheet ) . i do not know if there is compatibility of the 88E1548 with earlier Marvell chips ( i do not have the time to compare the datasheets ... ) , the 88E1548 has additional functionality for sure. However in the Product Brief of the Alaska 88E1548 is mentioned complete software compatibility ( https://www.marvell.com/transceivers/assets/Marvell-Alaska-88E1548-48P-Product-Brief.pdf ) ...
in general to check if linux loads a driver for the Alaska 88E1548 run dmesg | grep 'Ethernet driver'
if there is a positive output the 88E1548 is compatible with one of the devices listed in this driver, if not the device is not fully supported yet...
Upvotes: 2