Re: [PATCH v5 0/3] usb: ehci+chipidea: fix imx28 "ENGR119653 USB: ARM to USB register error issue"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On 11/24/2013 11:57 AM, Peter Chen wrote:
> On Fri, Nov 22, 2013 at 10:53:53AM +0100, Marc Kleine-Budde wrote:
>> Hello,
>>
>> this series implements the suggested workaround for freescale's imx28 Errata,
>> "ENGR119653 USB: ARM to USB register error issue".
>>
>> changes since v4:
>> - fix signature of imx28_ehci_writel(), don't use volatile, make use of __iomem
> 
> The __iomem is just sparse thing, and not related to gcc, our imx28_ehci_writel
> uses assembly directly, and not call writel any more. The definition of
> __raw_writel still uses volatile:

Yes....
> 
> include/asm-generic/io.h:
> static inline void __raw_writel(u32 b, volatile void __iomem *addr)
> {
> 	        *(volatile u32 __force *) addr = b;
> }

What does that mean for our imx28_ehci_writel? Do we need volatile here?

> +static inline void imx28_ehci_writel(const unsigned int val, __u32 __iomem *addr)
> +{
> +	__asm__ ("swp %0, %0, [%1]" : : "r"(val), "r"(addr));
> +}

Marc

-- 
Pengutronix e.K.                  | Marc Kleine-Budde           |
Industrial Linux Solutions        | Phone: +49-231-2826-924     |
Vertretung West/Dortmund          | Fax:   +49-5121-206917-5555 |
Amtsgericht Hildesheim, HRA 2686  | http://www.pengutronix.de   |

Attachment: signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux