swconfig: fix Broadcom b53 support
[openwrt/staging/dedeckeh.git] / target / linux / generic / files / drivers / net / phy / b53 / b53_mdio.c
index 6de86236123c62b6093bba4c0eb06e16d6f3aa1e..5675232befdef2c397aba3da1bc14b112212566c 100644 (file)
@@ -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)