[U-Boot] [PATCH] at91sam9260/9263: add back up fot the rst(reset controller).
Sedji Gaouaou
sedji.gaouaou at atmel.com
Wed Jun 24 08:24:42 CEST 2009
Stelian Pop a écrit :
> On Tue, Jun 23, 2009 at 12:46:50PM +0200, Sedji Gaouaou wrote:
>
>> On the boards at91sam9260ek, at91sam9263ek and afed9260, the rstc register was
>> set to 0 after being set to 500 ms for the PHY reset.
>> Now if back up is enable it will be set to the saved value.
>
> The changelog message is not very clear. What means "if backup is enabled" ?
> I don't see anything in the patch which can be enabled or disabled...
>
To enable the back up you need to put a battery, so if there is no
battery there is no back up...that is why I said if back up is enable :)
> I think you meant something like: "Do backup the old reset length and restore
> it after the MACB initialisation".
>
But you comment is better, so I will change it.
>> + rstc = at91_sys_read(AT91_RSTC_MR);
> [...]
>> /* Restore NRST value */
>> at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY |
>> - AT91_RSTC_ERSTL | (0x0 << 8) |
>> + (rstc) |
>> AT91_RSTC_URSTEN);
>
> Also, I don't like this: you backup in 'rstc' the _whole_ contents
> of the MR register (including for example the URSTEN bit), but on
> restore you still construct a bit mask...
>
> In order to be consistent, I would do either:
>
> rstc = at91_sys_read(AT91_RSTC_MR);
> ...
> at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY | rstc);
>
> or
>
> rstc = at91_sys_read(AT91_RSTC_MR) & AT91_RSTC_ERSTL;
> ...
> at91_sys_write(AT91_RSTC_MR, AT91_RSTC_KEY | rstc | AT91_RSTC_URSTEN);
>
I will change that to then.
Regards,
Sedji
More information about the U-Boot
mailing list