From 287d6cd06e7d0aef6b0451bda2af1b34ebcdd7ae Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> Date: Tue, 22 Oct 2019 16:55:32 +0200 Subject: [PATCH] Revert "drm/bridge: nwl: Drop reset quirk" This reverts commit 87b1baf32040f405618902d31106296813c78811. Fixes vt switching but makes the blank/unblank shift reappear. --- drivers/gpu/drm/bridge/nwl-dsi.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/bridge/nwl-dsi.c b/drivers/gpu/drm/bridge/nwl-dsi.c index 699b23a6fb69a..314b19356aba2 100644 --- a/drivers/gpu/drm/bridge/nwl-dsi.c +++ b/drivers/gpu/drm/bridge/nwl-dsi.c @@ -39,6 +39,8 @@ /* i.MX8 NWL quirks */ /* i.MX8MQ errata E11418 */ #define E11418_HS_MODE_QUIRK BIT(0) +/* Skip DSI bits in SRC on disable to avoid blank display on enable */ +#define SRC_RESET_QUIRK BIT(1) #define NWL_DSI_MIPI_FIFO_TIMEOUT msecs_to_jiffies(500) @@ -1123,6 +1125,9 @@ static int imx8mq_dsi_poweroff(struct nwl_dsi *dsi) { int ret = 0; + if (dsi->quirks & SRC_RESET_QUIRK) + return 0; + if (dsi->rstc) ret = reset_control_assert(dsi->rstc); return ret; @@ -1150,7 +1155,7 @@ MODULE_DEVICE_TABLE(of, nwl_dsi_dt_ids); static const struct soc_device_attribute nwl_dsi_quirks_match[] = { { .soc_id = "i.MX8MQ", .revision = "2.0", - .data = (void *)(E11418_HS_MODE_QUIRK) }, + .data = (void *)(E11418_HS_MODE_QUIRK | SRC_RESET_QUIRK) }, { /* sentinel. */ }, }; -- GitLab