staging: mt7621-pci: factor out 'mt7621_pcie_init_ports' function
authorSergio Paracuellos <sergio.paracuellos@gmail.com>
Sun, 4 Nov 2018 10:49:46 +0000 (11:49 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sun, 11 Nov 2018 19:36:15 +0000 (11:36 -0800)
Instead of just inline this code in the probe driver function factor
out a new 'mt7621_pcie_init_ports' function to achieve this.

Signed-off-by: Sergio Paracuellos <sergio.paracuellos@gmail.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/mt7621-pci/pci-mt7621.c

index 50c439b..cb677cd 100644 (file)
@@ -612,6 +612,23 @@ static int mt7621_pcie_init_port(struct mt7621_pcie_port *port)
        return 0;
 }
 
+static void mt7621_pcie_init_ports(struct mt7621_pcie *pcie)
+{
+       struct device *dev = pcie->dev;
+       struct mt7621_pcie_port *port, *tmp;
+       int err;
+
+       list_for_each_entry_safe(port, tmp, &pcie->ports, list) {
+               u32 slot = port->slot;
+
+               err = mt7621_pcie_init_port(port);
+               if (err) {
+                       dev_err(dev, "Initiating port %d failed\n", slot);
+                       list_del(&port->list);
+               }
+       }
+}
+
 static void mt7621_pcie_enable_ports(struct mt7621_pcie *pcie)
 {
        struct device *dev = pcie->dev;
@@ -759,7 +776,6 @@ static int mt7621_pci_probe(struct platform_device *pdev)
        struct device *dev = &pdev->dev;
        struct mt7621_pcie *pcie;
        struct pci_host_bridge *bridge;
-       struct mt7621_pcie_port *port, *tmp;
        int err;
        LIST_HEAD(res);
 
@@ -794,15 +810,7 @@ static int mt7621_pci_probe(struct platform_device *pdev)
 
        mdelay(100);
 
-       list_for_each_entry_safe(port, tmp, &pcie->ports, list) {
-               u32 slot = port->slot;
-
-               err = mt7621_pcie_init_port(port);
-               if (err) {
-                       dev_err(dev, "enabling port %d failed\n", slot);
-                       list_del(&port->list);
-               }
-       }
+       mt7621_pcie_init_ports(pcie);
 
        rt_sysc_m32(0, RALINK_PCIE_RST, RALINK_RSTCTRL);
        rt_sysc_m32(0x30, 2 << 4, SYSC_REG_SYSTEM_CONFIG1);