|
|
@@ -370,6 +370,26 @@ static int b53_phy_read_status(struct phy_device *phydev)
|
|
|
return 0;
|
|
|
}
|
|
|
|
|
|
+static const struct of_device_id b53_of_match_1[] = {
|
|
|
+ { .compatible = "brcm,bcm5325" },
|
|
|
+ { .compatible = "brcm,bcm5395" },
|
|
|
+ { .compatible = "brcm,bcm5397" },
|
|
|
+ { .compatible = "brcm,bcm5398" },
|
|
|
+ { /* sentinel */ },
|
|
|
+};
|
|
|
+
|
|
|
+static const struct of_device_id b53_of_match_2[] = {
|
|
|
+ { .compatible = "brcm,bcm53115" },
|
|
|
+ { .compatible = "brcm,bcm53125" },
|
|
|
+ { .compatible = "brcm,bcm53128" },
|
|
|
+ { /* sentinel */ },
|
|
|
+};
|
|
|
+
|
|
|
+static const struct of_device_id b53_of_match_3[] = {
|
|
|
+ { .compatible = "brcm,bcm5365" },
|
|
|
+ { /* sentinel */ },
|
|
|
+};
|
|
|
+
|
|
|
/* BCM5325, BCM539x */
|
|
|
static struct phy_driver b53_phy_driver_id1 = {
|
|
|
.phy_id = 0x0143bc00,
|
|
|
@@ -381,6 +401,10 @@ static struct phy_driver b53_phy_driver_id1 = {
|
|
|
.config_aneg = b53_phy_config_aneg,
|
|
|
.config_init = b53_phy_config_init,
|
|
|
.read_status = b53_phy_read_status,
|
|
|
+ .mdiodrv.driver = {
|
|
|
+ .name = "bcm539x",
|
|
|
+ .of_match_table = b53_of_match_1,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
/* BCM53125, BCM53128 */
|
|
|
@@ -394,6 +418,10 @@ static struct phy_driver b53_phy_driver_id2 = {
|
|
|
.config_aneg = b53_phy_config_aneg,
|
|
|
.config_init = b53_phy_config_init,
|
|
|
.read_status = b53_phy_read_status,
|
|
|
+ .mdiodrv.driver = {
|
|
|
+ .name = "bcm531xx",
|
|
|
+ .of_match_table = b53_of_match_2,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
/* BCM5365 */
|
|
|
@@ -407,6 +435,10 @@ static struct phy_driver b53_phy_driver_id3 = {
|
|
|
.config_aneg = b53_phy_config_aneg,
|
|
|
.config_init = b53_phy_config_init,
|
|
|
.read_status = b53_phy_read_status,
|
|
|
+ .mdiodrv.driver = {
|
|
|
+ .name = "bcm5365",
|
|
|
+ .of_match_table = b53_of_match_3,
|
|
|
+ },
|
|
|
};
|
|
|
|
|
|
int __init b53_phy_driver_register(void)
|