79
79
/* RTL822X_VND2_XXXXX registers are only accessible when phydev->is_c45
80
80
* is set, they cannot be accessed by C45-over-C22.
81
81
*/
82
- #define RTL822X_VND2_GBCR 0xa412
83
-
84
- #define RTL822X_VND2_GANLPAR 0xa414
82
+ #define RTL822X_VND2_C22_REG (reg ) (0xa400 + 2 * (reg))
85
83
86
84
#define RTL8366RB_POWER_SAVE 0x15
87
85
#define RTL8366RB_POWER_SAVE_ON BIT(12)
@@ -1015,7 +1013,8 @@ static int rtl822x_c45_config_aneg(struct phy_device *phydev)
1015
1013
val = linkmode_adv_to_mii_ctrl1000_t (phydev -> advertising );
1016
1014
1017
1015
/* Vendor register as C45 has no standardized support for 1000BaseT */
1018
- ret = phy_modify_mmd_changed (phydev , MDIO_MMD_VEND2 , RTL822X_VND2_GBCR ,
1016
+ ret = phy_modify_mmd_changed (phydev , MDIO_MMD_VEND2 ,
1017
+ RTL822X_VND2_C22_REG (MII_CTRL1000 ),
1019
1018
ADVERTISE_1000FULL , val );
1020
1019
if (ret < 0 )
1021
1020
return ret ;
@@ -1032,7 +1031,7 @@ static int rtl822x_c45_read_status(struct phy_device *phydev)
1032
1031
/* Vendor register as C45 has no standardized support for 1000BaseT */
1033
1032
if (phydev -> autoneg == AUTONEG_ENABLE && genphy_c45_aneg_done (phydev )) {
1034
1033
val = phy_read_mmd (phydev , MDIO_MMD_VEND2 ,
1035
- RTL822X_VND2_GANLPAR );
1034
+ RTL822X_VND2_C22_REG ( MII_STAT1000 ) );
1036
1035
if (val < 0 )
1037
1036
return val ;
1038
1037
} else {
0 commit comments