dt-bindings: drm/panel-simple-edp: Introduce generic eDP panels
authorDouglas Anderson <dianders@chromium.org>
Tue, 14 Sep 2021 20:21:48 +0000 (13:21 -0700)
committerDouglas Anderson <dianders@chromium.org>
Mon, 20 Sep 2021 16:13:35 +0000 (09:13 -0700)
commit29145a56687390818e6cdab20add4ecf9ae05f57
tree5697bd1ee53ef41fccc8121f2fdffabc453326d7
parentfba5265fca72436c13c4eae95ae1115b8b875b3b
dt-bindings: drm/panel-simple-edp: Introduce generic eDP panels

eDP panels generally contain almost everything needed to control them
in their EDID. This comes from their DP heritage were a computer needs
to be able to properly control pretty much any DP display that's
plugged into it.

The one big issue with eDP panels and the reason that we need a panel
driver for them is that the power sequencing can be different per
panel.

While it is true that eDP panel sequencing can be arbitrarily complex,
in practice it turns out that many eDP panels are compatible with just
some slightly different delays. See the contents of the bindings file
introduced in this patch for some details.

The fact that eDP panels are 99% probable and that the power
sequencing (especially power up) can be compatible between many panels
means that there's a constant desire to plug multiple different panels
into the same board. This could be for second sourcing purposes or to
support multiple SKUs (maybe a 11" and a 13", for instance).

As discussed [1], it should be OK to support this by adding two
properties to the device tree to specify the delays needed for
powering up the panel the first time. We'll create a new "edp-panel"
bindings file and define the two delays that might need to be
specified. NOTE: in the vast majority of the cases (HPD is hooked up
and isn't glitchy or is debounced) even these delays aren't needed.

[1] https://lore.kernel.org/r/CAD=FV=VZYOMPwQZzWdhJGh5cjJWw_EcM-wQVEivZ-bdGXjPrEQ@mail.gmail.com

Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Rob Herring <robh@kernel.org>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20210914132020.v5.1.I1116e79d34035338a45c1fc7cdd14a097909c8e0@changeid
Documentation/devicetree/bindings/display/panel/panel-edp.yaml [new file with mode: 0644]