mbox series

[v3,0/4] backlight: Expose brightness curve type through sysfs

Message ID 20190709190007.91260-1-mka@chromium.org
Headers show
Series backlight: Expose brightness curve type through sysfs | expand

Message

Matthias Kaehlcke July 9, 2019, 7 p.m. UTC
Backlight brightness curves can have different shapes. The two main
types are linear and non-linear curves. The human eye doesn't
perceive linearly increasing/decreasing brightness as linear (see
also 88ba95bedb79 "backlight: pwm_bl: Compute brightness of LED
linearly to human eye"), hence many backlights use non-linear (often
logarithmic) brightness curves. The type of curve is currently opaque
to userspace, so userspace often relies on more or less reliable
heuristics (like the number of brightness levels) to decide whether
to treat a backlight device as linear or non-linear.

Export the type of the brightness curve via a new sysfs attribute.

Matthias Kaehlcke (4):
  MAINTAINERS: Add entry for stable backlight sysfs ABI documentation
  backlight: Expose brightness curve type through sysfs
  backlight: pwm_bl: Set scale type for CIE 1931 curves
  backlight: pwm_bl: Set scale type for brightness curves specified in
    the DT

 .../ABI/testing/sysfs-class-backlight         | 26 ++++++++++++++
 MAINTAINERS                                   |  2 ++
 drivers/video/backlight/backlight.c           | 19 ++++++++++
 drivers/video/backlight/pwm_bl.c              | 35 ++++++++++++++++++-
 include/linux/backlight.h                     |  8 +++++
 5 files changed, 89 insertions(+), 1 deletion(-)
 create mode 100644 Documentation/ABI/testing/sysfs-class-backlight

Comments

Matthias Kaehlcke July 22, 2019, 11:59 p.m. UTC | #1
On Tue, Jul 09, 2019 at 12:00:03PM -0700, Matthias Kaehlcke wrote:
> Backlight brightness curves can have different shapes. The two main
> types are linear and non-linear curves. The human eye doesn't
> perceive linearly increasing/decreasing brightness as linear (see
> also 88ba95bedb79 "backlight: pwm_bl: Compute brightness of LED
> linearly to human eye"), hence many backlights use non-linear (often
> logarithmic) brightness curves. The type of curve is currently opaque
> to userspace, so userspace often relies on more or less reliable
> heuristics (like the number of brightness levels) to decide whether
> to treat a backlight device as linear or non-linear.
> 
> Export the type of the brightness curve via a new sysfs attribute.
> 
> Matthias Kaehlcke (4):
>   MAINTAINERS: Add entry for stable backlight sysfs ABI documentation
>   backlight: Expose brightness curve type through sysfs
>   backlight: pwm_bl: Set scale type for CIE 1931 curves
>   backlight: pwm_bl: Set scale type for brightness curves specified in
>     the DT
> 
>  .../ABI/testing/sysfs-class-backlight         | 26 ++++++++++++++
>  MAINTAINERS                                   |  2 ++
>  drivers/video/backlight/backlight.c           | 19 ++++++++++
>  drivers/video/backlight/pwm_bl.c              | 35 ++++++++++++++++++-
>  include/linux/backlight.h                     |  8 +++++
>  5 files changed, 89 insertions(+), 1 deletion(-)
>  create mode 100644 Documentation/ABI/testing/sysfs-class-backlight

ping, any comments on v3?

Thanks

Matthias
Lee Jones July 25, 2019, 11:15 a.m. UTC | #2
On Mon, 22 Jul 2019, Matthias Kaehlcke wrote:

> On Tue, Jul 09, 2019 at 12:00:03PM -0700, Matthias Kaehlcke wrote:
> > Backlight brightness curves can have different shapes. The two main
> > types are linear and non-linear curves. The human eye doesn't
> > perceive linearly increasing/decreasing brightness as linear (see
> > also 88ba95bedb79 "backlight: pwm_bl: Compute brightness of LED
> > linearly to human eye"), hence many backlights use non-linear (often
> > logarithmic) brightness curves. The type of curve is currently opaque
> > to userspace, so userspace often relies on more or less reliable
> > heuristics (like the number of brightness levels) to decide whether
> > to treat a backlight device as linear or non-linear.
> > 
> > Export the type of the brightness curve via a new sysfs attribute.
> > 
> > Matthias Kaehlcke (4):
> >   MAINTAINERS: Add entry for stable backlight sysfs ABI documentation
> >   backlight: Expose brightness curve type through sysfs
> >   backlight: pwm_bl: Set scale type for CIE 1931 curves
> >   backlight: pwm_bl: Set scale type for brightness curves specified in
> >     the DT
> > 
> >  .../ABI/testing/sysfs-class-backlight         | 26 ++++++++++++++
> >  MAINTAINERS                                   |  2 ++
> >  drivers/video/backlight/backlight.c           | 19 ++++++++++
> >  drivers/video/backlight/pwm_bl.c              | 35 ++++++++++++++++++-
> >  include/linux/backlight.h                     |  8 +++++
> >  5 files changed, 89 insertions(+), 1 deletion(-)
> >  create mode 100644 Documentation/ABI/testing/sysfs-class-backlight
> 
> ping, any comments on v3?

Looks like PATCH 2/4 still needs seeing to.
Matthias Kaehlcke July 25, 2019, 5:17 p.m. UTC | #3
On Thu, Jul 25, 2019 at 12:15:41PM +0100, Lee Jones wrote:
> On Mon, 22 Jul 2019, Matthias Kaehlcke wrote:
> 
> > On Tue, Jul 09, 2019 at 12:00:03PM -0700, Matthias Kaehlcke wrote:
> > > Backlight brightness curves can have different shapes. The two main
> > > types are linear and non-linear curves. The human eye doesn't
> > > perceive linearly increasing/decreasing brightness as linear (see
> > > also 88ba95bedb79 "backlight: pwm_bl: Compute brightness of LED
> > > linearly to human eye"), hence many backlights use non-linear (often
> > > logarithmic) brightness curves. The type of curve is currently opaque
> > > to userspace, so userspace often relies on more or less reliable
> > > heuristics (like the number of brightness levels) to decide whether
> > > to treat a backlight device as linear or non-linear.
> > > 
> > > Export the type of the brightness curve via a new sysfs attribute.
> > > 
> > > Matthias Kaehlcke (4):
> > >   MAINTAINERS: Add entry for stable backlight sysfs ABI documentation
> > >   backlight: Expose brightness curve type through sysfs
> > >   backlight: pwm_bl: Set scale type for CIE 1931 curves
> > >   backlight: pwm_bl: Set scale type for brightness curves specified in
> > >     the DT
> > > 
> > >  .../ABI/testing/sysfs-class-backlight         | 26 ++++++++++++++
> > >  MAINTAINERS                                   |  2 ++
> > >  drivers/video/backlight/backlight.c           | 19 ++++++++++
> > >  drivers/video/backlight/pwm_bl.c              | 35 ++++++++++++++++++-
> > >  include/linux/backlight.h                     |  8 +++++
> > >  5 files changed, 89 insertions(+), 1 deletion(-)
> > >  create mode 100644 Documentation/ABI/testing/sysfs-class-backlight
> > 
> > ping, any comments on v3?
> 
> Looks like PATCH 2/4 still needs seeing to.

The patch currently doesn't have any comments.

Do you see any specific things that need improvement? If so, could you
comment on the patch?

Thanks

Matthias
Lee Jones Aug. 5, 2019, 10:37 a.m. UTC | #4
On Thu, 25 Jul 2019, Matthias Kaehlcke wrote:

> On Thu, Jul 25, 2019 at 12:15:41PM +0100, Lee Jones wrote:
> > On Mon, 22 Jul 2019, Matthias Kaehlcke wrote:
> > 
> > > On Tue, Jul 09, 2019 at 12:00:03PM -0700, Matthias Kaehlcke wrote:
> > > > Backlight brightness curves can have different shapes. The two main
> > > > types are linear and non-linear curves. The human eye doesn't
> > > > perceive linearly increasing/decreasing brightness as linear (see
> > > > also 88ba95bedb79 "backlight: pwm_bl: Compute brightness of LED
> > > > linearly to human eye"), hence many backlights use non-linear (often
> > > > logarithmic) brightness curves. The type of curve is currently opaque
> > > > to userspace, so userspace often relies on more or less reliable
> > > > heuristics (like the number of brightness levels) to decide whether
> > > > to treat a backlight device as linear or non-linear.
> > > > 
> > > > Export the type of the brightness curve via a new sysfs attribute.
> > > > 
> > > > Matthias Kaehlcke (4):
> > > >   MAINTAINERS: Add entry for stable backlight sysfs ABI documentation
> > > >   backlight: Expose brightness curve type through sysfs
> > > >   backlight: pwm_bl: Set scale type for CIE 1931 curves
> > > >   backlight: pwm_bl: Set scale type for brightness curves specified in
> > > >     the DT
> > > > 
> > > >  .../ABI/testing/sysfs-class-backlight         | 26 ++++++++++++++
> > > >  MAINTAINERS                                   |  2 ++
> > > >  drivers/video/backlight/backlight.c           | 19 ++++++++++
> > > >  drivers/video/backlight/pwm_bl.c              | 35 ++++++++++++++++++-
> > > >  include/linux/backlight.h                     |  8 +++++
> > > >  5 files changed, 89 insertions(+), 1 deletion(-)
> > > >  create mode 100644 Documentation/ABI/testing/sysfs-class-backlight
> > > 
> > > ping, any comments on v3?
> > 
> > Looks like PATCH 2/4 still needs seeing to.
> 
> The patch currently doesn't have any comments.
> 
> Do you see any specific things that need improvement? If so, could you
> comment on the patch?

It needs Daniel T's Ack.