Message ID | 20240621-add-tyhx-hx9023s-sensor-driver-v6-2-65196a9020f1@gmail.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | iio: proximity: Add TYHX HX9023S sensor driver | expand |
On 21/06/2024 09:40, Yasin Lee wrote: > A capacitive proximity sensor > > Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> > --- > .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ > 1 file changed, 115 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml > new file mode 100644 > index 000000000000..beca70ce7609 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml > @@ -0,0 +1,115 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: TYHX HX9023S capacitive proximity sensor > + > +maintainers: > + - Yasin Lee <yasin.lee.x@gmail.com> > + > +description: | > + TYHX HX9023S proximity sensor. Datasheet can be found here: > + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf > + > +allOf: > + - $ref: /schemas/iio/iio.yaml# Which part of iio.yaml binding do you use here? I cannot find anything, so this looks wrong. > + > +properties: > + compatible: > + const: tyhx,hx9023s > + > + reg: > + maxItems: 1 > + > + interrupts: > + description: > + Generated by device to announce preceding read request has finished > + and data is available or that a close/far proximity event has happened. > + maxItems: 1 > + > + vdd-supply: true > + > + "#address-cells": > + const: 1 > + > + "#size-cells": > + const: 0 > + > +patternProperties: > + "^channel@[0-4]$": > + $ref: /schemas/iio/adc/adc.yaml > + type: object > + > + properties: > + reg: > + minimum: 0 > + maximum: 4 > + description: The channel number. > + > + input-channel: Isn't this duplicating single-channel property? Where is this property defined (which common schema)? > + $ref: /schemas/types.yaml#/definitions/uint32 > + minimum: 0 > + maximum: 4 > + description: > + Specify the input pin used in single-ended configuration. > + > + diff-channels: true > + > + oneOf: > + - required: > + - input-channel > + - required: > + - diff-channels > + > + required: > + - reg > + > + additionalProperties: false > + > +required: > + - compatible > + - vdd-supply > + - reg Keep the same order as in properties. > + > +unevaluatedProperties: false > + Best regards, Krzysztof
On 2024/6/21 18:12, Krzysztof Kozlowski wrote: Hi ,Krzysztof Thank you for your reply. I have some questions inline. Best regards, Yasin > On 21/06/2024 09:40, Yasin Lee wrote: >> A capacitive proximity sensor >> >> Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> >> --- >> .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ >> 1 file changed, 115 insertions(+) >> >> diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >> new file mode 100644 >> index 000000000000..beca70ce7609 >> --- /dev/null >> +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >> @@ -0,0 +1,115 @@ >> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >> +%YAML 1.2 >> +--- >> +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# >> +$schema: http://devicetree.org/meta-schemas/core.yaml# >> + >> +title: TYHX HX9023S capacitive proximity sensor >> + >> +maintainers: >> + - Yasin Lee <yasin.lee.x@gmail.com> >> + >> +description: | >> + TYHX HX9023S proximity sensor. Datasheet can be found here: >> + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf >> + >> +allOf: >> + - $ref: /schemas/iio/iio.yaml# > Which part of iio.yaml binding do you use here? I cannot find anything, > so this looks wrong. > I will remove this reference. >> + >> +properties: >> + compatible: >> + const: tyhx,hx9023s >> + >> + reg: >> + maxItems: 1 >> + >> + interrupts: >> + description: >> + Generated by device to announce preceding read request has finished >> + and data is available or that a close/far proximity event has happened. >> + maxItems: 1 >> + >> + vdd-supply: true >> + >> + "#address-cells": >> + const: 1 >> + >> + "#size-cells": >> + const: 0 >> + >> +patternProperties: >> + "^channel@[0-4]$": >> + $ref: /schemas/iio/adc/adc.yaml >> + type: object >> + >> + properties: >> + reg: >> + minimum: 0 >> + maximum: 4 >> + description: The channel number. >> + >> + input-channel: > Isn't this duplicating single-channel property? > > Where is this property defined (which common schema)? > |input-channel| is indeed intended for single-ended configuration, but I couldn't find a definition or reference for |single-channel| anywhere. If possible, should I rename |input-channel| to |single-channel|? >> + $ref: /schemas/types.yaml#/definitions/uint32 >> + minimum: 0 >> + maximum: 4 >> + description: >> + Specify the input pin used in single-ended configuration. >> + >> + diff-channels: true >> + >> + oneOf: >> + - required: >> + - input-channel >> + - required: >> + - diff-channels >> + >> + required: >> + - reg >> + >> + additionalProperties: false >> + >> +required: >> + - compatible >> + - vdd-supply >> + - reg > Keep the same order as in properties. OK, I will correct the order in the next version. >> + >> +unevaluatedProperties: false >> + > > Best regards, > Krzysztof >
On Sat, Jun 22, 2024 at 01:56:42PM +0800, Yasin Lee wrote: > > On 2024/6/21 18:12, Krzysztof Kozlowski wrote: > > Hi ,Krzysztof > Thank you for your reply. I have some questions inline. > > Best regards, > Yasin > > > On 21/06/2024 09:40, Yasin Lee wrote: > > > A capacitive proximity sensor > > > > > > Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> > > > --- > > > .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ > > > 1 file changed, 115 insertions(+) > > > > > > diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml > > > new file mode 100644 > > > index 000000000000..beca70ce7609 > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml > > > @@ -0,0 +1,115 @@ > > > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > > > +%YAML 1.2 > > > +--- > > > +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: TYHX HX9023S capacitive proximity sensor > > > + > > > +maintainers: > > > + - Yasin Lee <yasin.lee.x@gmail.com> > > > + > > > +description: | > > > + TYHX HX9023S proximity sensor. Datasheet can be found here: > > > + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf > > > + > > > +allOf: > > > + - $ref: /schemas/iio/iio.yaml# > > Which part of iio.yaml binding do you use here? I cannot find anything, > > so this looks wrong. > > > > I will remove this reference. > > > > > + > > > +properties: > > > + compatible: > > > + const: tyhx,hx9023s > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + interrupts: > > > + description: > > > + Generated by device to announce preceding read request has finished > > > + and data is available or that a close/far proximity event has happened. > > > + maxItems: 1 > > > + > > > + vdd-supply: true > > > + > > > + "#address-cells": > > > + const: 1 > > > + > > > + "#size-cells": > > > + const: 0 > > > + > > > +patternProperties: > > > + "^channel@[0-4]$": > > > + $ref: /schemas/iio/adc/adc.yaml > > > + type: object > > > + > > > + properties: > > > + reg: > > > + minimum: 0 > > > + maximum: 4 > > > + description: The channel number. > > > + > > > + input-channel: > > Isn't this duplicating single-channel property? > > > > Where is this property defined (which common schema)? > > > |input-channel| is indeed intended for single-ended configuration, but I > couldn't find a definition > > or reference for |single-channel| anywhere. If possible, should I rename > |input-channel| to |single-channel|? Single-channel is new, it should be the next branch of the iio tree and in linux-next.
On 2024/6/22 18:51, Conor Dooley wrote: > On Sat, Jun 22, 2024 at 01:56:42PM +0800, Yasin Lee wrote: >> On 2024/6/21 18:12, Krzysztof Kozlowski wrote: >> >> Hi ,Krzysztof >> Thank you for your reply. I have some questions inline. >> >> Best regards, >> Yasin >> >>> On 21/06/2024 09:40, Yasin Lee wrote: >>>> A capacitive proximity sensor >>>> >>>> Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> >>>> --- >>>> .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ >>>> 1 file changed, 115 insertions(+) >>>> >>>> diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>> new file mode 100644 >>>> index 000000000000..beca70ce7609 >>>> --- /dev/null >>>> +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>> @@ -0,0 +1,115 @@ >>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>> +%YAML 1.2 >>>> +--- >>>> +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# >>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>> + >>>> +title: TYHX HX9023S capacitive proximity sensor >>>> + >>>> +maintainers: >>>> + - Yasin Lee <yasin.lee.x@gmail.com> >>>> + >>>> +description: | >>>> + TYHX HX9023S proximity sensor. Datasheet can be found here: >>>> + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf >>>> + >>>> +allOf: >>>> + - $ref: /schemas/iio/iio.yaml# >>> Which part of iio.yaml binding do you use here? I cannot find anything, >>> so this looks wrong. >>> >> I will remove this reference. >> >> >>>> + >>>> +properties: >>>> + compatible: >>>> + const: tyhx,hx9023s >>>> + >>>> + reg: >>>> + maxItems: 1 >>>> + >>>> + interrupts: >>>> + description: >>>> + Generated by device to announce preceding read request has finished >>>> + and data is available or that a close/far proximity event has happened. >>>> + maxItems: 1 >>>> + >>>> + vdd-supply: true >>>> + >>>> + "#address-cells": >>>> + const: 1 >>>> + >>>> + "#size-cells": >>>> + const: 0 >>>> + >>>> +patternProperties: >>>> + "^channel@[0-4]$": >>>> + $ref: /schemas/iio/adc/adc.yaml >>>> + type: object >>>> + >>>> + properties: >>>> + reg: >>>> + minimum: 0 >>>> + maximum: 4 >>>> + description: The channel number. >>>> + >>>> + input-channel: >>> Isn't this duplicating single-channel property? >>> >>> Where is this property defined (which common schema)? >>> >> |input-channel| is indeed intended for single-ended configuration, but I >> couldn't find a definition >> >> or reference for |single-channel| anywhere. If possible, should I rename >> |input-channel| to |single-channel|? > Single-channel is new, it should be the next branch of the iio tree and > in linux-next. Hi Conor, Thank you for informing me. I plan to temporarily add a prefix to this attribute to distinguish it and update it in the future. Is this the correct approach? - single-channel: + tyhx,single-channel: $ref: /schemas/types.yaml#/definitions/uint32 minimum: 0 maximum: 4 description: Specify the input pin used in single-ended configuration. Best regards, Yasin
On 22/06/2024 14:35, Yasin Lee wrote: > > On 2024/6/22 18:51, Conor Dooley wrote: >> On Sat, Jun 22, 2024 at 01:56:42PM +0800, Yasin Lee wrote: >>> On 2024/6/21 18:12, Krzysztof Kozlowski wrote: >>> >>> Hi ,Krzysztof >>> Thank you for your reply. I have some questions inline. >>> >>> Best regards, >>> Yasin >>> >>>> On 21/06/2024 09:40, Yasin Lee wrote: >>>>> A capacitive proximity sensor >>>>> >>>>> Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> >>>>> --- >>>>> .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ >>>>> 1 file changed, 115 insertions(+) >>>>> >>>>> diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>>> new file mode 100644 >>>>> index 000000000000..beca70ce7609 >>>>> --- /dev/null >>>>> +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>>> @@ -0,0 +1,115 @@ >>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>>> +%YAML 1.2 >>>>> +--- >>>>> +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# >>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>>> + >>>>> +title: TYHX HX9023S capacitive proximity sensor >>>>> + >>>>> +maintainers: >>>>> + - Yasin Lee <yasin.lee.x@gmail.com> >>>>> + >>>>> +description: | >>>>> + TYHX HX9023S proximity sensor. Datasheet can be found here: >>>>> + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf >>>>> + >>>>> +allOf: >>>>> + - $ref: /schemas/iio/iio.yaml# >>>> Which part of iio.yaml binding do you use here? I cannot find anything, >>>> so this looks wrong. >>>> >>> I will remove this reference. >>> >>> >>>>> + >>>>> +properties: >>>>> + compatible: >>>>> + const: tyhx,hx9023s >>>>> + >>>>> + reg: >>>>> + maxItems: 1 >>>>> + >>>>> + interrupts: >>>>> + description: >>>>> + Generated by device to announce preceding read request has finished >>>>> + and data is available or that a close/far proximity event has happened. >>>>> + maxItems: 1 >>>>> + >>>>> + vdd-supply: true >>>>> + >>>>> + "#address-cells": >>>>> + const: 1 >>>>> + >>>>> + "#size-cells": >>>>> + const: 0 >>>>> + >>>>> +patternProperties: >>>>> + "^channel@[0-4]$": >>>>> + $ref: /schemas/iio/adc/adc.yaml >>>>> + type: object >>>>> + >>>>> + properties: >>>>> + reg: >>>>> + minimum: 0 >>>>> + maximum: 4 >>>>> + description: The channel number. >>>>> + >>>>> + input-channel: >>>> Isn't this duplicating single-channel property? >>>> >>>> Where is this property defined (which common schema)? >>>> >>> |input-channel| is indeed intended for single-ended configuration, but I >>> couldn't find a definition >>> >>> or reference for |single-channel| anywhere. If possible, should I rename >>> |input-channel| to |single-channel|? >> Single-channel is new, it should be the next branch of the iio tree and >> in linux-next. > > Hi Conor, > > Thank you for informing me. I plan to temporarily add a prefix to this > attribute to distinguish it and update it in the future. Is this the > correct approach? No, because there is no need. You are supposed to work on maintainer tree (linux-next works usually as well). Best regards, Krzysztof
On 2024/6/23 02:04, Krzysztof Kozlowski wrote: > On 22/06/2024 14:35, Yasin Lee wrote: >> On 2024/6/22 18:51, Conor Dooley wrote: >>> On Sat, Jun 22, 2024 at 01:56:42PM +0800, Yasin Lee wrote: >>>> On 2024/6/21 18:12, Krzysztof Kozlowski wrote: >>>> >>>> Hi ,Krzysztof >>>> Thank you for your reply. I have some questions inline. >>>> >>>> Best regards, >>>> Yasin >>>> >>>>> On 21/06/2024 09:40, Yasin Lee wrote: >>>>>> A capacitive proximity sensor >>>>>> >>>>>> Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> >>>>>> --- >>>>>> .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ >>>>>> 1 file changed, 115 insertions(+) >>>>>> >>>>>> diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>>>> new file mode 100644 >>>>>> index 000000000000..beca70ce7609 >>>>>> --- /dev/null >>>>>> +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml >>>>>> @@ -0,0 +1,115 @@ >>>>>> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) >>>>>> +%YAML 1.2 >>>>>> +--- >>>>>> +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# >>>>>> +$schema: http://devicetree.org/meta-schemas/core.yaml# >>>>>> + >>>>>> +title: TYHX HX9023S capacitive proximity sensor >>>>>> + >>>>>> +maintainers: >>>>>> + - Yasin Lee <yasin.lee.x@gmail.com> >>>>>> + >>>>>> +description: | >>>>>> + TYHX HX9023S proximity sensor. Datasheet can be found here: >>>>>> + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf >>>>>> + >>>>>> +allOf: >>>>>> + - $ref: /schemas/iio/iio.yaml# >>>>> Which part of iio.yaml binding do you use here? I cannot find anything, >>>>> so this looks wrong. >>>>> >>>> I will remove this reference. >>>> >>>> >>>>>> + >>>>>> +properties: >>>>>> + compatible: >>>>>> + const: tyhx,hx9023s >>>>>> + >>>>>> + reg: >>>>>> + maxItems: 1 >>>>>> + >>>>>> + interrupts: >>>>>> + description: >>>>>> + Generated by device to announce preceding read request has finished >>>>>> + and data is available or that a close/far proximity event has happened. >>>>>> + maxItems: 1 >>>>>> + >>>>>> + vdd-supply: true >>>>>> + >>>>>> + "#address-cells": >>>>>> + const: 1 >>>>>> + >>>>>> + "#size-cells": >>>>>> + const: 0 >>>>>> + >>>>>> +patternProperties: >>>>>> + "^channel@[0-4]$": >>>>>> + $ref: /schemas/iio/adc/adc.yaml >>>>>> + type: object >>>>>> + >>>>>> + properties: >>>>>> + reg: >>>>>> + minimum: 0 >>>>>> + maximum: 4 >>>>>> + description: The channel number. >>>>>> + >>>>>> + input-channel: >>>>> Isn't this duplicating single-channel property? >>>>> >>>>> Where is this property defined (which common schema)? >>>>> >>>> |input-channel| is indeed intended for single-ended configuration, but I >>>> couldn't find a definition >>>> >>>> or reference for |single-channel| anywhere. If possible, should I rename >>>> |input-channel| to |single-channel|? >>> Single-channel is new, it should be the next branch of the iio tree and >>> in linux-next. >> Hi Conor, >> >> Thank you for informing me. I plan to temporarily add a prefix to this >> attribute to distinguish it and update it in the future. Is this the >> correct approach? > No, because there is no need. You are supposed to work on maintainer > tree (linux-next works usually as well). > > Best regards, > Krzysztof Hi Krzysztof, Understood, Thank you for the reply, I will reference single-channel directly as I do with diff-channel. Best regards, Yasin
diff --git a/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml new file mode 100644 index 000000000000..beca70ce7609 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/proximity/tyhx,hx9023s.yaml @@ -0,0 +1,115 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/proximity/tyhx,hx9023s.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: TYHX HX9023S capacitive proximity sensor + +maintainers: + - Yasin Lee <yasin.lee.x@gmail.com> + +description: | + TYHX HX9023S proximity sensor. Datasheet can be found here: + http://www.tianyihexin.com/ueditor/php/upload/file/20240614/1718336303992081.pdf + +allOf: + - $ref: /schemas/iio/iio.yaml# + +properties: + compatible: + const: tyhx,hx9023s + + reg: + maxItems: 1 + + interrupts: + description: + Generated by device to announce preceding read request has finished + and data is available or that a close/far proximity event has happened. + maxItems: 1 + + vdd-supply: true + + "#address-cells": + const: 1 + + "#size-cells": + const: 0 + +patternProperties: + "^channel@[0-4]$": + $ref: /schemas/iio/adc/adc.yaml + type: object + + properties: + reg: + minimum: 0 + maximum: 4 + description: The channel number. + + input-channel: + $ref: /schemas/types.yaml#/definitions/uint32 + minimum: 0 + maximum: 4 + description: + Specify the input pin used in single-ended configuration. + + diff-channels: true + + oneOf: + - required: + - input-channel + - required: + - diff-channels + + required: + - reg + + additionalProperties: false + +required: + - compatible + - vdd-supply + - reg + +unevaluatedProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + i2c { + #address-cells = <1>; + #size-cells = <0>; + proximity@2a { + compatible = "tyhx,hx9023s"; + reg = <0x2a>; + interrupt-parent = <&pio>; + interrupts = <16 IRQ_TYPE_EDGE_FALLING>; + vdd-supply = <&pp1800_prox>; + + #address-cells = <1>; + #size-cells = <0>; + + channel@0 { + reg = <0>; + input-channel = <0>; + }; + channel@1 { + reg = <1>; + input-channel = <1>; + }; + channel@2 { + reg = <2>; + input-channel = <2>; + }; + channel@3 { + reg = <3>; + diff-channels = <1 0>; + }; + channel@4 { + reg = <4>; + diff-channels = <2 0>; + }; + }; + };
A capacitive proximity sensor Signed-off-by: Yasin Lee <yasin.lee.x@gmail.com> --- .../bindings/iio/proximity/tyhx,hx9023s.yaml | 115 +++++++++++++++++++++ 1 file changed, 115 insertions(+)