Message ID | 20190308183718.21409-1-jbx6244@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | drm: rockchip: add shutdown function to poweroff VOP and HDMI TX | expand |
Hi, Just found out that this was patched and reverted before.(lol) The revert was 3 months ago for RK3399 boards, but other processors like RK3066 are left without shutdown now. What's the status for a fix? Keep using the old patch for now? drm/rockchip: shutdown drm subsystem on shutdown https://patchwork.kernel.org/patch/10556151/ [for-4.20] Revert "drm/rockchip: Allow driver to be shutdown on reboot/kexec" https://patchwork.kernel.org/patch/10714725/ 2019-03-08 19:37 GMT+01:00, Johan Jonker <jbx6244@gmail.com>: > When a MK808 TV-stick with RK3066 processor > is given a poweroff command, the monitor doesn't turn blank, > but freezes. The VOP and HDMI share the same power domain, > so that means that both there clocks were never turned off. > Fix the disable of the VOP and HDMI TX by adding an extra > shutdown function that will unbind both drivers.
Hi Johan, Am Montag, 11. März 2019, 19:14:27 CEST schrieb Johan Jonker: > Hi, > > Just found out that this was patched and reverted before.(lol) > The revert was 3 months ago for RK3399 boards, but other processors > like RK3066 are left without shutdown now. > > What's the status for a fix? > Keep using the old patch for now? I've just resurrected the patch from Vicente, calling the atomic_shutdown helper. Sadly I forgot to Cc you there, but you can for example find it at https://patchwork.freedesktop.org/patch/295946/ Heiko
diff --git a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c index 8d7a634c1..66a8e99a3 100644 --- a/drivers/gpu/drm/rockchip/rockchip_drm_drv.c +++ b/drivers/gpu/drm/rockchip/rockchip_drm_drv.c @@ -448,6 +448,13 @@ static int rockchip_drm_platform_remove(struct platform_device *pdev) return 0; } +static void rockchip_drm_platform_shutdown(struct platform_device *pdev) +{ + component_master_del(&pdev->dev, &rockchip_drm_ops); + + rockchip_drm_match_remove(&pdev->dev); +} + static const struct of_device_id rockchip_drm_dt_ids[] = { { .compatible = "rockchip,display-subsystem", }, { /* sentinel */ }, @@ -457,6 +464,7 @@ MODULE_DEVICE_TABLE(of, rockchip_drm_dt_ids); static struct platform_driver rockchip_drm_platform_driver = { .probe = rockchip_drm_platform_probe, .remove = rockchip_drm_platform_remove, + .shutdown = rockchip_drm_platform_shutdown, .driver = { .name = "rockchip-drm", .of_match_table = rockchip_drm_dt_ids,
When a MK808 TV-stick with RK3066 processor is given a poweroff command, the monitor doesn't turn blank, but freezes. The VOP and HDMI share the same power domain, so that means that both there clocks were never turned off. Fix the disable of the VOP and HDMI TX by adding an extra shutdown function that will unbind both drivers. Signed-off-by: Johan Jonker <jbx6244@gmail.com> --- drivers/gpu/drm/rockchip/rockchip_drm_drv.c | 8 ++++++++ 1 file changed, 8 insertions(+)