Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1431355 > unrolled thread

[PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST

Started byStephen Boyd <stephen.boyd@linaro.org>
First post2016-06-26 09:30 +0200
Last post2016-06-30 03:30 +0200
Articles 3 — 2 participants

Back to article view | Back to linux.kernel

This discussion starts older than the indexed window; earlier articles aren't shown. The article labeled Started by below is the oldest one visible, not the original post.


Contents

  [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST Stephen Boyd <stephen.boyd@linaro.org> - 2016-06-26 09:30 +0200
    Re: [PATCH 10/21] usb: chipidea: msm: Rely on core to override  AHBBURST Peter Chen <hzpeterchen@gmail.com> - 2016-06-29 08:40 +0200
      Re: [PATCH 10/21] usb: chipidea: msm: Rely on core to override  AHBBURST Peter Chen <hzpeterchen@gmail.com> - 2016-06-30 03:30 +0200

#1431355 — [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST

FromStephen Boyd <stephen.boyd@linaro.org>
Date2016-06-26 09:30 +0200
Subject[PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST
Message-ID<rOcFX-8ei-1@gated-at.bofh.it>
The core framework already handles setting this parameter with a
platform quirk. Add the appropriate flag so that we always set
AHBBURST to 0. Technically DT should be doing this, but we always
do it for msm chipidea devices so setting the flag in the driver
works just as well.

Cc: Peter Chen <peter.chen@nxp.com>
Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
---
 drivers/usb/chipidea/ci_hdrc_msm.c | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c
index 3889809fd0c4..37591a4b1346 100644
--- a/drivers/usb/chipidea/ci_hdrc_msm.c
+++ b/drivers/usb/chipidea/ci_hdrc_msm.c
@@ -24,7 +24,6 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event)
 	switch (event) {
 	case CI_HDRC_CONTROLLER_RESET_EVENT:
 		dev_dbg(dev, "CI_HDRC_CONTROLLER_RESET_EVENT received\n");
-		writel(0, USB_AHBBURST);
 		/* use AHB transactor, allow posted data writes */
 		writel(0x8, USB_AHBMODE);
 		usb_phy_init(ci->usb_phy);
@@ -47,7 +46,8 @@ static struct ci_hdrc_platform_data ci_hdrc_msm_platdata = {
 	.name			= "ci_hdrc_msm",
 	.capoffset		= DEF_CAPOFFSET,
 	.flags			= CI_HDRC_REGS_SHARED |
-				  CI_HDRC_DISABLE_STREAMING,
+				  CI_HDRC_DISABLE_STREAMING |
+				  CI_HDRC_OVERRIDE_AHB_BURST,
 
 	.notify_event		= ci_hdrc_msm_notify_event,
 };
-- 
2.9.0.rc2.8.ga28705d

[toc] | [next] | [standalone]


#1433477 — Re: [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST

FromPeter Chen <hzpeterchen@gmail.com>
Date2016-06-29 08:40 +0200
SubjectRe: [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST
Message-ID<rPhke-Kk-23@gated-at.bofh.it>
In reply to#1431355
On Sun, Jun 26, 2016 at 12:28:27AM -0700, Stephen Boyd wrote:
> The core framework already handles setting this parameter with a
> platform quirk. Add the appropriate flag so that we always set
> AHBBURST to 0. Technically DT should be doing this, but we always
> do it for msm chipidea devices so setting the flag in the driver
> works just as well.

You still need to set AHB burst value at dts, this flag is just for
override, see below:

ahb-burst-config = <0x0>;

> 
> Cc: Peter Chen <peter.chen@nxp.com>
> Cc: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
> Signed-off-by: Stephen Boyd <stephen.boyd@linaro.org>
> ---
>  drivers/usb/chipidea/ci_hdrc_msm.c | 4 ++--
>  1 file changed, 2 insertions(+), 2 deletions(-)
> 
> diff --git a/drivers/usb/chipidea/ci_hdrc_msm.c b/drivers/usb/chipidea/ci_hdrc_msm.c
> index 3889809fd0c4..37591a4b1346 100644
> --- a/drivers/usb/chipidea/ci_hdrc_msm.c
> +++ b/drivers/usb/chipidea/ci_hdrc_msm.c
> @@ -24,7 +24,6 @@ static void ci_hdrc_msm_notify_event(struct ci_hdrc *ci, unsigned event)
>  	switch (event) {
>  	case CI_HDRC_CONTROLLER_RESET_EVENT:
>  		dev_dbg(dev, "CI_HDRC_CONTROLLER_RESET_EVENT received\n");
> -		writel(0, USB_AHBBURST);
>  		/* use AHB transactor, allow posted data writes */
>  		writel(0x8, USB_AHBMODE);
>  		usb_phy_init(ci->usb_phy);
> @@ -47,7 +46,8 @@ static struct ci_hdrc_platform_data ci_hdrc_msm_platdata = {
>  	.name			= "ci_hdrc_msm",
>  	.capoffset		= DEF_CAPOFFSET,
>  	.flags			= CI_HDRC_REGS_SHARED |
> -				  CI_HDRC_DISABLE_STREAMING,
> +				  CI_HDRC_DISABLE_STREAMING |
> +				  CI_HDRC_OVERRIDE_AHB_BURST,
>  
>  	.notify_event		= ci_hdrc_msm_notify_event,
>  };
> -- 
> 2.9.0.rc2.8.ga28705d
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-usb" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html

-- 

Best Regards,
Peter Chen

[toc] | [prev] | [next] | [standalone]


#1434146 — Re: [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST

FromPeter Chen <hzpeterchen@gmail.com>
Date2016-06-30 03:30 +0200
SubjectRe: [PATCH 10/21] usb: chipidea: msm: Rely on core to override AHBBURST
Message-ID<rPyXM-39e-19@gated-at.bofh.it>
In reply to#1433477
On Wed, Jun 29, 2016 at 11:59:21AM -0700, Stephen Boyd wrote:
> Quoting Peter Chen (2016-06-28 23:32:11)
> > On Sun, Jun 26, 2016 at 12:28:27AM -0700, Stephen Boyd wrote:
> > > The core framework already handles setting this parameter with a
> > > platform quirk. Add the appropriate flag so that we always set
> > > AHBBURST to 0. Technically DT should be doing this, but we always
> > > do it for msm chipidea devices so setting the flag in the driver
> > > works just as well.
> > 
> > You still need to set AHB burst value at dts, this flag is just for
> > override, see below:
> > 
> > ahb-burst-config = <0x0>;
> 
> Right, I have added that to dts now, but the CI_HDRC_OVERRIDE_AHB_BURST
> flag allows us to specify it from the platdata structure in the
> ci_hdrc_msm.c file. As the value is zero for msm type controllers, I
> left it out of the static definition of platdata because all the
> non-initialized members of that structure are going to be zero anyway. I
> can explicitly set it to zero to make it more clear if you like.

I suggest setting it explicitly at dts, at current code, it is set
as zero explicitly too:)

-- 

Best Regards,
Peter Chen

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web