diff mbox series

[2/3] ASoC: dt-bindings: sama7g5-pdmc: add microchip,startup-delay-us binding

Message ID 20230214161435.1088246-3-claudiu.beznea@microchip.com (mailing list archive)
State Superseded
Headers show
Series ASoC: mchp-pdmc: fix poc noises when starting capture | expand

Commit Message

Claudiu Beznea Feb. 14, 2023, 4:14 p.m. UTC
Add microchip,startup-delay-us binding to let PDMC users to specify
startup delay.

Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
---
 .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
 1 file changed, 6 insertions(+)

Comments

Krzysztof Kozlowski Feb. 16, 2023, 10:04 a.m. UTC | #1
On 14/02/2023 17:14, Claudiu Beznea wrote:
> Add microchip,startup-delay-us binding to let PDMC users to specify
> startup delay.
> 
> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
> ---
>  .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
>  1 file changed, 6 insertions(+)
> 
> diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
> index c4cf1e5ab84b..9b40268537cb 100644
> --- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
> +++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
> @@ -67,6 +67,12 @@ properties:
>      maxItems: 4
>      uniqueItems: true
>  
> +  microchip,startup-delay-us:
> +    description: |
> +      Specifies the delay in microseconds that needs to be applied after
> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
> +      not being ready.

Is this some hardware delay? Or OS? If OS, why Linux specific delay is
put into DT?

Best regards,
Krzysztof
Claudiu Beznea Feb. 16, 2023, 10:15 a.m. UTC | #2
On 16.02.2023 12:04, Krzysztof Kozlowski wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On 14/02/2023 17:14, Claudiu Beznea wrote:
>> Add microchip,startup-delay-us binding to let PDMC users to specify
>> startup delay.
>>
>> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
>> ---
>>  .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
>>  1 file changed, 6 insertions(+)
>>
>> diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>> index c4cf1e5ab84b..9b40268537cb 100644
>> --- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>> +++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>> @@ -67,6 +67,12 @@ properties:
>>      maxItems: 4
>>      uniqueItems: true
>>
>> +  microchip,startup-delay-us:
>> +    description: |
>> +      Specifies the delay in microseconds that needs to be applied after
>> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
>> +      not being ready.
> 
> Is this some hardware delay? Or OS? If OS, why Linux specific delay is
> put into DT?

It's the delay used in software workaround that IP needs to filter noises.
The IP is not fully featured to do this kind of filtering on its own thus
this software workaround. This delay may depend on used microphones thus
for different kind of setups (PDMC + different microphones) I introduced
this in DT.

> 
> Best regards,
> Krzysztof
>
Krzysztof Kozlowski Feb. 16, 2023, 10:18 a.m. UTC | #3
On 16/02/2023 11:15, Claudiu.Beznea@microchip.com wrote:
> On 16.02.2023 12:04, Krzysztof Kozlowski wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> On 14/02/2023 17:14, Claudiu Beznea wrote:
>>> Add microchip,startup-delay-us binding to let PDMC users to specify
>>> startup delay.
>>>
>>> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
>>> ---
>>>  .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
>>>  1 file changed, 6 insertions(+)
>>>
>>> diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>> index c4cf1e5ab84b..9b40268537cb 100644
>>> --- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>> +++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>> @@ -67,6 +67,12 @@ properties:
>>>      maxItems: 4
>>>      uniqueItems: true
>>>
>>> +  microchip,startup-delay-us:
>>> +    description: |
>>> +      Specifies the delay in microseconds that needs to be applied after
>>> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
>>> +      not being ready.
>>
>> Is this some hardware delay? Or OS? If OS, why Linux specific delay is
>> put into DT?
> 
> It's the delay used in software workaround that IP needs to filter noises.

Then this sounds like OS? Linux related properties usually do not belong
to DT.

> The IP is not fully featured to do this kind of filtering on its own thus
> this software workaround. This delay may depend on used microphones thus
> for different kind of setups (PDMC + different microphones) I introduced
> this in DT.

I understand your driver needs delay and I am not questioning this. I am
questioning why this is suitable for DT?


Best regards,
Krzysztof
Claudiu Beznea Feb. 16, 2023, 10:41 a.m. UTC | #4
On 16.02.2023 12:18, Krzysztof Kozlowski wrote:
> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
> 
> On 16/02/2023 11:15, Claudiu.Beznea@microchip.com wrote:
>> On 16.02.2023 12:04, Krzysztof Kozlowski wrote:
>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>
>>> On 14/02/2023 17:14, Claudiu Beznea wrote:
>>>> Add microchip,startup-delay-us binding to let PDMC users to specify
>>>> startup delay.
>>>>
>>>> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
>>>> ---
>>>>  .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
>>>>  1 file changed, 6 insertions(+)
>>>>
>>>> diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>> index c4cf1e5ab84b..9b40268537cb 100644
>>>> --- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>> +++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>> @@ -67,6 +67,12 @@ properties:
>>>>      maxItems: 4
>>>>      uniqueItems: true
>>>>
>>>> +  microchip,startup-delay-us:
>>>> +    description: |
>>>> +      Specifies the delay in microseconds that needs to be applied after
>>>> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
>>>> +      not being ready.
>>>
>>> Is this some hardware delay? Or OS? If OS, why Linux specific delay is
>>> put into DT?
>>
>> It's the delay used in software workaround that IP needs to filter noises.
> 
> Then this sounds like OS? Linux related properties usually do not belong
> to DT.
> 
>> The IP is not fully featured to do this kind of filtering on its own thus
>> this software workaround. This delay may depend on used microphones thus
>> for different kind of setups (PDMC + different microphones) I introduced
>> this in DT.
> 
> I understand your driver needs delay and I am not questioning this. I am
> questioning why this is suitable for DT?

Because that delay may depend on the microphones that are used with PDMC.
Different boards may come with different microphones, thus the default
delay may not fit to fully filter the noise. Due to this I chose to add it
in DT.

> 
> 
> Best regards,
> Krzysztof
>
Krzysztof Kozlowski Feb. 16, 2023, 10:43 a.m. UTC | #5
On 16/02/2023 11:41, Claudiu.Beznea@microchip.com wrote:
> On 16.02.2023 12:18, Krzysztof Kozlowski wrote:
>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>
>> On 16/02/2023 11:15, Claudiu.Beznea@microchip.com wrote:
>>> On 16.02.2023 12:04, Krzysztof Kozlowski wrote:
>>>> EXTERNAL EMAIL: Do not click links or open attachments unless you know the content is safe
>>>>
>>>> On 14/02/2023 17:14, Claudiu Beznea wrote:
>>>>> Add microchip,startup-delay-us binding to let PDMC users to specify
>>>>> startup delay.
>>>>>
>>>>> Signed-off-by: Claudiu Beznea <claudiu.beznea@microchip.com>
>>>>> ---
>>>>>  .../devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml   | 6 ++++++
>>>>>  1 file changed, 6 insertions(+)
>>>>>
>>>>> diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>>> index c4cf1e5ab84b..9b40268537cb 100644
>>>>> --- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>>> +++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
>>>>> @@ -67,6 +67,12 @@ properties:
>>>>>      maxItems: 4
>>>>>      uniqueItems: true
>>>>>
>>>>> +  microchip,startup-delay-us:
>>>>> +    description: |
>>>>> +      Specifies the delay in microseconds that needs to be applied after
>>>>> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
>>>>> +      not being ready.
>>>>
>>>> Is this some hardware delay? Or OS? If OS, why Linux specific delay is
>>>> put into DT?
>>>
>>> It's the delay used in software workaround that IP needs to filter noises.
>>
>> Then this sounds like OS? Linux related properties usually do not belong
>> to DT.
>>
>>> The IP is not fully featured to do this kind of filtering on its own thus
>>> this software workaround. This delay may depend on used microphones thus
>>> for different kind of setups (PDMC + different microphones) I introduced
>>> this in DT.
>>
>> I understand your driver needs delay and I am not questioning this. I am
>> questioning why this is suitable for DT?
> 
> Because that delay may depend on the microphones that are used with PDMC.
> Different boards may come with different microphones, thus the default
> delay may not fit to fully filter the noise. Due to this I chose to add it
> in DT.

Ah, ok, that's good explanation. Thank you.


Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>

Best regards,
Krzysztof
Mark Brown Feb. 16, 2023, 2:46 p.m. UTC | #6
On Thu, Feb 16, 2023 at 11:18:16AM +0100, Krzysztof Kozlowski wrote:
> On 16/02/2023 11:15, Claudiu.Beznea@microchip.com wrote:

> >>> +  microchip,startup-delay-us:
> >>> +    description: |
> >>> +      Specifies the delay in microseconds that needs to be applied after
> >>> +      enabling the PDMC microphones to avoid unwanted noise due to microphones
> >>> +      not being ready.

> >> Is this some hardware delay? Or OS? If OS, why Linux specific delay is
> >> put into DT?

> > It's the delay used in software workaround that IP needs to filter noises.

> Then this sounds like OS? Linux related properties usually do not belong
> to DT.

This is a hardware property, it's the time needed for the input
to settle.
diff mbox series

Patch

diff --git a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
index c4cf1e5ab84b..9b40268537cb 100644
--- a/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
+++ b/Documentation/devicetree/bindings/sound/microchip,sama7g5-pdmc.yaml
@@ -67,6 +67,12 @@  properties:
     maxItems: 4
     uniqueItems: true
 
+  microchip,startup-delay-us:
+    description: |
+      Specifies the delay in microseconds that needs to be applied after
+      enabling the PDMC microphones to avoid unwanted noise due to microphones
+      not being ready.
+
 required:
   - compatible
   - reg