summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRichard Zhu <r65037@freescale.com>2014-08-07 10:00:25 +0800
committerRichard Zhu <r65037@freescale.com>2014-08-07 11:28:36 +0800
commit94a7e472c47b800c001c0a5d17bb2f14a13e1980 (patch)
treed28e1c75c29fde75b8899f7a8f6266e2d9a55ffe
parentef3bce5feb2ed36c9f4483287454d35ae330dbe3 (diff)
ENGR00326135 pcie: pcie ep test fail on imx6q sdrel_imx_3.10.31_1.1.0_beta
Rootcause: doesn't get the correct mem ranges from DT on imx6q after added imx6sx sdb pcie ep/rc validation system support. solution: Remove the imx6sx specification when get the mem ranges from DT. Signed-off-by: Richard Zhu <r65037@freescale.com> (cherry picked from commit b42f60a06c77448a8a00b961fb8035c58a5ed8a1)
-rw-r--r--drivers/pci/host/pci-imx6.c37
1 files changed, 17 insertions, 20 deletions
diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
index 1ecc542037f9..9a0ae162e9b7 100644
--- a/drivers/pci/host/pci-imx6.c
+++ b/drivers/pci/host/pci-imx6.c
@@ -1055,30 +1055,27 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
}
if (IS_ENABLED(CONFIG_EP_MODE_IN_EP_RC_SYS)) {
- if (is_imx6sx_pcie(imx6_pcie)) {
- struct device_node *np = pp->dev->of_node;
- struct of_pci_range range;
- struct of_pci_range_parser parser;
- unsigned long restype;
-
- if (of_pci_range_parser_init(&parser, np)) {
- dev_err(pp->dev, "missing ranges property\n");
- return -EINVAL;
- }
+ struct device_node *np = pp->dev->of_node;
+ struct of_pci_range range;
+ struct of_pci_range_parser parser;
+ unsigned long restype;
- /* Get the memory ranges from DT */
- for_each_of_pci_range(&parser, &range) {
- restype = range.flags & IORESOURCE_TYPE_BITS;
- if (restype == IORESOURCE_MEM) {
- of_pci_range_to_resource(&range,
- np, &pp->mem);
- pp->mem.name = "MEM";
- }
- }
+ if (of_pci_range_parser_init(&parser, np)) {
+ dev_err(pp->dev, "missing ranges property\n");
+ return -EINVAL;
+ }
- pp->mem_base = pp->mem.start;
+ /* Get the memory ranges from DT */
+ for_each_of_pci_range(&parser, &range) {
+ restype = range.flags & IORESOURCE_TYPE_BITS;
+ if (restype == IORESOURCE_MEM) {
+ of_pci_range_to_resource(&range,
+ np, &pp->mem);
+ pp->mem.name = "MEM";
+ }
}
+ pp->mem_base = pp->mem.start;
if (IS_ENABLED(CONFIG_EP_SELF_IO_TEST)) {
/* Prepare the test regions and data */
test_reg1 = devm_kzalloc(&pdev->dev,