Thread (13 messages) 13 messages, 4 authors, 2023-01-30

Re: [PATCH v8 4/5] dt-bindings: input: pwm-beeper: add volume

flat view

From: Krzysztof Kozlowski <hidden>
Date: 2023-01-26 12:36:32
Also in: linux-input, lkml

On 26/01/2023 10:18, Manuel Traut wrote:
Adds an array of supported volume levels and a default volume level.

Signed-off-by: Manuel Traut <redacted>
This is the second patch. Bindings must be introduced before you start
using them.
quoted hunk ↗ jump to hunk
---
 .../devicetree/bindings/input/pwm-beeper.yaml | 20 +++++++++++++++++++
 1 file changed, 20 insertions(+)
diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.yaml b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
index 351df83d5cbe..f1f9283ca855 100644
--- a/Documentation/devicetree/bindings/input/pwm-beeper.yaml
+++ b/Documentation/devicetree/bindings/input/pwm-beeper.yaml
@@ -26,6 +26,24 @@ properties:
   beeper-hz:
     description: bell frequency in Hz
 
+  volume-levels:
use -bp suffix:
https://github.com/devicetree-org/dt-schema/blob/main/dtschema/schemas/property-units.yaml#L44

which will mean the unit is 1/100 of %, not 1/10. Then you can also drop
the $ref.

quoted hunk ↗ jump to hunk
+    description: >
+      Array of PWM duty cycle values that correspond to
+      linear volume levels. These need to be in the range of
+      0 to 500, while 0 means 0% duty cycle (mute) and 500
+      means 50% duty cycle (max volume).
+      Please note that the actual volume of most beepers is
+      highly non-linear, which means that low volume levels
+      are probably somewhere in the range of 1 to 30 (0.1-3%
+      duty cycle).
+    $ref: /schemas/types.yaml#/definitions/uint32-array
+
+  default-volume-level:
I propose to use just the value, not the index, so the name should
finish with '-bp' and the $ref can be dropped.
quoted hunk ↗ jump to hunk
+    description: >
+      The default volume level (index into the array defined
+      by the "volume-levels" property).
+    $ref: /schemas/types.yaml#/definitions/uint32
+
 required:
   - compatible
   - pwms
@@ -45,4 +63,6 @@ examples:
       compatible = "pwm-beeper";
       pwms = <&pwm0>;
       amp-supply = <&beeper_amp>;
+      volume-levels = <0 8 20 40 500>;
+      default-volume-level = <4>;
     };
Best regards,
Krzysztof
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help