linux/drivers/gpu/drm/panel
Douglas Anderson 31e25395d8 drm/panel: panel-simple: Power the panel when reading the EDID
I don't believe that it ever makes sense to read the EDID when a panel
is not powered and the powering on of the panel is the job of
prepare(). Let's make sure that this happens before we try to read the
EDID. We use the pm_runtime functions directly rather than directly
calling the normal prepare() function because the pm_runtime functions
are definitely refcounted whereas it's less clear if the prepare() one
is.

NOTE: I'm not 100% sure how EDID reading was working for folks in the
past, but I can only assume that it was failing on the initial attempt
and then working only later. This patch, presumably, will fix that. If
some panel out there really can read the EDID without powering up and
it's a big advantage to preserve the old behavior we can add a
per-panel flag. It appears that providing the DDC bus to the panel in
the past was somewhat uncommon in any case.

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Bjorn Andersson <bjorn.andersson@linaro.org>
Reviewed-by: Sean Paul <seanpaul@chromium.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20210423095743.v5.17.Ibd31b8f7c73255d68c5c9f5b611b4bfaa036f727@changeid
2021-05-03 13:21:09 -07:00
..
Kconfig drm/panel: panel-simple: Use runtime pm to avoid excessive unprepare / prepare 2021-04-20 09:05:24 -07:00
Makefile drm/panel: Move OMAP's DSI command mode panel driver 2020-12-15 16:08:25 +02:00
panel-abt-y030xx067a.c drm/panel: Add ABT Y030XX067A 3.0" 320x480 panel 2020-11-17 13:59:56 +00:00
panel-arm-versatile.c
panel-asus-z00t-tm5p5-n35596.c
panel-boe-himax8279d.c
panel-boe-tv101wum-nl6.c
panel-dsi-cm.c drm/panel: panel-dsi-cm: disable TE for now 2021-04-06 16:51:29 +03:00
panel-elida-kd35t133.c drm/panel: kd35t133: allow using non-continuous dsi clock 2021-02-25 10:18:45 +01:00
panel-feixin-k101-im2ba02.c
panel-feiyang-fy07024di26a30d.c
panel-ilitek-ili9322.c
panel-ilitek-ili9881c.c
panel-innolux-p079zca.c
panel-jdi-lt070me05000.c
panel-khadas-ts050.c drm/panel: khadas: Fix error code in khadas_ts050_panel_add() 2020-12-15 09:23:38 +01:00
panel-kingdisplay-kd097d04.c
panel-leadtek-ltk050h3146w.c
panel-leadtek-ltk500hd1829.c
panel-lg-lb035q02.c
panel-lg-lg4573.c
panel-lvds.c drm: use getter/setter functions 2021-02-10 14:10:59 +01:00
panel-mantix-mlaf057we51.c drm/panel: mantix: Support panel from Shenzhen Yashi Changhua Intelligent Technology Co 2020-12-08 11:05:55 +01:00
panel-nec-nl8048hl11.c
panel-novatek-nt35510.c drm/mcde/panel: Inverse misunderstood flag 2021-03-04 14:31:06 +01:00
panel-novatek-nt36672a.c
panel-novatek-nt39016.c
panel-olimex-lcd-olinuxino.c
panel-orisetech-otm8009a.c
panel-osd-osd101t2587-53ts.c
panel-panasonic-vvx10f034n00.c
panel-raspberrypi-touchscreen.c
panel-raydium-rm67191.c
panel-raydium-rm68200.c
panel-ronbo-rb070d30.c
panel-samsung-ld9040.c
panel-samsung-s6d16d0.c drm/mcde/panel: Inverse misunderstood flag 2021-03-04 14:31:06 +01:00
panel-samsung-s6e3ha2.c
panel-samsung-s6e8aa0.c
panel-samsung-s6e63j0x03.c
panel-samsung-s6e63m0-dsi.c drm/mcde/panel: Inverse misunderstood flag 2021-03-04 14:31:06 +01:00
panel-samsung-s6e63m0-spi.c drm/panel: s6e63m0: Support 3WIRE protocol 2020-11-16 00:48:16 +01:00
panel-samsung-s6e63m0.c drm/panel: s6e63m0: Support max-brightness 2020-12-30 11:26:08 +01:00
panel-samsung-s6e63m0.h
panel-samsung-s6e88a0-ams452ef01.c
panel-samsung-sofef00.c drm/panel/samsung-sofef00: Add panel for OnePlus 6/T devices 2020-11-14 20:54:52 +01:00
panel-seiko-43wvf1g.c drm: use getter/setter functions 2021-02-10 14:10:59 +01:00
panel-sharp-lq101r1sx01.c
panel-sharp-ls037v7dw01.c
panel-sharp-ls043t1le01.c
panel-simple.c drm/panel: panel-simple: Power the panel when reading the EDID 2021-05-03 13:21:09 -07:00
panel-sitronix-st7701.c
panel-sitronix-st7703.c drm/panel: st7703: Use dev_err_probe 2020-12-08 11:05:04 +01:00
panel-sitronix-st7789v.c
panel-sony-acx424akp.c drm/mcde/panel: Inverse misunderstood flag 2021-03-04 14:31:06 +01:00
panel-sony-acx565akm.c drm/panel: sony-acx565akm: Fix race condition in probe 2020-11-29 22:38:12 +01:00
panel-tdo-tl070wsh30.c
panel-tpo-td028ttec1.c
panel-tpo-td043mtea1.c drm/panel: Convert sysfs sprintf/snprintf family to sysfs_emit 2021-04-08 20:41:38 -04:00
panel-tpo-tpg110.c
panel-truly-nt35597.c
panel-visionox-rm69299.c
panel-xinpeng-xpp055c272.c