PCI: layerscape: Use of_device_get_match_data() to simplify probe
authorBjorn Helgaas <bhelgaas@google.com>
Tue, 31 Jan 2017 22:36:11 +0000 (16:36 -0600)
committerBjorn Helgaas <bhelgaas@google.com>
Tue, 31 Jan 2017 22:36:11 +0000 (16:36 -0600)
The only way to call ls_pcie_probe() is to match an entry in
ls_pcie_of_match[], so match cannot be NULL.

Use of_device_get_match_data() to retrieve the drvdata pointer.  No
functional change intended.

Based-on-suggestion-from: Geert Uytterhoeven <geert@linux-m68k.org>
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
drivers/pci/host/pci-layerscape.c

index ea78913..c1f06f8 100644 (file)
@@ -239,23 +239,18 @@ static int __init ls_add_pcie_port(struct ls_pcie *pcie)
 static int __init ls_pcie_probe(struct platform_device *pdev)
 {
        struct device *dev = &pdev->dev;
-       const struct of_device_id *match;
        struct ls_pcie *pcie;
        struct pcie_port *pp;
        struct resource *dbi_base;
        int ret;
 
-       match = of_match_device(ls_pcie_of_match, dev);
-       if (!match)
-               return -ENODEV;
-
        pcie = devm_kzalloc(dev, sizeof(*pcie), GFP_KERNEL);
        if (!pcie)
                return -ENOMEM;
 
        pp = &pcie->pp;
        pp->dev = dev;
-       pcie->drvdata = match->data;
+       pcie->drvdata = of_device_get_match_data(dev);
        pp->ops = pcie->drvdata->ops;
 
        dbi_base = platform_get_resource_byname(pdev, IORESOURCE_MEM, "regs");