From acf255598365d0cfcc02a2857ecdb7d21422180b Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 10 Nov 2020 11:21:56 +0000 Subject: [PATCH] drm/panel/raspberrypi-ts: Insert delay before polling for startup state In switching to the hardware I2C controller there is an issue where we seem to not get back the correct state from the Pi touchscreen. Insert a delay before polling to avoid this condition. Signed-off-by: Dave Stevenson --- drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c index 7ebb5ee..abb8a85 100644 --- a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c +++ b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c @@ -299,6 +299,7 @@ static int rpi_touchscreen_enable(struct drm_panel *panel) int i; rpi_touchscreen_i2c_write(ts, REG_POWERON, 1); + usleep_range(20000, 25000); /* Wait for nPWRDWN to go low to indicate poweron is done. */ for (i = 0; i < 100; i++) { if (rpi_touchscreen_i2c_read(ts, REG_PORTB) & 1) -- 2.7.4