lkml.org 
[lkml]   [2022]   [Jun]   [6]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH v3 5/8] drm/panel: panel-simple: Implement .get_orientation callback
    Date
    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>
    ---
    v2->v3: add comments for notice.
    ---
    drivers/gpu/drm/panel/panel-simple.c | 16 +++++++++++++++-
    1 file changed, 15 insertions(+), 1 deletion(-)

    diff --git a/drivers/gpu/drm/panel/panel-simple.c b/drivers/gpu/drm/panel/panel-simple.c
    index a34f4198a534..82041cdb5478 100644
    --- a/drivers/gpu/drm/panel/panel-simple.c
    +++ b/drivers/gpu/drm/panel/panel-simple.c
    @@ -411,7 +411,12 @@ 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 */
    + /*
    + * drm drivers are expected to call drm_panel_get_orientation() to get
    + * panel's orientation then drm_connector_set_panel_orientation() to
    + * set the property before drm_dev_register(). Otherwise there will be
    + * a WARN_ON if orientation is set after drm is registered.
    + */
    drm_connector_set_panel_orientation(connector, p->orientation);

    return num;
    @@ -434,6 +439,14 @@ 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,
    @@ -441,6 +454,7 @@ static const struct drm_panel_funcs panel_simple_funcs = {
    .enable = panel_simple_enable,
    .get_modes = panel_simple_get_modes,
    .get_timings = panel_simple_get_timings,
    + .get_orientation = panel_simple_get_orientation,
    };

    static struct panel_desc panel_dpi;
    --
    2.36.1.255.ge46751e96f-goog
    \
     
     \ /
      Last update: 2022-06-06 07:08    [W:2.785 / U:0.068 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site