On Tue, Jun 23, 2026 at 11:04:22AM +0200, Thomas Zimmermann wrote:
> Hi
> 
> Am 22.06.26 um 18:17 schrieb Thierry Reding:
> > On Mon, Jun 22, 2026 at 03:19:40PM +0200, Thomas Zimmermann wrote:
> > > A DeviceTree panel node can specify the panel's rotation in steps
> > > of 90 degrees. Set the DRM connector orientation from the field.
> > > Do nothing if the field is missing or invalid.
> > > 
> > > Signed-off-by: Thomas Zimmermann <[email protected]>
> > > ---
> > >   drivers/gpu/drm/sysfb/simpledrm.c | 32 +++++++++++++++++++++++++++++--
> > >   1 file changed, 30 insertions(+), 2 deletions(-)
> > > 
> > > diff --git a/drivers/gpu/drm/sysfb/simpledrm.c 
> > > b/drivers/gpu/drm/sysfb/simpledrm.c
> > > index a04f0c852ea4..b585d17ca817 100644
> > > --- a/drivers/gpu/drm/sysfb/simpledrm.c
> > > +++ b/drivers/gpu/drm/sysfb/simpledrm.c
> > > @@ -221,6 +221,33 @@ simplefb_get_panel_height_mm_of(struct drm_device 
> > > *dev, struct device_node *of_p
> > >           return __simplefb_get_panel_size_mm_of(dev, of_panel_node, 
> > > "height-mm");
> > >   }
> > > +static enum drm_panel_orientation
> > > +simplefb_get_panel_orientation_of(struct drm_device *dev, struct 
> > > device_node *of_panel_node)
> > > +{
> > > + int ret;
> > > + u32 rotation;
> > > +
> > > + ret = of_property_read_u32(of_panel_node, "rotation", &rotation);
> > > + if (ret) {
> > > +         drm_dbg(dev, "simplefb: cannot parse panel rotation: error 
> > > %d\n", ret);
> > Why is this debug level? Maybe we don't want an error if the property is
> > absent, but if it really can't be parsed, why not print out a proper
> > error?
> > 
> > > +         return DRM_MODE_PANEL_ORIENTATION_UNKNOWN;
> > > + }
> > > +
> > > + switch (rotation) {
> > > + case 0:
> > > +         return DRM_MODE_PANEL_ORIENTATION_NORMAL;
> > > + case 90:
> > > +         return DRM_MODE_PANEL_ORIENTATION_RIGHT_UP;
> > > + case 180:
> > > +         return DRM_MODE_PANEL_ORIENTATION_BOTTOM_UP;
> > > + case 270:
> > > +         return DRM_MODE_PANEL_ORIENTATION_LEFT_UP;
> > > + default:
> > > +         drm_dbg(dev, "simplefb: cannot parse panel rotation: value 
> > > %u\n", rotation);
> > Same here. Seems like we should be verbose when this contains an invalid
> > value. DT checkers should catch these already, so if the invalid value
> > makes it here, maybe we should sound the alarm.
> 
> Ok. The review bot told me about of_drm_get_panel_orientation(). I intent to
> reimplement this patch on top of that helper.

Makes sense, yeah.

Thierry

Attachment: signature.asc
Description: PGP signature

Reply via email to