On Tue, Dec 15, 2020 at 04:47:52PM +0100, Harald Seiler wrote:

> Historically, the reset_cpu() function had an `addr` parameter which was
> meant to pass in an address of the reset vector location, where the CPU
> should reset to.  This feature is no longer used anywhere in U-Boot as
> all reset_cpu() implementations now ignore the passed value.  Generic
> code has been added which always calls reset_cpu() with `0` which means
> this feature can no longer be used easily anyway.
> 
> Over time, many implementations seem to have "misunderstood" the
> existence of this parameter as a way to customize/parameterize the reset
> (e.g.  COLD vs WARM resets).  As this is not properly supported, the
> code will almost always not do what it is intended to (because all
> call-sites just call reset_cpu() with 0).
> 
> To avoid confusion and to clean up the codebase from unused left-overs
> of the past, remove the `addr` parameter entirely.  Code which intends
> to support different kinds of resets should be rewritten as a sysreset
> driver instead.
> 
> This transformation was done with the following coccinelle patch:
> 
>     @@
>     expression argvalue;
>     @@
>     - reset_cpu(argvalue)
>     + reset_cpu()
> 
>     @@
>     identifier argname;
>     type argtype;
>     @@
>     - reset_cpu(argtype argname)
>     + reset_cpu(void)
>     { ... }
> 
> Signed-off-by: Harald Seiler <h...@denx.de>
> Reviewed-by: Simon Glass <s...@chromium.org>

Applied to u-boot/next, thanks!

-- 
Tom

Attachment: signature.asc
Description: PGP signature

Reply via email to