Re: [PATCH] drm: add client cap to expose low power modes

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All,

It's useful in Android and other embedded devices to implement Always On Display (ex. showing clock faces with less than 15% OPR on screen).

OPR (On Pixel Ratio) is the percentage of luminance amount over the display area.
It's derived by gray levels of display image pattern and the backlight (or OLED) driving force (or current).
ex: OPR=100% means a full white pattern with maximum backlight (or OLED) brightness, while full black would be OPR=0%.

In userspace, when the client initializes, we can set capability via drmSetClientCap() to ask the display driver to expose the drm modes with DRM_MODE_FLAG_LOW_POWER flag.
Userspace can check DRM_MODE_FLAG_LOW_POWER flag to know which modes can be used to consume the least amount of power during Always On Display. 
Ignoring modes with this flag set during normal operating mode.

Thanks,
Ken

Daniel Vetter <daniel@xxxxxxxx> 於 2020年10月21日 週三 下午4:34寫道:
On Wed, Oct 21, 2020 at 07:40:48AM +0000, Simon Ser wrote:
> On Wednesday, October 21, 2020 8:54 AM, Ken Huang <kenbshuang@xxxxxxxxxx> wrote:
>
> > From: Adrian Salido salidoa@xxxxxxxxxx
> >
> > Some displays may support Low Power modes, however, these modes may
> > require special handling as they would usually require lower OPR
> > content on framebuffers.
>
> I'm not familiar with OPR. Can you explain what it is and what it means
> for user-space?

Also since this is new uapi, I guess best explanation would include the
userspace code that makes sensible use of this.
-Daniel
--
Daniel Vetter
Software Engineer, Intel Corporation
http://blog.ffwll.ch
_______________________________________________
dri-devel mailing list
dri-devel@xxxxxxxxxxxxxxxxxxxxx
https://lists.freedesktop.org/mailman/listinfo/dri-devel

[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux