[2/3,v6] input: pwm-beeper: add feature to set volume level

Message ID Y8+9WRP51u+dof8p@mt.com
State New
Headers
Series input: pwm-beeper: add feature to set volume level |

Commit Message

Manuel Traut Jan. 24, 2023, 11:13 a.m. UTC
  This patch adds the documentation for the devicetree bindings to set
the volume levels.

Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>
Acked-by: Rob Herring <robh@kernel.org>
---
 .../devicetree/bindings/input/pwm-beeper.txt          | 11 +++++++++++
 1 file changed, 11 insertions(+)
  

Comments

Krzysztof Kozlowski Jan. 24, 2023, 11:29 a.m. UTC | #1
On 24/01/2023 12:13, Manuel Traut wrote:
> This patch adds the documentation for the devicetree bindings to set
> the volume levels.

Please use scripts/get_maintainers.pl to get a list of necessary people
and lists to CC.  It might happen, that command when run on an older
kernel, gives you outdated entries.  Therefore please be sure you base
your patches on recent Linux kernel.

> 
> Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>

I think it is kontron.de now.

> Acked-by: Rob Herring <robh@kernel.org>

This misses your SoB.

> ---
>  .../devicetree/bindings/input/pwm-beeper.txt          | 11 +++++++++++
>  1 file changed, 11 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.txt b/Documentation/devicetree/bindings/input/pwm-beeper.txt
> index 8fc0e48c20db..93cab5eee9f2 100644
> --- a/Documentation/devicetree/bindings/input/pwm-beeper.txt
> +++ b/Documentation/devicetree/bindings/input/pwm-beeper.txt
> @@ -9,6 +9,15 @@ Required properties:
>  Optional properties:
>  - amp-supply: phandle to a regulator that acts as an amplifier for the beeper
>  - beeper-hz:  bell frequency in Hz
> +- volume-levels: 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).
> +- default-volume-level: the default volume level (index into the
> +      array defined by the "volume-levels" property)

The bindings should be converted to DT schema first and then new
properties added.

Best regards,
Krzysztof
  
Krzysztof Kozlowski Jan. 24, 2023, 11:29 a.m. UTC | #2
On 24/01/2023 12:13, Manuel Traut wrote:
> This patch adds the documentation for the devicetree bindings to set
> the volume levels.
> 
> Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>
> Acked-by: Rob Herring <robh@kernel.org>
> ---

One more:

Use subject prefixes matching the subsystem (which you can get for
example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
your patch is touching).

Best regards,
Krzysztof
  
Manuel Traut Jan. 24, 2023, 4:11 p.m. UTC | #3
Hi Krzysztof,

Am 24.01.2023 um 12:29 hat Krzysztof Kozlowski geschrieben:
> On 24/01/2023 12:13, Manuel Traut wrote:
> > This patch adds the documentation for the devicetree bindings to set
> > the volume levels.
> > 
> > Signed-off-by: Frieder Schrempf <frieder.schrempf@exceet.de>
> > Acked-by: Rob Herring <robh@kernel.org>
> > ---
> 
> One more:
> 
> Use subject prefixes matching the subsystem (which you can get for
> example with `git log --oneline -- DIRECTORY_OR_FILE` on the directory
> your patch is touching).

Thanks for your feedback. I will post a v7 soon that includes your
feedback, the findings from the kernelbot and a fix that allows
unloading and loading of the module.

Best regards
Manuel
  

Patch

diff --git a/Documentation/devicetree/bindings/input/pwm-beeper.txt b/Documentation/devicetree/bindings/input/pwm-beeper.txt
index 8fc0e48c20db..93cab5eee9f2 100644
--- a/Documentation/devicetree/bindings/input/pwm-beeper.txt
+++ b/Documentation/devicetree/bindings/input/pwm-beeper.txt
@@ -9,6 +9,15 @@  Required properties:
 Optional properties:
 - amp-supply: phandle to a regulator that acts as an amplifier for the beeper
 - beeper-hz:  bell frequency in Hz
+- volume-levels: 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).
+- default-volume-level: the default volume level (index into the
+      array defined by the "volume-levels" property)
 
 Example:
 
@@ -21,4 +30,6 @@  beeper {
 	compatible = "pwm-beeper";
 	pwms = <&pwm0>;
 	amp-supply = <&beeper_amp>;
+	volume-levels = <0 8 20 40 500>;
+	default-volume-level = <4>;
 };