drivers/gpu/drm/panel/panel-edp.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-)
For the MNB601LS1-4 panel, the T9+T10 timing does not meet the
requirements of the specification, so disable is set to 100ms.
Fixes: 9d8e91439fc3 ("drm/panel-edp: Add CSW MNB601LS1-4")
Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com>
---
drivers/gpu/drm/panel/panel-edp.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c
index 9a56e208cbdd..09170470b3ef 100644
--- a/drivers/gpu/drm/panel/panel-edp.c
+++ b/drivers/gpu/drm/panel/panel-edp.c
@@ -1828,6 +1828,13 @@ static const struct panel_delay delay_50_500_e200_d200_po2e335 = {
.powered_on_to_enable = 335,
};
+static const struct panel_delay delay_200_500_e50_d100 = {
+ .hpd_absent = 200,
+ .unprepare = 500,
+ .enable = 50,
+ .disable = 100,
+};
+
#define EDP_PANEL_ENTRY(vend_chr_0, vend_chr_1, vend_chr_2, product_id, _delay, _name) \
{ \
.ident = { \
@@ -1984,7 +1991,7 @@ static const struct edp_panel_entry edp_panels[] = {
EDP_PANEL_ENTRY('C', 'S', 'W', 0x1100, &delay_200_500_e80_d50, "MNB601LS1-1"),
EDP_PANEL_ENTRY('C', 'S', 'W', 0x1103, &delay_200_500_e80_d50, "MNB601LS1-3"),
- EDP_PANEL_ENTRY('C', 'S', 'W', 0x1104, &delay_200_500_e50, "MNB601LS1-4"),
+ EDP_PANEL_ENTRY('C', 'S', 'W', 0x1104, &delay_200_500_e50_d100, "MNB601LS1-4"),
EDP_PANEL_ENTRY('C', 'S', 'W', 0x1448, &delay_200_500_e50, "MNE007QS3-7"),
EDP_PANEL_ENTRY('C', 'S', 'W', 0x1457, &delay_80_500_e80_p2e200, "MNE007QS3-8"),
--
2.34.1
Hi, On Sun, Jul 20, 2025 at 11:16 PM Langyan Ye <yelangyan@huaqin.corp-partner.google.com> wrote: > > For the MNB601LS1-4 panel, the T9+T10 timing does not meet the > requirements of the specification, so disable is set to 100ms. > > Fixes: 9d8e91439fc3 ("drm/panel-edp: Add CSW MNB601LS1-4") > Signed-off-by: Langyan Ye <yelangyan@huaqin.corp-partner.google.com> > --- > drivers/gpu/drm/panel/panel-edp.c | 9 ++++++++- > 1 file changed, 8 insertions(+), 1 deletion(-) > > diff --git a/drivers/gpu/drm/panel/panel-edp.c b/drivers/gpu/drm/panel/panel-edp.c > index 9a56e208cbdd..09170470b3ef 100644 > --- a/drivers/gpu/drm/panel/panel-edp.c > +++ b/drivers/gpu/drm/panel/panel-edp.c > @@ -1828,6 +1828,13 @@ static const struct panel_delay delay_50_500_e200_d200_po2e335 = { > .powered_on_to_enable = 335, > }; > > +static const struct panel_delay delay_200_500_e50_d100 = { > + .hpd_absent = 200, > + .unprepare = 500, > + .enable = 50, > + .disable = 100, > +}; > + Bleh, we really need to find a better way to sort these structures instead of just jamming them onto the end. ...or find some C compiler/preprocessor magic to define them automatically without wasting tons of space. In any case, not new to your patch... > #define EDP_PANEL_ENTRY(vend_chr_0, vend_chr_1, vend_chr_2, product_id, _delay, _name) \ > { \ > .ident = { \ > @@ -1984,7 +1991,7 @@ static const struct edp_panel_entry edp_panels[] = { > > EDP_PANEL_ENTRY('C', 'S', 'W', 0x1100, &delay_200_500_e80_d50, "MNB601LS1-1"), > EDP_PANEL_ENTRY('C', 'S', 'W', 0x1103, &delay_200_500_e80_d50, "MNB601LS1-3"), > - EDP_PANEL_ENTRY('C', 'S', 'W', 0x1104, &delay_200_500_e50, "MNB601LS1-4"), > + EDP_PANEL_ENTRY('C', 'S', 'W', 0x1104, &delay_200_500_e50_d100, "MNB601LS1-4"), Reviewed-by: Douglas Anderson <dianders@chromium.org> ...and pushed to drm-misc-next: [1/1] drm/panel-edp: Add disable to 100ms for MNB601LS1-4 commit: 9b3700b15cb581d748c3d46e7eb30ffced1642e8
© 2016 - 2025 Red Hat, Inc.