aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjorn Helgaas <bhelgaas@google.com>2013-12-18 16:04:04 -0500
committerBjorn Helgaas <bhelgaas@google.com>2013-12-18 16:04:04 -0500
commited00f97d4129cea9d4c034e6d3171d073a48307a (patch)
treeb90dfe550a2ebadc3b35af0a47655138cfcc6237
parentc354e811a911e680f5c53baa5cdb5d36e660237b (diff)
parentb391bf31584d879d7455e882a5e200388c8be9ac (diff)
Merge branch 'pci/host-imx6' into next
* pci/host-imx6: PCI: imx6: Remove unneeded 'goto err' PCI: imx6: Remove unneeded check of platform_get_resource()
-rw-r--r--drivers/pci/host/pci-imx6.c39
1 files changed, 12 insertions, 27 deletions
diff --git a/drivers/pci/host/pci-imx6.c b/drivers/pci/host/pci-imx6.c
index bd70af8f31ac..9fc1cb66c64e 100644
--- a/drivers/pci/host/pci-imx6.c
+++ b/drivers/pci/host/pci-imx6.c
@@ -426,16 +426,9 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
426 "imprecise external abort"); 426 "imprecise external abort");
427 427
428 dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0); 428 dbi_base = platform_get_resource(pdev, IORESOURCE_MEM, 0);
429 if (!dbi_base) {
430 dev_err(&pdev->dev, "dbi_base memory resource not found\n");
431 return -ENODEV;
432 }
433
434 pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base); 429 pp->dbi_base = devm_ioremap_resource(&pdev->dev, dbi_base);
435 if (IS_ERR(pp->dbi_base)) { 430 if (IS_ERR(pp->dbi_base))
436 ret = PTR_ERR(pp->dbi_base); 431 return PTR_ERR(pp->dbi_base);
437 goto err;
438 }
439 432
440 /* Fetch GPIOs */ 433 /* Fetch GPIOs */
441 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);
@@ -449,7 +442,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
449 "PCIe reset"); 442 "PCIe reset");
450 if (ret) { 443 if (ret) {
451 dev_err(&pdev->dev, "unable to get reset gpio\n"); 444 dev_err(&pdev->dev, "unable to get reset gpio\n");
452 goto err; 445 return ret;
453 } 446 }
454 447
455 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);
@@ -460,7 +453,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
460 "PCIe power enable"); 453 "PCIe power enable");
461 if (ret) { 454 if (ret) {
462 dev_err(&pdev->dev, "unable to get power-on gpio\n"); 455 dev_err(&pdev->dev, "unable to get power-on gpio\n");
463 goto err; 456 return ret;
464 } 457 }
465 } 458 }
466 459
@@ -472,7 +465,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
472 "PCIe wake up"); 465 "PCIe wake up");
473 if (ret) { 466 if (ret) {
474 dev_err(&pdev->dev, "unable to get wake-up gpio\n"); 467 dev_err(&pdev->dev, "unable to get wake-up gpio\n");
475 goto err; 468 return ret;
476 } 469 }
477 } 470 }
478 471
@@ -484,7 +477,7 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
484 "PCIe disable endpoint"); 477 "PCIe disable endpoint");
485 if (ret) { 478 if (ret) {
486 dev_err(&pdev->dev, "unable to get disable-ep gpio\n"); 479 dev_err(&pdev->dev, "unable to get disable-ep gpio\n");
487 goto err; 480 return ret;
488 } 481 }
489 } 482 }
490 483
@@ -493,32 +486,28 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
493 if (IS_ERR(imx6_pcie->lvds_gate)) { 486 if (IS_ERR(imx6_pcie->lvds_gate)) {
494 dev_err(&pdev->dev, 487 dev_err(&pdev->dev,
495 "lvds_gate clock select missing or invalid\n"); 488 "lvds_gate clock select missing or invalid\n");
496 ret = PTR_ERR(imx6_pcie->lvds_gate); 489 return PTR_ERR(imx6_pcie->lvds_gate);
497 goto err;
498 } 490 }
499 491
500 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");
501 if (IS_ERR(imx6_pcie->sata_ref_100m)) { 493 if (IS_ERR(imx6_pcie->sata_ref_100m)) {
502 dev_err(&pdev->dev, 494 dev_err(&pdev->dev,
503 "sata_ref_100m clock source missing or invalid\n"); 495 "sata_ref_100m clock source missing or invalid\n");
504 ret = PTR_ERR(imx6_pcie->sata_ref_100m); 496 return PTR_ERR(imx6_pcie->sata_ref_100m);
505 goto err;
506 } 497 }
507 498
508 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");
509 if (IS_ERR(imx6_pcie->pcie_ref_125m)) { 500 if (IS_ERR(imx6_pcie->pcie_ref_125m)) {
510 dev_err(&pdev->dev, 501 dev_err(&pdev->dev,
511 "pcie_ref_125m clock source missing or invalid\n"); 502 "pcie_ref_125m clock source missing or invalid\n");
512 ret = PTR_ERR(imx6_pcie->pcie_ref_125m); 503 return PTR_ERR(imx6_pcie->pcie_ref_125m);
513 goto err;
514 } 504 }
515 505
516 imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi"); 506 imx6_pcie->pcie_axi = devm_clk_get(&pdev->dev, "pcie_axi");
517 if (IS_ERR(imx6_pcie->pcie_axi)) { 507 if (IS_ERR(imx6_pcie->pcie_axi)) {
518 dev_err(&pdev->dev, 508 dev_err(&pdev->dev,
519 "pcie_axi clock source missing or invalid\n"); 509 "pcie_axi clock source missing or invalid\n");
520 ret = PTR_ERR(imx6_pcie->pcie_axi); 510 return PTR_ERR(imx6_pcie->pcie_axi);
521 goto err;
522 } 511 }
523 512
524 /* Grab GPR config register range */ 513 /* Grab GPR config register range */
@@ -526,19 +515,15 @@ static int __init imx6_pcie_probe(struct platform_device *pdev)
526 syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr"); 515 syscon_regmap_lookup_by_compatible("fsl,imx6q-iomuxc-gpr");
527 if (IS_ERR(imx6_pcie->iomuxc_gpr)) { 516 if (IS_ERR(imx6_pcie->iomuxc_gpr)) {
528 dev_err(&pdev->dev, "unable to find iomuxc registers\n"); 517 dev_err(&pdev->dev, "unable to find iomuxc registers\n");
529 ret = PTR_ERR(imx6_pcie->iomuxc_gpr); 518 return PTR_ERR(imx6_pcie->iomuxc_gpr);
530 goto err;
531 } 519 }
532 520
533 ret = imx6_add_pcie_port(pp, pdev); 521 ret = imx6_add_pcie_port(pp, pdev);
534 if (ret < 0) 522 if (ret < 0)
535 goto err; 523 return ret;
536 524
537 platform_set_drvdata(pdev, imx6_pcie); 525 platform_set_drvdata(pdev, imx6_pcie);
538 return 0; 526 return 0;
539
540err:
541 return ret;
542} 527}
543 528
544static const struct of_device_id imx6_pcie_of_match[] = { 529static const struct of_device_id imx6_pcie_of_match[] = {