Message ID | 20250306183314.150253-1-sam.winchenbach@framepointer.org (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | [v5,1/6] dt-bindings: iio: filter: Add lpf/hpf freq margins | expand |
On Thu, Mar 06, 2025 at 01:33:09PM -0500, Sam Winchenbach wrote: > Adds two properties to add a margin when automatically finding the > corner frequencies. > > Signed-off-by: Sam Winchenbach <sam.winchenbach@framepointer.org> > --- > .../bindings/iio/filter/adi,admv8818.yaml | 23 +++++++++++++++++++ > 1 file changed, 23 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > index b77e855bd594..3f9c61547a78 100644 > --- a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > +++ b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > @@ -44,6 +44,27 @@ properties: > '#clock-cells': > const: 0 > > + Unnecessary blank line > + adi,lpf-margin-hz: > + description: > + Sets the minimum distance (in Hz) between the fundamental > + frequency of `rf_in` and the corner frequency of the low-pass, output > + filter when operatred in 'auto' mode. The selected low-pass corner > + frequency will be greater than, or equal to, `rf_in` + `lpf-margin-hz`. If > + not setting is found that satisfies this relationship the filter will be > + put into 'bypass'. > + default: 0 hz are 32-bit, not 64-bit, so I think you need: default: [0, 0] minItems: 2 maxItems: 2 Best regards, Krzysztof
On Fri, Mar 07, 2025 at 09:34:24AM +0100, Krzysztof Kozlowski wrote: > On Thu, Mar 06, 2025 at 01:33:09PM -0500, Sam Winchenbach wrote: > > Adds two properties to add a margin when automatically finding the > > corner frequencies. > > > > Signed-off-by: Sam Winchenbach <sam.winchenbach@framepointer.org> > > --- > > .../bindings/iio/filter/adi,admv8818.yaml | 23 +++++++++++++++++++ > > 1 file changed, 23 insertions(+) > > > > diff --git a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > > index b77e855bd594..3f9c61547a78 100644 > > --- a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > > +++ b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml > > @@ -44,6 +44,27 @@ properties: > > '#clock-cells': > > const: 0 > > > > + > > Unnecessary blank line > Noted for v6. > > + adi,lpf-margin-hz: > > + description: > > + Sets the minimum distance (in Hz) between the fundamental > > + frequency of `rf_in` and the corner frequency of the low-pass, output > > + filter when operatred in 'auto' mode. The selected low-pass corner > > + frequency will be greater than, or equal to, `rf_in` + `lpf-margin-hz`. If > > + not setting is found that satisfies this relationship the filter will be > > + put into 'bypass'. > > + default: 0 > > hz are 32-bit, not 64-bit, so I think you need: > > default: [0, 0] > minItems: 2 > maxItems: 2 > I think I finally understand - "-hz" is a schema type defined as a uint32. Is that correct? I am really surprised that `dt_binding_check` did not complain about it being 64-bits. I will update these to `-mhz` and make them uint32 in v6. Thanks, -Sam > Best regards, > Krzysztof >
On 07/03/2025 14:47, Sam Winchenbach wrote: > On Fri, Mar 07, 2025 at 09:34:24AM +0100, Krzysztof Kozlowski wrote: >> On Thu, Mar 06, 2025 at 01:33:09PM -0500, Sam Winchenbach wrote: >>> Adds two properties to add a margin when automatically finding the >>> corner frequencies. >>> >>> Signed-off-by: Sam Winchenbach <sam.winchenbach@framepointer.org> >>> --- >>> .../bindings/iio/filter/adi,admv8818.yaml | 23 +++++++++++++++++++ >>> 1 file changed, 23 insertions(+) >>> >>> diff --git a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml >>> index b77e855bd594..3f9c61547a78 100644 >>> --- a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml >>> +++ b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml >>> @@ -44,6 +44,27 @@ properties: >>> '#clock-cells': >>> const: 0 >>> >>> + >> >> Unnecessary blank line >> > > Noted for v6. > >>> + adi,lpf-margin-hz: >>> + description: >>> + Sets the minimum distance (in Hz) between the fundamental >>> + frequency of `rf_in` and the corner frequency of the low-pass, output >>> + filter when operatred in 'auto' mode. The selected low-pass corner >>> + frequency will be greater than, or equal to, `rf_in` + `lpf-margin-hz`. If >>> + not setting is found that satisfies this relationship the filter will be >>> + put into 'bypass'. >>> + default: 0 >> >> hz are 32-bit, not 64-bit, so I think you need: >> >> default: [0, 0] >> minItems: 2 >> maxItems: 2 >> > > I think I finally understand - "-hz" is a schema type defined as a uint32. No, it is uint32-array. > Is that correct? I am really surprised that `dt_binding_check` did not complain about it being 64-bits. I will update these to `-mhz` and make them uint32 in v6. so your code worked fine, because it assumed you will pass two 32-bit integers, so two items. That's why I proposed to define the number of items, even though it looks odd, but that's result of 32-bit value. Maybe we need "-hz-64" or "-64-hz" property suffix? Best regards, Krzysztof
diff --git a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml index b77e855bd594..3f9c61547a78 100644 --- a/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml +++ b/Documentation/devicetree/bindings/iio/filter/adi,admv8818.yaml @@ -44,6 +44,27 @@ properties: '#clock-cells': const: 0 + + adi,lpf-margin-hz: + description: + Sets the minimum distance (in Hz) between the fundamental + frequency of `rf_in` and the corner frequency of the low-pass, output + filter when operatred in 'auto' mode. The selected low-pass corner + frequency will be greater than, or equal to, `rf_in` + `lpf-margin-hz`. If + not setting is found that satisfies this relationship the filter will be + put into 'bypass'. + default: 0 + + adi,hpf-margin-hz: + description: + Sets the minimum distance (in Hz) between the fundamental + frequency of `rf_in` and the corner frequency of the high-pass, input + filter when operatred in 'auto' mode. The selected high-pass corner + frequency will be less than, or equal to, `rf_in` - `hpf-margin-hz`. If + not setting is found that satisfies this relationship the filter will be + put into 'bypass'. + default: 0 + required: - compatible - reg @@ -61,6 +82,8 @@ examples: spi-max-frequency = <10000000>; clocks = <&admv8818_rfin>; clock-names = "rf_in"; + adi,lpf-margin-hz = /bits/ 64 <30000000>; + adi,hpf-margin-hz = /bits/ 64 <30000000>; }; }; ...
Adds two properties to add a margin when automatically finding the corner frequencies. Signed-off-by: Sam Winchenbach <sam.winchenbach@framepointer.org> --- .../bindings/iio/filter/adi,admv8818.yaml | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+)