[PATCH 38/41] drm/bridge: analogix_dp: Reorder plat_data->power_off to happen sooner

Andrzej Hajda a.hajda at samsung.com
Wed Mar 22 03:34:09 PDT 2017

On 10.03.2017 05:32, Sean Paul wrote:
> From: Douglas Anderson <dianders at chromium.org>
> The current user of the analogix power_off is "analogix_dp-rockchip".
> That driver does this:
> - deactivate PSR
> - turn off a clock
> Both of these things (especially deactive PSR) should be done before
> we turn the PHY power off and turn off analog power.  Let's move the
> callback up.
> Note that without this patch (and with https://patchwork.kernel.org/patch/9553349/
> [seanpaul: this patch was not applied, but it seems like the race
> can still occur]), I experienced an error in reboot testing where one
> thread was at:
>   rockchip_drm_psr_deactivate
>   rockchip_dp_powerdown
>   analogix_dp_bridge_disable
>   drm_bridge_disable
> ...and the other thread was at:
>   analogix_dp_send_psr_spd
>   analogix_dp_enable_psr
>   analogix_dp_psr_set
>   psr_flush_handler
> The flush handler thread was finding AUX channel errors and eventually
> reported "Failed to apply PSR", where I had a kgdb breakpoint. Presumably
> the device would have eventually given up and shut down anyway, but it
> seems better to fix the order to be more correct.
> Cc: Kristian H. Kristensen <hoegsberg at chromium.org>
> Signed-off-by: Douglas Anderson <dianders at chromium.org>
> Signed-off-by: Sean Paul <seanpaul at chromium.org>

Reviewed-by: Andrzej Hajda <a.hajda at samsung.com>

More information about the Linux-rockchip mailing list