[U-Boot] [PATCH] ls102xa: Fix reset hang

Sinan Akman sinan at writeme.com
Fri Oct 2 16:51:06 CEST 2015


   Hi Wolfgang

On 02/10/15 10:42 AM, Wolfgang Denk wrote:
> Dear Fabio,
>
> In message <1443792315-18997-1-git-send-email-festevam at gmail.com> you wrote:
> ...
>> Unlike i.MX and Vybrid, the watchdog controller on LS102x is big-endian.
> ...
>> +struct watchdog_regs {
>> +	u16	wcr;	/* Control */
>> +	u16	wsr;	/* Service */
>> +	u16	wrsr;	/* Reset Status */
>> +};
>> +
>> +#define WCR_SRS		(1 << 4)
> This belongs to some watchdog (or processor) related header file.
>
> As is, it duplicates code from drivers/watchdog/imx_watchdog.c which
> is something we should not do.
>
>> diff --git a/drivers/watchdog/Makefile b/drivers/watchdog/Makefile
>> index 9e9cb55..a007ae8 100644
>> --- a/drivers/watchdog/Makefile
>> +++ b/drivers/watchdog/Makefile
>> @@ -7,7 +7,7 @@
>>   
>>   obj-$(CONFIG_AT91SAM9_WATCHDOG) += at91sam9_wdt.o
>>   obj-$(CONFIG_FTWDT010_WATCHDOG) += ftwdt010_wdt.o
>> -ifneq (,$(filter $(SOC), mx31 mx35 mx5 mx6 mx7 vf610 ls102xa))
>> +ifneq (,$(filter $(SOC), mx31 mx35 mx5 mx6 mx7 vf610))
> So this fixes the reset problem for now - but what happens when
> someone wants to use the watchdog for real?  Will we create a copy of
> drivers/watchdog/imx_watchdog.c  using big-endian accessors?  This
> cannot be right?

   I don't know if you've seen my earlier e-mail on this but I was 
suggesting
to bring watchdog to DM and then consider endian type from dts to implement
it properly. Would this not ultimately be the right solution ?

   Regards
   Sinan Akman
>
> Best regards,
>
> Wolfgang Denk
>



More information about the U-Boot mailing list