From 9d42aa7c05e2abd6a94c3075b7bcd00b4abc990b Mon Sep 17 00:00:00 2001 From: Dave Stevenson Date: Tue, 10 Nov 2020 11:21:56 +0000 Subject: [PATCH 299/726] 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 704bd10c8716..6ce5ea3cd5b1 100644 --- a/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c +++ b/drivers/gpu/drm/panel/panel-raspberrypi-touchscreen.c @@ -300,6 +300,7 @@ static int rpi_touchscreen_prepare(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.33.1