[U-Boot] [PATCH] usb: dwc3: add UniPhier specific glue layer

Masahiro Yamada yamada.masahiro at socionext.com
Fri Sep 29 01:31:53 UTC 2017


Hi Marek,


2017-09-29 0:26 GMT+09:00 Marek Vasut <marex at denx.de>:
> On 09/28/2017 03:01 PM, Masahiro Yamada wrote:
>> Add UniPhier platform specific glue layer to support USB3 Host mode
>> on Synopsys DWC3 IP.
>>
>> Signed-off-by: Masahiro Yamada <yamada.masahiro at socionext.com>
>> Reviewed-by: Marek Vasut <marex at denx.de>
>
> [...]
>
>> +static int uniphier_pro4_dwc3_init(void __iomem *regs)
>> +{
>> +     u32 tmp;
>> +
>> +     tmp = readl(regs + UNIPHIER_PRO4_DWC3_RESET);
>> +     tmp &= ~UNIPHIER_PRO4_DWC3_RESET_PHY_SS;
>> +     tmp |= UNIPHIER_PRO4_DWC3_RESET_XIOMMU | UNIPHIER_PRO4_DWC3_RESET_XLINK;
>> +     writel(tmp, regs + UNIPHIER_PRO4_DWC3_RESET);
>
> Do I even want to nag you about clrsetbits_le32() or not ?
> What do you think?


I did not know this macro.

This seems to come from PPC Linux
(defined in arch/powerpc/include/asm/io.h)
probably in order to abstract the endianness.

Of course, it makes drivers ppc-specific,
disabling COMPILE_TEST coverage.


In U-Boot, more architectures support this macro, ARM as well.
(probably people wanted to write the code shorter?)

I am reluctant with it because I do not want to diverge from Linux.


-- 
Best Regards
Masahiro Yamada


More information about the U-Boot mailing list