aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--drivers/pci/host/pci-imx6.c34
1 files changed, 12 insertions, 22 deletions
diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
index 5002e2381588..9fc1cb66c64e 100644
--- a/drivers/pci/host/pci-imx6.c
+++ b/drivers/pci/host/pci-imx6.c
@@ -427,10 +427,8 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
427 427
428 dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0); 428 dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0);
429 pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base); 429 pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base);
430 if (IS_ERR(pp->dbi_base)) { 430 if (IS_ERR(pp->dbi_base))
431 ret = PTR_ERR(pp->dbi_base); 431 return PTR_ERR(pp->dbi_base);
432 goto err;
433 }
434 432
435 /* Fetch GPIOs */ 433 /* Fetch GPIOs */
436 imx6_pcie->reset_gpio = of_get_named_gpio(np, "reset-gpio", 0); 434 imx6_pcie->reset_gpio = of_get_named_gpio(np, "reset-gpio", 0);
@@ -444,7 +442,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
444 "PCIe reset"); 442 "PCIe reset");
445 if (ret) { 443 if (ret) {
446 dev_err(&pdev->dev, "unable to get reset gpio\n"); 444 dev_err(&pdev->dev, "unable to get reset gpio\n");
447 goto err; 445 return ret;
448 } 446 }
449 447
450 imx6_pcie->power_on_gpio = of_get_named_gpio(np, "power-on-gpio", 0); 448 imx6_pcie->power_on_gpio = of_get_named_gpio(np, "power-on-gpio", 0);
@@ -455,7 +453,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
455 "PCIe power enable"); 453 "PCIe power enable");
456 if (ret) { 454 if (ret) {
457 dev_err(&pdev->dev, "unable to get power-on gpio\n"); 455 dev_err(&pdev->dev, "unable to get power-on gpio\n");
458 goto err; 456 return ret;
459 } 457 }
460 } 458 }
461 459
@@ -467,7 +465,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
467 "PCIe wake up"); 465 "PCIe wake up");
468 if (ret) { 466 if (ret) {
469 dev_err(&pdev->dev, "unable to get wake-up gpio\n"); 467 dev_err(&pdev->dev, "unable to get wake-up gpio\n");
470 goto err; 468 return ret;
471 } 469 }
472 } 470 }
473 471
@@ -479,7 +477,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
479 "PCIe disable endpoint"); 477 "PCIe disable endpoint");
480 if (ret) { 478 if (ret) {
481 dev_err(&pdev->dev, "unable to get disable-ep gpio\n"); 479 dev_err(&pdev->dev, "unable to get disable-ep gpio\n");
482 goto err; 480 return ret;
483 } 481 }
484 } 482 }
485 483
@@ -488,32 +486,28 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
488 if (IS_ERR(imx6_pcie->lvds_gate)) { 486 if (IS_ERR(imx6_pcie->lvds_gate)) {
489 dev_err(&pdev->dev, 487 dev_err(&pdev->dev,
490 "lvds_gate clock select missing or invalid\n"); 488 "lvds_gate clock select missing or invalid\n");
491 ret = PTR_ERR(imx6_pcie->lvds_gate); 489 return PTR_ERR(imx6_pcie->lvds_gate);
492 goto err;
493 } 490 }
494 491
495 imx6_pcie->sata_ref_100m = devm_clk_get(&pdev->dev, "sata_ref_100m"); 492 imx6_pcie->sata_ref_100m = devm_clk_get(&pdev->dev, "sata_ref_100m");
496 if (IS_ERR(imx6_pcie->sata_ref_100m)) { 493 if (IS_ERR(imx6_pcie->sata_ref_100m)) {
497 dev_err(&pdev->dev, 494 dev_err(&pdev->dev,
498 "sata_ref_100m clock source missing or invalid\n"); 495 "sata_ref_100m clock source missing or invalid\n");
499 ret = PTR_ERR(imx6_pcie->sata_ref_100m); 496 return PTR_ERR(imx6_pcie->sata_ref_100m);
500 goto err;
501 } 497 }
502 498
503 imx6_pcie->pcie_ref_125m = devm_clk_get(&pdev->dev, "pcie_ref_125m"); 499 imx6_pcie->pcie_ref_125m = devm_clk_get(&pdev->dev, "pcie_ref_125m");
504 if (IS_ERR(imx6_pcie->pcie_ref_125m)) { 500 if (IS_ERR(imx6_pcie->pcie_ref_125m)) {
505 dev_err(&pdev->dev, 501 dev_err(&pdev->dev,
506 "pcie_ref_125m clock source missing or invalid\n"); 502 "pcie_ref_125m clock source missing or invalid\n");
507 ret = PTR_ERR(imx6_pcie->pcie_ref_125m); 503 return PTR_ERR(imx6_pcie->pcie_ref_125m);
508 goto err;
509 } 504 }
510 505
511 imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi"); 506 imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi");
512 if (IS_ERR(imx6_pcie->pcie_axi)) { 507 if (IS_ERR(imx6_pcie->pcie_axi)) {
513 dev_err(&pdev->dev, 508 dev_err(&pdev->dev,
514 "pcie_axi clock source missing or invalid\n"); 509 "pcie_axi clock source missing or invalid\n");
515 ret = PTR_ERR(imx6_pcie->pcie_axi); 510 return PTR_ERR(imx6_pcie->pcie_axi);
516 goto err;
517 } 511 }
518 512
519 /* Grab GPR config register range */ 513 /* Grab GPR config register range */
@@ -521,19 +515,15 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
521 syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr"); 515 syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr");
522 if (IS_ERR(imx6_pcie->iomuxc_gpr)) { 516 if (IS_ERR(imx6_pcie->iomuxc_gpr)) {
523 dev_err(&pdev->dev, "unable to find iomuxc registers\n"); 517 dev_err(&pdev->dev, "unable to find iomuxc registers\n");
524 ret = PTR_ERR(imx6_pcie->iomuxc_gpr); 518 return PTR_ERR(imx6_pcie->iomuxc_gpr);
525 goto err;
526 } 519 }
527 520
528 ret = imx6_add_pcie_port(pp, pdev); 521 ret = imx6_add_pcie_port(pp, pdev);
529 if (ret < 0) 522 if (ret < 0)
530 goto err; 523 return ret;
531 524
532 platform_set_drvdata(pdev, imx6_pcie); 525 platform_set_drvdata(pdev, imx6_pcie);
533 return 0; 526 return 0;
534
535err:
536 return ret;
537} 527}
538 528
539static const struct of_device_id imx6_pcie_of_match[] = { 529static const struct of_device_id imx6_pcie_of_match[] = {