drm/panel: panel-simple: Implement .get_orientation callback
authorHsin-Yi Wang <hsinyi@chromium.org>
Thu, 9 Jun 2022 07:27:19 +0000 (15:27 +0800)
committerDouglas Anderson <dianders@chromium.org>
Tue, 21 Jun 2022 15:48:55 +0000 (08:48 -0700)
To return the orientation property to drm/kms driver.

Signed-off-by: Hsin-Yi Wang <hsinyi@chromium.org>
Reviewed-by: Hans de Goede <hdegoede@redhat.com>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Sam Ravnborg <sam@ravnborg.org>
Reviewed-by: Stephen Boyd <swboyd@chromium.org>
[dianders: fixed space vs. tab indentation and double blank line]
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Link: https://patchwork.freedesktop.org/patch/msgid/20220609072722.3488207-6-hsinyi@chromium.org
drivers/gpu/drm/panel/panel-simple.c

index e24e463..a1c12bd 100644 (file)
@@ -412,7 +412,10 @@ static int panel_simple_get_modes(struct drm_panel *panel,
        /* add hard-coded panel modes */
        num += panel_simple_get_non_edid_modes(p, connector);
 
-       /* set up connector's "panel orientation" property */
+       /*
+        * TODO: Remove once all drm drivers call
+        * drm_connector_set_orientation_from_panel()
+        */
        drm_connector_set_panel_orientation(connector, p->orientation);
 
        return num;
@@ -435,12 +438,20 @@ static int panel_simple_get_timings(struct drm_panel *panel,
        return p->desc->num_timings;
 }
 
+static enum drm_panel_orientation panel_simple_get_orientation(struct drm_panel *panel)
+{
+       struct panel_simple *p = to_panel_simple(panel);
+
+       return p->orientation;
+}
+
 static const struct drm_panel_funcs panel_simple_funcs = {
        .disable = panel_simple_disable,
        .unprepare = panel_simple_unprepare,
        .prepare = panel_simple_prepare,
        .enable = panel_simple_enable,
        .get_modes = panel_simple_get_modes,
+       .get_orientation = panel_simple_get_orientation,
        .get_timings = panel_simple_get_timings,
 };