• Carlo Caione's avatar
    firmware: meson-sm: Allow 0 as valid return value · 7a9bc330
    Carlo Caione authored
    Some special SMC calls (i.e. the function used to retrieve the serial
    number of the Amlogic SoCs) returns 0 in the register 0 also when the
    data was successfully read instead of using the register to hold the
    number of bytes returned in the bounce buffer as expected.
    
    With the current implementation of the driver this is seen as an error
    and meson_sm_call_read() returns an error even though the data was
    correctly read.
    
    To deal with this when we have no information about the amount of read
    data (that is 0 is returned by the SMC call) we return to the caller
    the requested amount of data and 0 as return value.
    Signed-off-by: default avatarCarlo Caione <carlo@endlessm.com>
    Acked-by: default avatarMark Rutland <mark.rutland@arm.com>
    Signed-off-by: default avatarKevin Hilman <khilman@baylibre.com>
    7a9bc330
meson_sm.c 5.69 KB