]> git.baikalelectronics.ru Git - kernel.git/commit
drm/mediatek: Keep dsi as LP00 before dcs cmds transfer
authorJitao Shi <jitao.shi@mediatek.com>
Fri, 20 May 2022 02:00:06 +0000 (10:00 +0800)
committerChun-Kuang Hu <chunkuang.hu@kernel.org>
Mon, 6 Jun 2022 23:32:46 +0000 (07:32 +0800)
commit76d852403a2c8344e84452a6dbe874f34a357f6c
tree1182d25a69a9bbfa5c67fb5cd63ee5d0b51bd4fb
parent23c09cfcb9f1b6c23fb18e688282a01d529e5652
drm/mediatek: Keep dsi as LP00 before dcs cmds transfer

To comply with the panel sequence, hold the mipi signal to LP00 before
the dcs cmds transmission, and pull the mipi signal high from LP00 to
LP11 until the start of the dcs cmds transmission.

The normal panel timing is :
(1) pp1800 DC pull up
(2) avdd & avee AC pull high
(3) lcm_reset pull high -> pull low -> pull high
(4) Pull MIPI signal high (LP11) -> initial code -> send video data
    (HS mode)

The power-off sequence is reversed.
If dsi is not in cmd mode, then dsi will pull the mipi signal high in
the mtk_output_dsi_enable function. The delay in lane_ready func is
the reaction time of dsi_rx after pulling up the mipi signal.

Fixes: 391bb3ed9f63 ("drm/mediatek: mtk_dsi: Use the drm_panel_bridge API")
Link: https://patchwork.kernel.org/project/linux-mediatek/patch/1653012007-11854-4-git-send-email-xinlei.lee@mediatek.com/
Cc: <stable@vger.kernel.org> # 5.10.x: c6d694d8bfbd: drm/mediatek: Modify dsi funcs to atomic operations
Cc: <stable@vger.kernel.org> # 5.10.x: 23c09cfcb9f1: drm/mediatek: Separate poweron/poweroff from enable/disable and define new funcs
Cc: <stable@vger.kernel.org> # 5.10.x
Signed-off-by: Jitao Shi <jitao.shi@mediatek.com>
Signed-off-by: Xinlei Lee <xinlei.lee@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Reviewed-by: Rex-BC Chen <rex-bc.chen@mediatek.com>
Signed-off-by: Chun-Kuang Hu <chunkuang.hu@kernel.org>
drivers/gpu/drm/mediatek/mtk_dsi.c