On 10/23/2023 4:35 PM, Maíra Canal wrote: > The commit c494a447c14e ("soc: bcm: bcm2835-power: Refactor ASB control") > refactored the ASB control by using a general function to handle both > the enable and disable. But this patch introduced a subtle regression: > we need to check if !!(readl(base + reg) & ASB_ACK) == enable, not just > check if (readl(base + reg) & ASB_ACK) == true. > > Currently, this is causing an invalid register state in V3D when > unloading and loading the driver, because `bcm2835_asb_disable()` will > return -ETIMEDOUT and `bcm2835_asb_power_off()` will fail to disable the > ASB slave for V3D. > > Fixes: c494a447c14e ("soc: bcm: bcm2835-power: Refactor ASB control") > Signed-off-by: Maíra Canal Reviewed-by: Florian Fainelli Good catch! -- Florian