diff options
author | Roger Quadros <rogerq@ti.com> | 2014-02-27 09:18:24 -0500 |
---|---|---|
committer | Lee Jones <lee.jones@linaro.org> | 2014-03-13 18:24:49 -0400 |
commit | fedb2e7c2d7b80dfda6d906f665ff01f368e7b51 (patch) | |
tree | e3c8a8521e5d2e32759178fe6087bf4ea9979b0d | |
parent | 3aca446acf32243029f5c83810b50aad3c32b6bf (diff) |
mfd: omap-usb-host: Always fail on clk_get() error
Be more strict and always fail on clk_get() error.
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Roger Quadros <rogerq@ti.com>
Signed-off-by: Lee Jones <lee.jones@linaro.org>
-rw-r--r-- | drivers/mfd/omap-usb-host.c | 62 |
1 files changed, 40 insertions, 22 deletions
diff --git a/drivers/mfd/omap-usb-host.c b/drivers/mfd/omap-usb-host.c index c63bfdf5a419..c31baa743986 100644 --- a/drivers/mfd/omap-usb-host.c +++ b/drivers/mfd/omap-usb-host.c | |||
@@ -695,7 +695,8 @@ static int usbhs_omap_probe(struct platform_device *pdev) | |||
695 | "ehci_logic_fck"); | 695 | "ehci_logic_fck"); |
696 | if (IS_ERR(omap->ehci_logic_fck)) { | 696 | if (IS_ERR(omap->ehci_logic_fck)) { |
697 | ret = PTR_ERR(omap->ehci_logic_fck); | 697 | ret = PTR_ERR(omap->ehci_logic_fck); |
698 | dev_dbg(dev, "ehci_logic_fck failed:%d\n", ret); | 698 | dev_err(dev, "ehci_logic_fck failed:%d\n", ret); |
699 | goto err_mem; | ||
699 | } | 700 | } |
700 | } | 701 | } |
701 | goto initialize; | 702 | goto initialize; |
@@ -749,51 +750,68 @@ static int usbhs_omap_probe(struct platform_device *pdev) | |||
749 | * them | 750 | * them |
750 | */ | 751 | */ |
751 | omap->utmi_clk[i] = devm_clk_get(dev, clkname); | 752 | omap->utmi_clk[i] = devm_clk_get(dev, clkname); |
752 | if (IS_ERR(omap->utmi_clk[i])) | 753 | if (IS_ERR(omap->utmi_clk[i])) { |
753 | dev_dbg(dev, "Failed to get clock : %s : %ld\n", | 754 | ret = PTR_ERR(omap->utmi_clk[i]); |
754 | clkname, PTR_ERR(omap->utmi_clk[i])); | 755 | dev_err(dev, "Failed to get clock : %s : %d\n", |
756 | clkname, ret); | ||
757 | goto err_mem; | ||
758 | } | ||
755 | 759 | ||
756 | snprintf(clkname, sizeof(clkname), | 760 | snprintf(clkname, sizeof(clkname), |
757 | "usb_host_hs_hsic480m_p%d_clk", i + 1); | 761 | "usb_host_hs_hsic480m_p%d_clk", i + 1); |
758 | omap->hsic480m_clk[i] = devm_clk_get(dev, clkname); | 762 | omap->hsic480m_clk[i] = devm_clk_get(dev, clkname); |
759 | if (IS_ERR(omap->hsic480m_clk[i])) | 763 | if (IS_ERR(omap->hsic480m_clk[i])) { |
760 | dev_dbg(dev, "Failed to get clock : %s : %ld\n", | 764 | ret = PTR_ERR(omap->hsic480m_clk[i]); |
761 | clkname, PTR_ERR(omap->hsic480m_clk[i])); | 765 | dev_err(dev, "Failed to get clock : %s : %d\n", |
766 | clkname, ret); | ||
767 | goto err_mem; | ||
768 | } | ||
762 | 769 | ||
763 | snprintf(clkname, sizeof(clkname), | 770 | snprintf(clkname, sizeof(clkname), |
764 | "usb_host_hs_hsic60m_p%d_clk", i + 1); | 771 | "usb_host_hs_hsic60m_p%d_clk", i + 1); |
765 | omap->hsic60m_clk[i] = devm_clk_get(dev, clkname); | 772 | omap->hsic60m_clk[i] = devm_clk_get(dev, clkname); |
766 | if (IS_ERR(omap->hsic60m_clk[i])) | 773 | if (IS_ERR(omap->hsic60m_clk[i])) { |
767 | dev_dbg(dev, "Failed to get clock : %s : %ld\n", | 774 | ret = PTR_ERR(omap->hsic60m_clk[i]); |
768 | clkname, PTR_ERR(omap->hsic60m_clk[i])); | 775 | dev_err(dev, "Failed to get clock : %s : %d\n", |
776 | clkname, ret); | ||
777 | goto err_mem; | ||
778 | } | ||
769 | } | 779 | } |
770 | 780 | ||
771 | if (is_ehci_phy_mode(pdata->port_mode[0])) { | 781 | if (is_ehci_phy_mode(pdata->port_mode[0])) { |
772 | ret = clk_set_parent(omap->utmi_p1_gfclk, | 782 | ret = clk_set_parent(omap->utmi_p1_gfclk, |
773 | omap->xclk60mhsp1_ck); | 783 | omap->xclk60mhsp1_ck); |
774 | if (ret != 0) | 784 | if (ret != 0) { |
775 | dev_dbg(dev, "xclk60mhsp1_ck set parent failed: %d\n", | 785 | dev_err(dev, "xclk60mhsp1_ck set parent failed: %d\n", |
776 | ret); | 786 | ret); |
787 | goto err_mem; | ||
788 | } | ||
777 | } else if (is_ehci_tll_mode(pdata->port_mode[0])) { | 789 | } else if (is_ehci_tll_mode(pdata->port_mode[0])) { |
778 | ret = clk_set_parent(omap->utmi_p1_gfclk, | 790 | ret = clk_set_parent(omap->utmi_p1_gfclk, |
779 | omap->init_60m_fclk); | 791 | omap->init_60m_fclk); |
780 | if (ret != 0) | 792 | if (ret != 0) { |
781 | dev_dbg(dev, "P0 init_60m_fclk set parent failed: %d\n", | 793 | dev_err(dev, "P0 init_60m_fclk set parent failed: %d\n", |
782 | ret); | 794 | ret); |
795 | goto err_mem; | ||
796 | } | ||
783 | } | 797 | } |
784 | 798 | ||
785 | if (is_ehci_phy_mode(pdata->port_mode[1])) { | 799 | if (is_ehci_phy_mode(pdata->port_mode[1])) { |
786 | ret = clk_set_parent(omap->utmi_p2_gfclk, | 800 | ret = clk_set_parent(omap->utmi_p2_gfclk, |
787 | omap->xclk60mhsp2_ck); | 801 | omap->xclk60mhsp2_ck); |
788 | if (ret != 0) | 802 | if (ret != 0) { |
789 | dev_dbg(dev, "xclk60mhsp2_ck set parent failed: %d\n", | 803 | dev_err(dev, "xclk60mhsp2_ck set parent failed: %d\n", |
790 | ret); | 804 | ret); |
805 | goto err_mem; | ||
806 | } | ||
791 | } else if (is_ehci_tll_mode(pdata->port_mode[1])) { | 807 | } else if (is_ehci_tll_mode(pdata->port_mode[1])) { |
792 | ret = clk_set_parent(omap->utmi_p2_gfclk, | 808 | ret = clk_set_parent(omap->utmi_p2_gfclk, |
793 | omap->init_60m_fclk); | 809 | omap->init_60m_fclk); |
794 | if (ret != 0) | 810 | if (ret != 0) { |
795 | dev_dbg(dev, "P1 init_60m_fclk set parent failed: %d\n", | 811 | dev_err(dev, "P1 init_60m_fclk set parent failed: %d\n", |
796 | ret); | 812 | ret); |
813 | goto err_mem; | ||
814 | } | ||
797 | } | 815 | } |
798 | 816 | ||
799 | initialize: | 817 | initialize: |