public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: rogerq@ti•com (Roger Quadros)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH v2 6/6] mfd: omap-usb: prepare/unprepare clock while enable/disable
Date: Thu, 10 Oct 2013 12:31:05 +0300	[thread overview]
Message-ID: <525673D9.9060900@ti.com> (raw)
In-Reply-To: <1381226799-29158-7-git-send-email-rogerq@ti.com>

Hi Samuel,

Could you please pick this one for 3.13 if OK? Thanks.

cheers,
-roger

On 10/08/2013 01:06 PM, Roger Quadros wrote:
> This should fix the following warning at boot on OMAP5 uEVM
> [    8.783155] WARNING: CPU: 0 PID: 1 at drivers/clk/clk.c:883 __clk_enable+0x94/0xa4()
> 
> CC: Samuel Ortiz <sameo@linux•intel.com>
> CC: Lee Jones <lee.jones@linaro•org>
> CC: Tero Kristo <t-kristo@ti•com>
> Signed-off-by: Roger Quadros <rogerq@ti•com>
> ---
>  drivers/mfd/omap-usb-host.c |   16 ++++++++--------
>  drivers/mfd/omap-usb-tll.c  |    4 ++--
>  2 files changed, 10 insertions(+), 10 deletions(-)
> 
> diff --git a/drivers/mfd/omap-usb-host.c b/drivers/mfd/omap-usb-host.c
> index 29ee54d..a5b91f1 100644
> --- a/drivers/mfd/omap-usb-host.c
> +++ b/drivers/mfd/omap-usb-host.c
> @@ -328,13 +328,13 @@ static int usbhs_runtime_resume(struct device *dev)
>  	omap_tll_enable(pdata);
>  
>  	if (!IS_ERR(omap->ehci_logic_fck))
> -		clk_enable(omap->ehci_logic_fck);
> +		clk_prepare_enable(omap->ehci_logic_fck);
>  
>  	for (i = 0; i < omap->nports; i++) {
>  		switch (pdata->port_mode[i]) {
>  		case OMAP_EHCI_PORT_MODE_HSIC:
>  			if (!IS_ERR(omap->hsic60m_clk[i])) {
> -				r = clk_enable(omap->hsic60m_clk[i]);
> +				r = clk_prepare_enable(omap->hsic60m_clk[i]);
>  				if (r) {
>  					dev_err(dev,
>  					 "Can't enable port %d hsic60m clk:%d\n",
> @@ -343,7 +343,7 @@ static int usbhs_runtime_resume(struct device *dev)
>  			}
>  
>  			if (!IS_ERR(omap->hsic480m_clk[i])) {
> -				r = clk_enable(omap->hsic480m_clk[i]);
> +				r = clk_prepare_enable(omap->hsic480m_clk[i]);
>  				if (r) {
>  					dev_err(dev,
>  					 "Can't enable port %d hsic480m clk:%d\n",
> @@ -354,7 +354,7 @@ static int usbhs_runtime_resume(struct device *dev)
>  
>  		case OMAP_EHCI_PORT_MODE_TLL:
>  			if (!IS_ERR(omap->utmi_clk[i])) {
> -				r = clk_enable(omap->utmi_clk[i]);
> +				r = clk_prepare_enable(omap->utmi_clk[i]);
>  				if (r) {
>  					dev_err(dev,
>  					 "Can't enable port %d clk : %d\n",
> @@ -382,15 +382,15 @@ static int usbhs_runtime_suspend(struct device *dev)
>  		switch (pdata->port_mode[i]) {
>  		case OMAP_EHCI_PORT_MODE_HSIC:
>  			if (!IS_ERR(omap->hsic60m_clk[i]))
> -				clk_disable(omap->hsic60m_clk[i]);
> +				clk_disable_unprepare(omap->hsic60m_clk[i]);
>  
>  			if (!IS_ERR(omap->hsic480m_clk[i]))
> -				clk_disable(omap->hsic480m_clk[i]);
> +				clk_disable_unprepare(omap->hsic480m_clk[i]);
>  		/* Fall through as utmi_clks were used in HSIC mode */
>  
>  		case OMAP_EHCI_PORT_MODE_TLL:
>  			if (!IS_ERR(omap->utmi_clk[i]))
> -				clk_disable(omap->utmi_clk[i]);
> +				clk_disable_unprepare(omap->utmi_clk[i]);
>  			break;
>  		default:
>  			break;
> @@ -398,7 +398,7 @@ static int usbhs_runtime_suspend(struct device *dev)
>  	}
>  
>  	if (!IS_ERR(omap->ehci_logic_fck))
> -		clk_disable(omap->ehci_logic_fck);
> +		clk_disable_unprepare(omap->ehci_logic_fck);
>  
>  	omap_tll_disable(pdata);
>  
> diff --git a/drivers/mfd/omap-usb-tll.c b/drivers/mfd/omap-usb-tll.c
> index e59ac4c..1e57712 100644
> --- a/drivers/mfd/omap-usb-tll.c
> +++ b/drivers/mfd/omap-usb-tll.c
> @@ -429,7 +429,7 @@ int omap_tll_enable(struct usbhs_omap_platform_data *pdata)
>  			if (IS_ERR(tll->ch_clk[i]))
>  				continue;
>  
> -			r = clk_enable(tll->ch_clk[i]);
> +			r = clk_prepare_enable(tll->ch_clk[i]);
>  			if (r) {
>  				dev_err(tll_dev,
>  				 "Error enabling ch %d clock: %d\n", i, r);
> @@ -460,7 +460,7 @@ int omap_tll_disable(struct usbhs_omap_platform_data *pdata)
>  	for (i = 0; i < tll->nch; i++) {
>  		if (omap_usb_mode_needs_tll(pdata->port_mode[i])) {
>  			if (!IS_ERR(tll->ch_clk[i]))
> -				clk_disable(tll->ch_clk[i]);
> +				clk_disable_unprepare(tll->ch_clk[i]);
>  		}
>  	}
>  
> 

      reply	other threads:[~2013-10-10  9:31 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-10-08 10:06 [PATCH v2 0/6] Add USB Host support for OMAP5 uevm for 3.13 Roger Quadros
2013-10-08 10:06 ` [PATCH v2 1/6] ARM: OMAP5: hwmod data: Add USB Host and TLL modules Roger Quadros
2013-10-09  7:03   ` Paul Walmsley
2013-10-08 10:06 ` [PATCH v2 2/6] ARM: dts: OMAP5: Add 60MHz clock reference to USB Host module Roger Quadros
2013-10-08 10:06 ` [PATCH v2 3/6] ARM: dts: omap4-panda: Provide USB PHY clock Roger Quadros
2013-10-08 10:06 ` [PATCH v2 4/6] ARM: dts: omap5-uevm: " Roger Quadros
2013-10-08 10:06 ` [PATCH v2 5/6] Revert "ARM: OMAP2+: Provide alias to USB PHY clock" Roger Quadros
2013-10-09  7:10   ` Roger Quadros
2013-10-09 15:15     ` Tony Lindgren
2013-10-10  9:15       ` Roger Quadros
2013-10-22 15:17         ` Tony Lindgren
2013-10-23 10:14           ` Roger Quadros
2013-12-08 23:22             ` Tony Lindgren
2013-10-08 10:06 ` [PATCH v2 6/6] mfd: omap-usb: prepare/unprepare clock while enable/disable Roger Quadros
2013-10-10  9:31   ` Roger Quadros [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=525673D9.9060900@ti.com \
    --to=rogerq@ti$(echo .)com \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox