dm: pci: remove pci_bus_to_hose(0) calling
authorMinghuan Lian <Minghuan.Lian@nxp.com>
Tue, 13 Dec 2016 06:54:10 +0000 (14:54 +0800)
committerYork Sun <york.sun@nxp.com>
Wed, 18 Jan 2017 17:25:22 +0000 (09:25 -0800)
There may be multiple PCIe controllers in a SoC.
It is not correct that always calling pci_bus_to_hose(0) to get
the first PCIe controller for the PCIe device connected other
controllers. We just remove this calling because hose always point
the correct PCIe controller.

Signed-off-by: Minghuan Lian <Minghuan.Lian@nxp.com>
Signed-off-by: Hou Zhiqiang <Zhiqiang.Hou@nxp.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
Reviewed-by: York Sun <york.sun@nxp.com>
drivers/pci/pci_common.c

index 1755914b4eb9f86790ea91d27efabab0992b3ad3..6526de80db89160bb51230c973e44b0113808a14 100644 (file)
@@ -181,11 +181,6 @@ phys_addr_t pci_hose_bus_to_phys(struct pci_controller *hose,
                return phys_addr;
        }
 
-#ifdef CONFIG_DM_PCI
-       /* The root controller has the region information */
-       hose = pci_bus_to_hose(0);
-#endif
-
        /*
         * if PCI_REGION_MEM is set we do a two pass search with preference
         * on matches that don't have PCI_REGION_SYS_MEMORY set
@@ -236,6 +231,13 @@ int __pci_hose_phys_to_bus(struct pci_controller *hose,
        return 1;
 }
 
+/*
+ * pci_hose_phys_to_bus(): Convert physical address to bus address
+ * @hose:      PCI hose of the root PCI controller
+ * @phys_addr: physical address to convert
+ * @flags:     flags of pci regions
+ * @return bus address if OK, 0 on error
+ */
 pci_addr_t pci_hose_phys_to_bus(struct pci_controller *hose,
                                phys_addr_t phys_addr,
                                unsigned long flags)
@@ -248,11 +250,6 @@ pci_addr_t pci_hose_phys_to_bus(struct pci_controller *hose,
                return bus_addr;
        }
 
-#ifdef CONFIG_DM_PCI
-       /* The root controller has the region information */
-       hose = pci_bus_to_hose(0);
-#endif
-
        /*
         * if PCI_REGION_MEM is set we do a two pass search with preference
         * on matches that don't have PCI_REGION_SYS_MEMORY set