Skip to content
  • Harald Seiler's avatar
    reset: Remove addr parameter from reset_cpu() · 35b65dd8
    Harald Seiler authored and Tom Rini's avatar Tom Rini committed
    
    
    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's avatarHarald Seiler <hws@denx.de>
    Reviewed-by: Simon Glass's avatarSimon Glass <sjg@chromium.org>
    35b65dd8