diff mbox series

[v6,2/3] dt-bindings: iio: proximity: Add TYHX HX9023S

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

Commit Message

Yasin Lee June 21, 2024, 7:40 a.m. UTC
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(+)

Comments

Krzysztof Kozlowski June 21, 2024, 10:12 a.m. UTC | #1
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
Yasin Lee June 22, 2024, 5:56 a.m. UTC | #2
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
>
Conor Dooley June 22, 2024, 10:51 a.m. UTC | #3
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.
Yasin Lee June 22, 2024, 12:35 p.m. UTC | #4
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
Krzysztof Kozlowski June 22, 2024, 6:04 p.m. UTC | #5
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
Yasin Lee June 23, 2024, 12:50 a.m. UTC | #6
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 mbox series

Patch

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>;
+        };
+      };
+    };