From: Uri Mashiach <uri.mashiach@compulab.co.il>
Date: Thu, 23 Feb 2017 13:39:38 +0000 (+0200)
Subject: arm: am57xx: cl-som-am57x: invoke clock API to enable/disable clocks
X-Git-Tag: v2025.01-rc5-pxa1908~7073
X-Git-Url: http://git.dujemihanovic.xyz/html/static/%7B%7B%20%24.Site.BaseURL%20%7D%7Dposts/%7B%7B%20%24style.Permalink%20%7D%7D?a=commitdiff_plain;h=4acfe1ae46ca7731544dda57ce42d10acc2d63c5;p=u-boot.git

arm: am57xx: cl-som-am57x: invoke clock API to enable/disable clocks

Invoke enable_usb_clocks during board_usb_init and disable_usb_clocks
during board_usb_exit to enable and disable clocks respectively.

Modifications:
* Enable USB clocks in the OMAP version of the function
  board_usb_init.
* Disable USB clocks in the OMAP version of the function
  board_usb_cleanup.

Cc: Marek Vasut <marex@denx.de>
Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
---

diff --git a/board/compulab/cl-som-am57x/cl-som-am57x.c b/board/compulab/cl-som-am57x/cl-som-am57x.c
index fe1468f80b..4701b71102 100644
--- a/board/compulab/cl-som-am57x/cl-som-am57x.c
+++ b/board/compulab/cl-som-am57x/cl-som-am57x.c
@@ -53,16 +53,6 @@ int board_mmc_init(bd_t *bis)
 }
 #endif /* CONFIG_GENERIC_MMC */
 
-#ifdef CONFIG_USB_XHCI_OMAP
-int omap_xhci_board_usb_init(int index, enum usb_init_type init)
-{
-	setbits_le32((*prcm)->cm_l3init_usb_otg_ss1_clkctrl,
-		     OTG_SS_CLKCTRL_MODULEMODE_HW | OPTFCLKEN_REFCLK960M);
-
-	return 0;
-}
-#endif /* CONFIG_USB_XHCI_OMAP */
-
 int misc_init_r(void)
 {
 	cl_print_pcb_info();
diff --git a/drivers/usb/host/xhci-omap.c b/drivers/usb/host/xhci-omap.c
index a1b4f2f05c..d6c5744818 100644
--- a/drivers/usb/host/xhci-omap.c
+++ b/drivers/usb/host/xhci-omap.c
@@ -29,6 +29,7 @@ static struct omap_xhci omap;
 
 __weak int omap_xhci_board_usb_init(int index, enum usb_init_type init)
 {
+	enable_usb_clocks(index);
 	return 0;
 }
 
@@ -39,6 +40,7 @@ int board_usb_init(int index, enum usb_init_type init)
 
 __weak int omap_xhci_board_usb_cleanup(int index, enum usb_init_type init)
 {
+	disable_usb_clocks(index);
 	return 0;
 }