linux/drivers/gpu/drm/panel
Cong Yang 5820a1932c drm/panel: ili9882t: Avoid blurred screen from fast sleep
At present, we have found that there may be a problem of blurred
screen during fast sleep/resume. The direct cause of the blurred
screen is that the IC does not receive 0x28/0x10. Because of the
particularity of the IC, before the panel enters sleep hid must
stop scanning, as i2c_hid_core_suspend before ili9882t_disable.
If move the ili9882t_enter_sleep_mode function to ili9882t_unprepare,
touch reset will pull low before panel entersleep, which does not meet
the timing requirements.. So in order to solve this problem, the IC
can handle it through the exception mechanism when it cannot receive
0x28/0x10 command. Handling exceptions requires a reset 50ms delay.
Refer to vendor detailed analysis [1].

Ilitek vendor also suggested switching the page before entering sleep to
avoid panel IC not receiving 0x28/0x10 command.

Note: 0x28 is display off, 0x10 is sleep in.

[1]: https://github.com/ILITEK-LoganLin/Document/tree/main/ILITEK_Power_Sequence

Signed-off-by: Cong Yang <yangcong5@huaqin.corp-partner.google.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20231013091844.804310-3-yangcong5@huaqin.corp-partner.google.com
2023-10-19 14:45:28 -07:00
..
Kconfig drm/panel: ili9882t: Break out as separate driver 2023-10-19 14:41:31 -07:00
Makefile drm/panel: ili9882t: Break out as separate driver 2023-10-19 14:41:31 -07:00
panel-abt-y030xx067a.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-arm-versatile.c drm/panel: fix a possible null pointer dereference 2023-10-10 10:33:30 +02:00
panel-asus-z00t-tm5p5-n35596.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-auo-a030jtn01.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-boe-bf060y8m-aj0.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-boe-himax8279d.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-boe-tv101wum-nl6.c drm/panel: ili9882t: Break out as separate driver 2023-10-19 14:41:31 -07:00
panel-dsi-cm.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-ebbg-ft8719.c
panel-edp.c drm/panel-edp: Add enable timings for N140HCA-EAC panel 2023-08-01 07:28:15 -07:00
panel-elida-kd35t133.c drm/panel-elida-kd35t133: Drop custom DSI write macro 2023-01-11 18:50:48 +01:00
panel-feixin-k101-im2ba02.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-feiyang-fy07024di26a30d.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-himax-hx8394.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-ilitek-ili9322.c drm/panel: ili9322: Convert to use maple tree register cache 2023-10-02 09:09:21 +02:00
panel-ilitek-ili9341.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-ilitek-ili9881c.c drm/panel: ilitek-ili9881c: Add TDO TL050HDV35 LCD panel 2023-07-31 14:59:09 +02:00
panel-ilitek-ili9882t.c drm/panel: ili9882t: Avoid blurred screen from fast sleep 2023-10-19 14:45:28 -07:00
panel-innolux-ej030na.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-innolux-p079zca.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-jadard-jd9365da-h3.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-jdi-fhd-r63452.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-jdi-lpm102a188a.c drm/panel: Add driver for JDI LPM102A188A 2023-08-16 18:54:42 +02:00
panel-jdi-lt070me05000.c drm/panel: JDI LT070ME05000 simplify with dev_err_probe() 2023-08-14 14:48:49 +02:00
panel-khadas-ts050.c drm/panel: khadas-ts050: update timings to achieve 60Hz refresh rate 2023-06-01 16:10:25 +02:00
panel-kingdisplay-kd097d04.c
panel-leadtek-ltk050h3146w.c drm/panel: ltk050h3146w: add support for Leadtek LTK050H3148W-CTA6 variant 2023-10-10 18:47:06 +02:00
panel-leadtek-ltk500hd1829.c
panel-lg-lb035q02.c
panel-lg-lg4573.c
panel-lvds.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-magnachip-d53e6ea8966.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-mantix-mlaf057we51.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-nec-nl8048hl11.c
panel-newvision-nv3051d.c drm/panel: nv3051d: Add Support for Anbernic 351V 2023-10-05 17:49:20 +02:00
panel-newvision-nv3052c.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-novatek-nt35510.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-novatek-nt35560.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-novatek-nt35950.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-novatek-nt36523.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-novatek-nt36672a.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-novatek-nt39016.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-olimex-lcd-olinuxino.c drm: Switch i2c drivers back to use .probe() 2023-05-30 16:55:16 -07:00
panel-orisetech-ota5601a.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-orisetech-otm8009a.c drm/panel: otm8009a: Don't double check prepared/enabled 2023-09-13 08:36:18 -07:00
panel-osd-osd101t2587-53ts.c
panel-panasonic-vvx10f034n00.c
panel-raspberrypi-touchscreen.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-raydium-rm692e5.c drm/panel: Add driver for BOE RM692E5 AMOLED panel 2023-10-02 09:09:22 +02:00
panel-raydium-rm67191.c
panel-raydium-rm68200.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-ronbo-rb070d30.c drm/panel: Do not include <linux/fb.h> 2023-01-13 13:19:13 +01:00
panel-samsung-atna33xc20.c drm/panel-samsung-atna33xc20: Extend autosuspend delay 2022-11-29 14:25:19 -08:00
panel-samsung-db7430.c drm/panel: db7430: remove unused variables 2023-07-24 19:55:53 +02:00
panel-samsung-ld9040.c drm/panel: ld9040: Register a backlight device 2023-07-14 10:12:06 +02:00
panel-samsung-s6d7aa0.c Linux 6.5-rc7 2023-08-24 07:26:06 +10:00
panel-samsung-s6d16d0.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-samsung-s6d27a1.c
panel-samsung-s6e3ha2.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-samsung-s6e8aa0.c drm: panel: Enable prepare_prev_first flag for samsung-s6e panels 2023-01-26 15:11:23 +09:00
panel-samsung-s6e63j0x03.c drm: panel: Enable prepare_prev_first flag for samsung-s6e panels 2023-01-26 15:11:23 +09:00
panel-samsung-s6e63m0-dsi.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-samsung-s6e63m0-spi.c
panel-samsung-s6e63m0.c drm/panel: s6e63m0: Don't store+check prepared/enabled 2023-09-13 08:36:18 -07:00
panel-samsung-s6e63m0.h
panel-samsung-s6e88a0-ams452ef01.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-samsung-sofef00.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-seiko-43wvf1g.c drm/panel: Convert to platform remove callback returning void 2023-06-08 09:04:11 -07:00
panel-sharp-lq101r1sx01.c
panel-sharp-ls037v7dw01.c drm/panel: Convert to platform remove callback returning void 2023-06-08 09:04:11 -07:00
panel-sharp-ls043t1le01.c drm/panel: sharp-ls043t1le01: drop dummy functions and data fields 2023-05-11 10:45:51 +02:00
panel-sharp-ls060t1sx01.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-simple.c Merge drm/drm-next into drm-misc-next 2023-10-11 09:50:59 +02:00
panel-sitronix-st7701.c drm: Explicitly include correct DT includes 2023-07-21 09:12:43 +02:00
panel-sitronix-st7703.c drm/panel: st7703: Add Powkiddy RGB30 Panel Support 2023-10-16 22:23:21 +02:00
panel-sitronix-st7789v.c drm/panel: sitronix-st7789v: add jasonic jt240mhqs-hwt-ek-e3 support 2023-08-04 15:27:07 +02:00
panel-sony-acx565akm.c
panel-sony-td4353-jdi.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-sony-tulip-truly-nt35521.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-startek-kd070fhfid015.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-tdo-tl070wsh30.c
panel-tpo-td028ttec1.c
panel-tpo-td043mtea1.c
panel-tpo-tpg110.c drm/panel/panel-tpo-tpg110: fix a possible null pointer dereference 2023-10-10 10:34:08 +02:00
panel-truly-nt35597.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-visionox-r66451.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-visionox-rm69299.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-visionox-vtdr6130.c drm/panel: Don't store+check prepared/enabled for simple cases 2023-09-13 08:36:18 -07:00
panel-widechips-ws2401.c drm/panel: ws2401: Silent no spi_device_id warning 2022-10-03 21:50:53 +02:00
panel-xinpeng-xpp055c272.c drm/panel-xinpeng-xpp055c272: Drop custom DSI write macro 2023-01-11 18:50:57 +01:00