You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
2.1 KiB
80 lines
2.1 KiB
9 years ago
|
From 93972d18bbaba6f34e21742400b6e7461edc4837 Mon Sep 17 00:00:00 2001
|
||
|
From: Markus Elfring <elfring@users.sourceforge.net>
|
||
|
Date: Sun, 28 Jun 2015 16:42:04 +0200
|
||
|
Subject: [PATCH] PCI: iproc: Delete unnecessary checks before phy calls
|
||
|
|
||
|
The functions phy_exit() and phy_power_off() test whether their argument is
|
||
|
NULL and then return immediately. Thus the test around the calls is not
|
||
|
needed.
|
||
|
|
||
|
This issue was detected by using the Coccinelle software.
|
||
|
|
||
|
[bhelgaas: also phy_init() and phy_power_on(), as Ray Jui suggested]
|
||
|
[bhelgaas: also remove tests in iproc_pcie_remove()]
|
||
|
Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
|
||
|
Signed-off-by: Bjorn Helgaas <bhelgaas@google.com>
|
||
|
Reviewed-by: Ray Jui <rjui@broadcom.com>
|
||
|
---
|
||
|
drivers/pci/host/pcie-iproc.c | 34 +++++++++++++---------------------
|
||
|
1 file changed, 13 insertions(+), 21 deletions(-)
|
||
|
|
||
|
--- a/drivers/pci/host/pcie-iproc.c
|
||
|
+++ b/drivers/pci/host/pcie-iproc.c
|
||
|
@@ -191,19 +191,16 @@ int iproc_pcie_setup(struct iproc_pcie *
|
||
|
if (!pcie || !pcie->dev || !pcie->base)
|
||
|
return -EINVAL;
|
||
|
|
||
|
- if (pcie->phy) {
|
||
|
- ret = phy_init(pcie->phy);
|
||
|
- if (ret) {
|
||
|
- dev_err(pcie->dev, "unable to initialize PCIe PHY\n");
|
||
|
- return ret;
|
||
|
- }
|
||
|
-
|
||
|
- ret = phy_power_on(pcie->phy);
|
||
|
- if (ret) {
|
||
|
- dev_err(pcie->dev, "unable to power on PCIe PHY\n");
|
||
|
- goto err_exit_phy;
|
||
|
- }
|
||
|
+ ret = phy_init(pcie->phy);
|
||
|
+ if (ret) {
|
||
|
+ dev_err(pcie->dev, "unable to initialize PCIe PHY\n");
|
||
|
+ return ret;
|
||
|
+ }
|
||
|
|
||
|
+ ret = phy_power_on(pcie->phy);
|
||
|
+ if (ret) {
|
||
|
+ dev_err(pcie->dev, "unable to power on PCIe PHY\n");
|
||
|
+ goto err_exit_phy;
|
||
|
}
|
||
|
|
||
|
iproc_pcie_reset(pcie);
|
||
|
@@ -239,12 +236,9 @@ err_rm_root_bus:
|
||
|
pci_remove_root_bus(bus);
|
||
|
|
||
|
err_power_off_phy:
|
||
|
- if (pcie->phy)
|
||
|
- phy_power_off(pcie->phy);
|
||
|
+ phy_power_off(pcie->phy);
|
||
|
err_exit_phy:
|
||
|
- if (pcie->phy)
|
||
|
- phy_exit(pcie->phy);
|
||
|
-
|
||
|
+ phy_exit(pcie->phy);
|
||
|
return ret;
|
||
|
}
|
||
|
EXPORT_SYMBOL(iproc_pcie_setup);
|
||
|
@@ -254,10 +248,8 @@ int iproc_pcie_remove(struct iproc_pcie
|
||
|
pci_stop_root_bus(pcie->root_bus);
|
||
|
pci_remove_root_bus(pcie->root_bus);
|
||
|
|
||
|
- if (pcie->phy) {
|
||
|
- phy_power_off(pcie->phy);
|
||
|
- phy_exit(pcie->phy);
|
||
|
- }
|
||
|
+ phy_power_off(pcie->phy);
|
||
|
+ phy_exit(pcie->phy);
|
||
|
|
||
|
return 0;
|
||
|
}
|