Part Number: DP83867IR
Hello,
I'm currently in the process of updating the DP83867 driver to incorporate Time Domain Reflectometry (TDR) functionality. However, I've encountered an issue during testing. Regardless of how many times I run the test using 'ethtool --cable-test eno1', the results retrieved from the registers remain consistent, even after trying different cables.
Here's a snippet of the code I'm working with:
ret = phy_read(phydev, DP83867_TDR_PEAKS_LOC_8);
if(ret < 0)
return ret;
printk("DP83867_TDR_PEAKS_LOC_8: %d", ret);
matrix[0][0] = (ret & DP83867_TDR_PEAKS_LOC_8_D_0_MASK) >> DP83867_TDR_PEAKS_LOC_8_D_0_SHIFT;
ret = phy_read(phydev, DP83867_TDR_PEAKS_LOC_9);
if (ret < 0)
return ret;
printk("DP83867_TDR_PEAKS_LOC_9: %d", ret);
matrix[1][0] = ret & DP83867_TDR_PEAKS_LOC_9_D_1_MASK;
matrix[2][0] = (ret & DP83867_TDR_PEAKS_LOC_9_D_2_MASK) >> DP83867_TDR_PEAKS_LOC_9_D_2_SHIFT;
ret = phy_read(phydev, DP83867_TDR_PEAKS_LOC_10);
if (ret < 0)
return ret;
Any insights or suggestions on resolving this issue would be greatly appreciated. Thank you in advance for your help.
kind regards,
Mart

