]> git.karo-electronics.de Git - linux-beck.git/commitdiff
phy: bcm-ns2-pcie: Get rid of struct ns2_pci_phy
authorAxel Lin <axel.lin@ingics.com>
Tue, 30 Aug 2016 13:53:59 +0000 (21:53 +0800)
committerKishon Vijay Abraham I <kishon@ti.com>
Sat, 10 Sep 2016 11:18:36 +0000 (16:48 +0530)
By setting phy_set_drvdata(phy, mdiodev), struct ns2_pci_phy can be
removed.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
Reviewed-and-tested-by: Jon Mason <jon.mason@broadcom.com>
Reviewed-by: Pramod Kumar <pramodku@broadcom.com>
Signed-off-by: Kishon Vijay Abraham I <kishon@ti.com>
drivers/phy/phy-bcm-ns2-pcie.c

index 9513f7ab1eaabc933b0276205b748d7e4f102dd0..ee6177296ac2ac2ba8ea77b50f9e438a4a48d2b2 100644 (file)
 #include <linux/phy.h>
 #include <linux/phy/phy.h>
 
-struct ns2_pci_phy {
-       struct mdio_device *mdiodev;
-       struct phy *phy;
-};
-
 #define BLK_ADDR_REG_OFFSET    0x1f
 #define PLL_AFE1_100MHZ_BLK    0x2100
 #define PLL_CLK_AMP_OFFSET     0x03
@@ -30,17 +25,17 @@ struct ns2_pci_phy {
 
 static int ns2_pci_phy_init(struct phy *p)
 {
-       struct ns2_pci_phy *phy = phy_get_drvdata(p);
+       struct mdio_device *mdiodev = phy_get_drvdata(p);
        int rc;
 
        /* select the AFE 100MHz block page */
-       rc = mdiobus_write(phy->mdiodev->bus, phy->mdiodev->addr,
+       rc = mdiobus_write(mdiodev->bus, mdiodev->addr,
                           BLK_ADDR_REG_OFFSET, PLL_AFE1_100MHZ_BLK);
        if (rc)
                goto err;
 
        /* set the 100 MHz reference clock amplitude to 2.05 v */
-       rc = mdiobus_write(phy->mdiodev->bus, phy->mdiodev->addr,
+       rc = mdiobus_write(mdiodev->bus, mdiodev->addr,
                           PLL_CLK_AMP_OFFSET, PLL_CLK_AMP_2P05V);
        if (rc)
                goto err;
@@ -48,7 +43,7 @@ static int ns2_pci_phy_init(struct phy *p)
        return 0;
 
 err:
-       dev_err(&phy->mdiodev->dev, "Error %d writing to phy\n", rc);
+       dev_err(&mdiodev->dev, "Error %d writing to phy\n", rc);
        return rc;
 }
 
@@ -60,7 +55,6 @@ static int ns2_pci_phy_probe(struct mdio_device *mdiodev)
 {
        struct device *dev = &mdiodev->dev;
        struct phy_provider *provider;
-       struct ns2_pci_phy *p;
        struct phy *phy;
 
        phy = devm_phy_create(dev, dev->of_node, &ns2_pci_phy_ops);
@@ -69,16 +63,7 @@ static int ns2_pci_phy_probe(struct mdio_device *mdiodev)
                return PTR_ERR(phy);
        }
 
-       p = devm_kmalloc(dev, sizeof(struct ns2_pci_phy),
-                        GFP_KERNEL);
-       if (!p)
-               return -ENOMEM;
-
-       p->mdiodev = mdiodev;
-       dev_set_drvdata(dev, p);
-
-       p->phy = phy;
-       phy_set_drvdata(phy, p);
+       phy_set_drvdata(phy, mdiodev);
 
        provider = devm_of_phy_provider_register(&phy->dev,
                                                 of_phy_simple_xlate);