Hi Alan,

> -----Original Message-----
> From: Alan Stern <st...@rowland.harvard.edu>
> Sent: Wednesday, January 09, 2019 23:14
> To: Ran Wang <ran.wan...@nxp.com>
> Cc: Greg Kroah-Hartman <gre...@linuxfoundation.org>; linux-
> u...@vger.kernel.org; linux-kernel@vger.kernel.org
> Subject: RE: [PATCH 2/3] usb: ehci: fsl: Update register accessing for
> arm/arm64 platforms
> 
> On Wed, 9 Jan 2019, Ran Wang wrote:
> 
> > > Why do you change this writel() into iowrite32be() but leave other
> > > instances of writel() unchanged?  Was this a mistake?
> >
> > Yes, I didn't notice there are other writel() used in this file.
> > However, as I know, on both powerpc and arm SoC, EHCI FSL IP's memory
> > mapped register block is always Big-endian, so I'd like to replace all
> > writel() with iowrite32be() in this file. Is it necessary?
> >
> > Or I just replace them with ehci_writel() and select
> CONFIG_USB_EHCI_BIG_ENDIAN_MMIO?
> 
> That should work okay.  ehci_fsl_setup() sets ehci->big_endian_desc and
> ehci->big_endian_mmio according to the platform data, so you just have
> to make sure the platform data is initialized correctly.
>
OK, so I should not change writel() into iowrite32be() at that
place you mentioned, and still using iowrite32be()/ioread32be() to replace
clrsetbits_be32(), am I right?

Regards,
Ran

> Alan Stern

Reply via email to