RE: [PATCH 2/3] usb: ehci: fsl: Update register accessing for arm/arm64 platforms

From: Alan Stern
Date: Wed Jan 09 2019 - 10:14:27 EST


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.

Alan Stern