|
@@ -928,6 +928,33 @@ struct phy_info phy_info_BCM5461S = {
|
|
},
|
|
},
|
|
};
|
|
};
|
|
|
|
|
|
|
|
+struct phy_info phy_info_BCM5464S = {
|
|
|
|
+ 0x02060b1, /* 5464 ID */
|
|
|
|
+ "Broadcom BCM5464S",
|
|
|
|
+ 0, /* not clear to me what minor revisions we can shift away */
|
|
|
|
+ (struct phy_cmd[]) { /* config */
|
|
|
|
+ /* Reset and configure the PHY */
|
|
|
|
+ {MIIM_CONTROL, MIIM_CONTROL_RESET, NULL},
|
|
|
|
+ {MIIM_GBIT_CONTROL, MIIM_GBIT_CONTROL_INIT, NULL},
|
|
|
|
+ {MIIM_ANAR, MIIM_ANAR_INIT, NULL},
|
|
|
|
+ {MIIM_CONTROL, MIIM_CONTROL_RESET, NULL},
|
|
|
|
+ {MIIM_CONTROL, MIIM_CONTROL_INIT, &mii_cr_init},
|
|
|
|
+ {miim_end,}
|
|
|
|
+ },
|
|
|
|
+ (struct phy_cmd[]) { /* startup */
|
|
|
|
+ /* Status is read once to clear old link state */
|
|
|
|
+ {MIIM_STATUS, miim_read, NULL},
|
|
|
|
+ /* Auto-negotiate */
|
|
|
|
+ {MIIM_STATUS, miim_read, &mii_parse_sr},
|
|
|
|
+ /* Read the status */
|
|
|
|
+ {MIIM_BCM54xx_AUXSTATUS, miim_read, &mii_parse_BCM54xx_sr},
|
|
|
|
+ {miim_end,}
|
|
|
|
+ },
|
|
|
|
+ (struct phy_cmd[]) { /* shutdown */
|
|
|
|
+ {miim_end,}
|
|
|
|
+ },
|
|
|
|
+};
|
|
|
|
+
|
|
struct phy_info phy_info_M88E1011S = {
|
|
struct phy_info phy_info_M88E1011S = {
|
|
0x01410c6,
|
|
0x01410c6,
|
|
"Marvell 88E1011S",
|
|
"Marvell 88E1011S",
|
|
@@ -1292,6 +1319,7 @@ struct phy_info *phy_info[] = {
|
|
&phy_info_cis8204,
|
|
&phy_info_cis8204,
|
|
&phy_info_cis8201,
|
|
&phy_info_cis8201,
|
|
&phy_info_BCM5461S,
|
|
&phy_info_BCM5461S,
|
|
|
|
+ &phy_info_BCM5464S,
|
|
&phy_info_M88E1011S,
|
|
&phy_info_M88E1011S,
|
|
&phy_info_M88E1111S,
|
|
&phy_info_M88E1111S,
|
|
&phy_info_M88E1145,
|
|
&phy_info_M88E1145,
|