]> git.proxmox.com Git - mirror_ubuntu-kernels.git/commitdiff
drm/bridge: ps8640: Add double reset T4 and T5 to power-on sequence
authorHsin-Yi Wang <hsinyi@chromium.org>
Mon, 15 Aug 2022 09:39:07 +0000 (17:39 +0800)
committerDouglas Anderson <dianders@chromium.org>
Mon, 29 Aug 2022 21:45:53 +0000 (14:45 -0700)
The double reset power-on sequence is a workaround for the hardware
flaw in some chip that SPI Clock output glitch and cause internal MPU
unable to read firmware correctly. The sequence is suggested in ps8640
application note.

Signed-off-by: Hsin-Yi Wang <hsinyi@chromium.org>
Reviewed-by: Rock Chiu <rock.chiu@paradetech.corp-partner.google.com>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220815093905.134164-1-hsinyi@chromium.org
drivers/gpu/drm/bridge/parade-ps8640.c

index 49107a6cdac189f6bbff07c997a0602c77650c23..d7483c13c569bbbe4e7ade166b66a499a6aed0aa 100644 (file)
@@ -375,6 +375,11 @@ static int __maybe_unused ps8640_resume(struct device *dev)
        gpiod_set_value(ps_bridge->gpio_reset, 1);
        usleep_range(2000, 2500);
        gpiod_set_value(ps_bridge->gpio_reset, 0);
+       /* Double reset for T4 and T5 */
+       msleep(50);
+       gpiod_set_value(ps_bridge->gpio_reset, 1);
+       msleep(50);
+       gpiod_set_value(ps_bridge->gpio_reset, 0);
 
        /*
         * Mystery 200 ms delay for the "MCU to be ready". It's unclear if