[PATCH v7 1/2] dt-bindings: backlight: mp3309c: remove two required properties

From: Flavio Suligoi
Date: Thu Nov 16 2023 - 05:53:44 EST


The two properties:

- max-brightness
- default brightness

are not really required, so they can be removed from the "required"
section.
The "max-brightness" is no longer used in the current version
of the driver (it was used only in the first version).
The "default-brightness", if omitted in the DT, is managed by the
device driver, using a default value. This value depends on the dimming
mode used:

- for the "analog mode", via I2C commands, this value is fixed by
hardware (=31)
- while in case of pwm mode the default used is the last value of the
brightness-levels array.

Also the brightness-levels array is not required:

- in "analog mode", via I2C commands, the brightness-level array is
fixed by hardware (0..31).;
- in pwm dimming mode, the driver uses a default array of 0..255 and
the "default-brightness" is the last one, which is "255"

NOTE: there are no compatibility problems with the previous version,
since the device driver has not yet been included in any kernel.
Only this dt-binding yaml file is already included in the current
v6.7.0-rc1 kernel version.
No developer may have used it.

Other changes:

- improve the backlight working mode description, in the "description"
section
- update the example, removing the "max-brightness" and introducing the
"brightess-levels" property

Signed-off-by: Flavio Suligoi <f.suligoi@xxxxxxx>
Acked-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
---

v7:
- add missed patch history
- add missed "Acked-by" added in one of the previous version
v6:
- check and resend for updated kernel 6.7.0-rc1 (nothing changed compared
to the previous versions)
- add this patch to the same patchset of the MP3309C device driver
Note: the patch related to this file was previously a separate patch and
sent in two versions (v1 and v2).
It has now been included in this patchset, starting with the
version v6.
v5...v3:
- non-existing versions (the last was v2, the next is v6)
v2:
- add more explanations in commit message, about the the non-existence of
compatibility issues with the previous versions of the yaml file
v1:
- first version

.../bindings/leds/backlight/mps,mp3309c.yaml | 10 ++++------
1 file changed, 4 insertions(+), 6 deletions(-)

diff --git a/Documentation/devicetree/bindings/leds/backlight/mps,mp3309c.yaml b/Documentation/devicetree/bindings/leds/backlight/mps,mp3309c.yaml
index 4191e33626f5..527a37368ed7 100644
--- a/Documentation/devicetree/bindings/leds/backlight/mps,mp3309c.yaml
+++ b/Documentation/devicetree/bindings/leds/backlight/mps,mp3309c.yaml
@@ -14,8 +14,8 @@ description: |
programmable switching frequency to optimize efficiency.
It supports two different dimming modes:

- - analog mode, via I2C commands (default)
- - PWM controlled mode.
+ - analog mode, via I2C commands, as default mode (32 dimming levels)
+ - PWM controlled mode (optional)

The datasheet is available at:
https://www.monolithicpower.com/en/mp3309c.html
@@ -50,8 +50,6 @@ properties:
required:
- compatible
- reg
- - max-brightness
- - default-brightness

unevaluatedProperties: false

@@ -66,8 +64,8 @@ examples:
compatible = "mps,mp3309c";
reg = <0x17>;
pwms = <&pwm1 0 3333333 0>; /* 300 Hz --> (1/f) * 1*10^9 */
- max-brightness = <100>;
- default-brightness = <80>;
+ brightness-levels = <0 4 8 16 32 64 128 255>;
+ default-brightness = <6>;
mps,overvoltage-protection-microvolt = <24000000>;
};
};
--
2.34.1