• Shawn Lin's avatar
    PCI: rockchip: Clean up PHY if driver probe or resume fails · 8c595dd1
    Shawn Lin authored
    We observed that the clk_pciephy_ref is still enabled when we fail to probe
    the driver.
    
      root@linaro-alip:~# grep pcie /sys/kernel/debug/clk/clk_summary
      clk_pciephy_ref                    1     1        24000000       0 0
      clk_pcie_pm                        0     0        24000000       0 0
    	  clk_pcie_core_cru          0     0       125000000       0 0
    	  clk_pciephy_ref100m        0     0       100000000       0 0
    		  aclk_pcie          0     0       148500000       0 0
    		  aclk_perf_pcie     0     0       148500000       0 0
    			  pclk_pcie  0     0        37125000       0 0
      clk_pcie_core                      0     0               0       0 0
    
    clk_pciephy_ref is used by the PHY driver and we need to properly disable
    it for this case.  Add error handling in rockchip_pcie_init_port() and
    rockchip_pcie_resume_noirq() to fix this issue.
    Signed-off-by: default avatarShawn Lin <shawn.lin@rock-chips.com>
    Signed-off-by: default avatarBjorn Helgaas <bhelgaas@google.com>
    8c595dd1
pcie-rockchip.c 47.5 KB