[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAJMQK-iM-ip7edA2mBOhp-8maWKG5+kTceZUM5U6BOLLBq1H4Q@mail.gmail.com>
Date: Mon, 30 May 2022 19:34:27 +0800
From: Hsin-Yi Wang <hsinyi@...omium.org>
To: Hans de Goede <hdegoede@...hat.com>
Cc: dri-devel@...ts.freedesktop.org, David Airlie <airlied@...ux.ie>,
Daniel Vetter <daniel@...ll.ch>, amd-gfx@...ts.freedesktop.org,
intel-gfx@...ts.freedesktop.org,
Rob Clark <robdclark@...omium.org>,
Stephen Boyd <swboyd@...omium.org>,
Douglas Anderson <dianders@...omium.org>,
Chun-Kuang Hu <chunkuang.hu@...nel.org>,
Sean Paul <sean@...rly.run>,
Maarten Lankhorst <maarten.lankhorst@...ux.intel.com>,
Maxime Ripard <mripard@...nel.org>,
Thomas Zimmermann <tzimmermann@...e.de>,
linux-kernel@...r.kernel.org, Rob Herring <robh+dt@...nel.org>,
Matthias Brugger <matthias.bgg@...il.com>,
devicetree@...r.kernel.org, linux-arm-kernel@...ts.infradead.org,
linux-mediatek@...ts.infradead.org,
Simon Ser <contact@...rsion.fr>,
Harry Wentland <harry.wentland@....com>,
Alex Deucher <alexander.deucher@....com>,
Jani Nikula <jani.nikula@...ux.intel.com>,
Emil Velikov <emil.l.velikov@...il.com>
Subject: Re: [PATCH v10 0/4] Separate panel orientation property creating and
value setting
On Mon, May 30, 2022 at 4:53 PM Hans de Goede <hdegoede@...hat.com> wrote:
>
> Hi,
>
> On 5/30/22 10:19, Hsin-Yi Wang wrote:
> > Some drivers, eg. mtk_drm and msm_drm, rely on the panel to set the
> > orientation. Panel calls drm_connector_set_panel_orientation() to create
> > orientation property and sets the value. However, connector properties
> > can't be created after drm_dev_register() is called. The goal is to
> > separate the orientation property creation, so drm drivers can create it
> > earlier before drm_dev_register().
>
> Sorry for jumping in pretty late in the discussion (based on the v10
> I seem to have missed this before).
>
> This sounds to me like the real issue here is that drm_dev_register()
> is getting called too early?
>
Right.
> To me it seems sensible to delay calling drm_dev_register() and
> thus allowing userspace to start detecting available displays +
> features until after the panel has been probed.
>
Most panels set this value very late, in .get_modes callback (since it
is when the connector is known), though the value was known during
panel probe.
I think we can also let drm check if they have remote panel nodes: If
there is a panel and the panel sets the orientation, let the drm read
this value and set the property. Does this workflow sound reasonable?
The corresponding patch to implement this:
https://patchwork.kernel.org/project/linux-mediatek/patch/20220530113033.124072-1-hsinyi@chromium.org/
Thanks
> I see a devicetree patch in this series, so I guess that the panel
> is described in devicetree. Especially in the case of devicetree
> I would expect the kernel to have enough info to do the right
> thing and make sure the panel is probed before calling
> drm_dev_register() ?
>
> Regards,
>
> Hans
>
>
>
>
> >
> > After this series, drm_connector_set_panel_orientation() works like
> > before. It won't affect existing callers of
> > drm_connector_set_panel_orientation(). The only difference is that
> > some drm drivers can call drm_connector_init_panel_orientation_property()
> > earlier.
> >
> > Hsin-Yi Wang (4):
> > gpu: drm: separate panel orientation property creating and value
> > setting
> > drm/mediatek: init panel orientation property
> > drm/msm: init panel orientation property
> > arm64: dts: mt8183: Add panel rotation
> >
> > .../arm64/boot/dts/mediatek/mt8183-kukui.dtsi | 1 +
> > drivers/gpu/drm/drm_connector.c | 58 ++++++++++++++-----
> > drivers/gpu/drm/mediatek/mtk_dsi.c | 7 +++
> > drivers/gpu/drm/msm/dsi/dsi_manager.c | 4 ++
> > include/drm/drm_connector.h | 2 +
> > 5 files changed, 59 insertions(+), 13 deletions(-)
> >
>
Powered by blists - more mailing lists