@@ -1088,6 +1088,38 @@ static int m88e1011_set_tunable(struct phy_device *phydev,
1088
1088
}
1089
1089
}
1090
1090
1091
+ static int m88e1112_config_init (struct phy_device * phydev )
1092
+ {
1093
+ int err ;
1094
+
1095
+ err = m88e1011_set_downshift (phydev , 3 );
1096
+ if (err < 0 )
1097
+ return err ;
1098
+
1099
+ return m88e1111_config_init (phydev );
1100
+ }
1101
+
1102
+ static int m88e1111gbe_config_init (struct phy_device * phydev )
1103
+ {
1104
+ int err ;
1105
+
1106
+ err = m88e1111_set_downshift (phydev , 3 );
1107
+ if (err < 0 )
1108
+ return err ;
1109
+
1110
+ return m88e1111_config_init (phydev );
1111
+ }
1112
+
1113
+ static int marvell_1011gbe_config_init (struct phy_device * phydev )
1114
+ {
1115
+ int err ;
1116
+
1117
+ err = m88e1011_set_downshift (phydev , 3 );
1118
+ if (err < 0 )
1119
+ return err ;
1120
+
1121
+ return marvell_config_init (phydev );
1122
+ }
1091
1123
static int m88e1116r_config_init (struct phy_device * phydev )
1092
1124
{
1093
1125
int err ;
@@ -1168,6 +1200,9 @@ static int m88e1510_config_init(struct phy_device *phydev)
1168
1200
if (err < 0 )
1169
1201
return err ;
1170
1202
}
1203
+ err = m88e1011_set_downshift (phydev , 3 );
1204
+ if (err < 0 )
1205
+ return err ;
1171
1206
1172
1207
return m88e1318_config_init (phydev );
1173
1208
}
@@ -1320,6 +1355,9 @@ static int m88e1145_config_init(struct phy_device *phydev)
1320
1355
if (err < 0 )
1321
1356
return err ;
1322
1357
}
1358
+ err = m88e1111_set_downshift (phydev , 3 );
1359
+ if (err < 0 )
1360
+ return err ;
1323
1361
1324
1362
err = marvell_of_reg_init (phydev );
1325
1363
if (err < 0 )
@@ -2698,7 +2736,7 @@ static struct phy_driver marvell_drivers[] = {
2698
2736
.name = "Marvell 88E1112" ,
2699
2737
/* PHY_GBIT_FEATURES */
2700
2738
.probe = marvell_probe ,
2701
- .config_init = m88e1111_config_init ,
2739
+ .config_init = m88e1112_config_init ,
2702
2740
.config_aneg = marvell_config_aneg ,
2703
2741
.config_intr = marvell_config_intr ,
2704
2742
.handle_interrupt = marvell_handle_interrupt ,
@@ -2718,7 +2756,7 @@ static struct phy_driver marvell_drivers[] = {
2718
2756
.name = "Marvell 88E1111" ,
2719
2757
/* PHY_GBIT_FEATURES */
2720
2758
.probe = marvell_probe ,
2721
- .config_init = m88e1111_config_init ,
2759
+ .config_init = m88e1111gbe_config_init ,
2722
2760
.config_aneg = m88e1111_config_aneg ,
2723
2761
.read_status = marvell_read_status ,
2724
2762
.config_intr = marvell_config_intr ,
@@ -2739,7 +2777,7 @@ static struct phy_driver marvell_drivers[] = {
2739
2777
.name = "Marvell 88E1111 (Finisar)" ,
2740
2778
/* PHY_GBIT_FEATURES */
2741
2779
.probe = marvell_probe ,
2742
- .config_init = m88e1111_config_init ,
2780
+ .config_init = m88e1111gbe_config_init ,
2743
2781
.config_aneg = m88e1111_config_aneg ,
2744
2782
.read_status = marvell_read_status ,
2745
2783
.config_intr = marvell_config_intr ,
@@ -2779,7 +2817,7 @@ static struct phy_driver marvell_drivers[] = {
2779
2817
.driver_data = DEF_MARVELL_HWMON_OPS (m88e1121_hwmon_ops ),
2780
2818
/* PHY_GBIT_FEATURES */
2781
2819
.probe = marvell_probe ,
2782
- .config_init = marvell_config_init ,
2820
+ .config_init = marvell_1011gbe_config_init ,
2783
2821
.config_aneg = m88e1121_config_aneg ,
2784
2822
.read_status = marvell_read_status ,
2785
2823
.config_intr = marvell_config_intr ,
@@ -2859,7 +2897,7 @@ static struct phy_driver marvell_drivers[] = {
2859
2897
.name = "Marvell 88E1240" ,
2860
2898
/* PHY_GBIT_FEATURES */
2861
2899
.probe = marvell_probe ,
2862
- .config_init = m88e1111_config_init ,
2900
+ .config_init = m88e1112_config_init ,
2863
2901
.config_aneg = marvell_config_aneg ,
2864
2902
.config_intr = marvell_config_intr ,
2865
2903
.handle_interrupt = marvell_handle_interrupt ,
@@ -2929,7 +2967,7 @@ static struct phy_driver marvell_drivers[] = {
2929
2967
/* PHY_GBIT_FEATURES */
2930
2968
.flags = PHY_POLL_CABLE_TEST ,
2931
2969
.probe = marvell_probe ,
2932
- .config_init = marvell_config_init ,
2970
+ .config_init = marvell_1011gbe_config_init ,
2933
2971
.config_aneg = m88e1510_config_aneg ,
2934
2972
.read_status = marvell_read_status ,
2935
2973
.config_intr = marvell_config_intr ,
@@ -2955,7 +2993,7 @@ static struct phy_driver marvell_drivers[] = {
2955
2993
.probe = marvell_probe ,
2956
2994
/* PHY_GBIT_FEATURES */
2957
2995
.flags = PHY_POLL_CABLE_TEST ,
2958
- .config_init = marvell_config_init ,
2996
+ .config_init = marvell_1011gbe_config_init ,
2959
2997
.config_aneg = m88e1510_config_aneg ,
2960
2998
.read_status = marvell_read_status ,
2961
2999
.config_intr = marvell_config_intr ,
@@ -3000,7 +3038,7 @@ static struct phy_driver marvell_drivers[] = {
3000
3038
/* PHY_GBIT_FEATURES */
3001
3039
.flags = PHY_POLL_CABLE_TEST ,
3002
3040
.probe = marvell_probe ,
3003
- .config_init = marvell_config_init ,
3041
+ .config_init = marvell_1011gbe_config_init ,
3004
3042
.config_aneg = m88e6390_config_aneg ,
3005
3043
.read_status = marvell_read_status ,
3006
3044
.config_intr = marvell_config_intr ,
@@ -3026,7 +3064,7 @@ static struct phy_driver marvell_drivers[] = {
3026
3064
/* PHY_GBIT_FEATURES */
3027
3065
.flags = PHY_POLL_CABLE_TEST ,
3028
3066
.probe = marvell_probe ,
3029
- .config_init = marvell_config_init ,
3067
+ .config_init = marvell_1011gbe_config_init ,
3030
3068
.config_aneg = m88e6390_config_aneg ,
3031
3069
.read_status = marvell_read_status ,
3032
3070
.config_intr = marvell_config_intr ,
@@ -3052,7 +3090,7 @@ static struct phy_driver marvell_drivers[] = {
3052
3090
/* PHY_GBIT_FEATURES */
3053
3091
.flags = PHY_POLL_CABLE_TEST ,
3054
3092
.probe = marvell_probe ,
3055
- .config_init = marvell_config_init ,
3093
+ .config_init = marvell_1011gbe_config_init ,
3056
3094
.config_aneg = m88e1510_config_aneg ,
3057
3095
.read_status = marvell_read_status ,
3058
3096
.config_intr = marvell_config_intr ,
@@ -3077,7 +3115,7 @@ static struct phy_driver marvell_drivers[] = {
3077
3115
.driver_data = DEF_MARVELL_HWMON_OPS (m88e1510_hwmon_ops ),
3078
3116
.probe = marvell_probe ,
3079
3117
/* PHY_GBIT_FEATURES */
3080
- .config_init = marvell_config_init ,
3118
+ .config_init = marvell_1011gbe_config_init ,
3081
3119
.config_aneg = m88e1510_config_aneg ,
3082
3120
.read_status = marvell_read_status ,
3083
3121
.config_intr = marvell_config_intr ,
@@ -3099,7 +3137,7 @@ static struct phy_driver marvell_drivers[] = {
3099
3137
.driver_data = DEF_MARVELL_HWMON_OPS (m88e1510_hwmon_ops ),
3100
3138
.probe = marvell_probe ,
3101
3139
.features = PHY_GBIT_FIBRE_FEATURES ,
3102
- .config_init = marvell_config_init ,
3140
+ .config_init = marvell_1011gbe_config_init ,
3103
3141
.config_aneg = m88e1510_config_aneg ,
3104
3142
.read_status = marvell_read_status ,
3105
3143
.config_intr = marvell_config_intr ,
0 commit comments