Message ID | 20241106023916.440767-2-j2anfernee@gmail.com |
---|---|
State | New |
Headers | show |
Series | iio: adc: add Nuvoton NCT720x ADC driver | expand |
On 06/11/2024 09:39, Eason Yang wrote: > This adds a binding specification for the Nuvoton NCT7201/NCT7202 > family of ADCs. > > Signed-off-by: Eason Yang <j2anfernee@gmail.com> > --- > .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 48 insertions(+) > create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > new file mode 100644 > index 000000000000..3052039af10e > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > @@ -0,0 +1,47 @@ > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Nuvoton nct7202 and similar ADCs > + > +maintainers: > + - Eason Yang <yhyang2@nuvoton.com> > + > +description: | > + Family of ADCs with i2c interface. > + > +properties: > + compatible: > + enum: > + - nuvoton,nct7201 > + - nuvoton,nct7202 > + > + reg: > + maxItems: 1 > + > + read-vin-data-size: Is it generic property or vendor property? I tried to find in the https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings , but it seems this property hasn't been used on other devices. If it is vendor property, then I think it should include a vendor prefix. For examples: https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7780.yaml#L50 https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/fsl%2Cvf610-adc.yaml#L42 https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/st%2Cstmpe-adc.yaml#L22 > + description: number of data bits per read vin > + $ref: /schemas/types.yaml#/definitions/uint32 > + enum: [8, 16] > + > +required: > + - compatible > + - reg > + - read-vin-data-size > + > +additionalProperties: false > + > +examples: > + - | > + i2c { > + #address-cells = <1>; > + #size-cells = <0>; > + > + nct7202@1d { I think the Node name should follow https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation For some examples that were merged before https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7091r5.yaml#L102 https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/maxim%2Cmax1238.yaml#L73 https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/ti%2Cadc081c.yaml#L49 > + compatible = "nuvoton,nct7202"; > + reg = <0x1d>; > + read-vin-data-size = <8>; > + }; > + }; > diff --git a/MAINTAINERS b/MAINTAINERS > index 91d0609db61b..68570c58e7aa 100644 > --- a/MAINTAINERS > +++ b/MAINTAINERS > @@ -2746,6 +2746,7 @@ L: openbmc@lists.ozlabs.org (moderated for non-subscribers) > S: Supported > F: Documentation/devicetree/bindings/*/*/*npcm* > F: Documentation/devicetree/bindings/*/*npcm* > +F: Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > F: Documentation/devicetree/bindings/rtc/nuvoton,nct3018y.yaml > F: arch/arm/boot/dts/nuvoton/nuvoton-npcm* > F: arch/arm/mach-npcm/
Dear Chanh Nguyen, Thank you for your response. Chanh Nguyen <chanh@amperemail.onmicrosoft.com> 於 2024年11月6日 週三 下午12:58寫道: > > > > On 06/11/2024 09:39, Eason Yang wrote: > > This adds a binding specification for the Nuvoton NCT7201/NCT7202 > > family of ADCs. > > > > Signed-off-by: Eason Yang <j2anfernee@gmail.com> > > --- > > .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 48 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > > diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > new file mode 100644 > > index 000000000000..3052039af10e > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > @@ -0,0 +1,47 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Nuvoton nct7202 and similar ADCs > > + > > +maintainers: > > + - Eason Yang <yhyang2@nuvoton.com> > > + > > +description: | > > + Family of ADCs with i2c interface. > > + > > +properties: > > + compatible: > > + enum: > > + - nuvoton,nct7201 > > + - nuvoton,nct7202 > > + > > + reg: > > + maxItems: 1 > > + > > + read-vin-data-size: > > Is it generic property or vendor property? I tried to find in the > https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings > , but it seems this property hasn't been used on other devices. > > If it is vendor property, then I think it should include a vendor > prefix. For examples: > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7780.yaml#L50 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/fsl%2Cvf610-adc.yaml#L42 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/st%2Cstmpe-adc.yaml#L22 I would add a vendor prefix for it. > > > > + description: number of data bits per read vin > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [8, 16] > > + > > +required: > > + - compatible > > + - reg > > + - read-vin-data-size > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + nct7202@1d { > > I think the Node name should follow > https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > > > For some examples that were merged before > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7091r5.yaml#L102 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/maxim%2Cmax1238.yaml#L73 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/ti%2Cadc081c.yaml#L49 > I would change it for the node naming. > > + compatible = "nuvoton,nct7202"; > > + reg = <0x1d>; > > + read-vin-data-size = <8>; > > + }; > > + }; > > diff --git a/MAINTAINERS b/MAINTAINERS > > index 91d0609db61b..68570c58e7aa 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -2746,6 +2746,7 @@ L: openbmc@lists.ozlabs.org (moderated for non-subscribers) > > S: Supported > > F: Documentation/devicetree/bindings/*/*/*npcm* > > F: Documentation/devicetree/bindings/*/*npcm* > > +F: Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > F: Documentation/devicetree/bindings/rtc/nuvoton,nct3018y.yaml > > F: arch/arm/boot/dts/nuvoton/nuvoton-npcm* > > F: arch/arm/mach-npcm/ >
Dear Chanh Nguyen, Thank you for your response. Chanh Nguyen <chanh@amperemail.onmicrosoft.com> 於 2024年11月6日 週三 下午12:58寫道: > > > > On 06/11/2024 09:39, Eason Yang wrote: > > This adds a binding specification for the Nuvoton NCT7201/NCT7202 > > family of ADCs. > > > > Signed-off-by: Eason Yang <j2anfernee@gmail.com> > > --- > > .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 48 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > > diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > new file mode 100644 > > index 000000000000..3052039af10e > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > @@ -0,0 +1,47 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Nuvoton nct7202 and similar ADCs > > + > > +maintainers: > > + - Eason Yang <yhyang2@nuvoton.com> > > + > > +description: | > > + Family of ADCs with i2c interface. > > + > > +properties: > > + compatible: > > + enum: > > + - nuvoton,nct7201 > > + - nuvoton,nct7202 > > + > > + reg: > > + maxItems: 1 > > + > > + read-vin-data-size: > > Is it generic property or vendor property? I tried to find in the > https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings > , but it seems this property hasn't been used on other devices. > > If it is vendor property, then I think it should include a vendor > prefix. For examples: > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7780.yaml#L50 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/fsl%2Cvf610-adc.yaml#L42 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/st%2Cstmpe-adc.yaml#L22 > > I would add a vendor prefix for it. > > + description: number of data bits per read vin > > + $ref: /schemas/types.yaml#/definitions/uint32 > > + enum: [8, 16] > > + > > +required: > > + - compatible > > + - reg > > + - read-vin-data-size > > + > > +additionalProperties: false > > + > > +examples: > > + - | > > + i2c { > > + #address-cells = <1>; > > + #size-cells = <0>; > > + > > + nct7202@1d { > > I think the Node name should follow > https://devicetree-specification.readthedocs.io/en/latest/chapter2-devicetree-basics.html#generic-names-recommendation > > > For some examples that were merged before > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7091r5.yaml#L102 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/maxim%2Cmax1238.yaml#L73 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/ti%2Cadc081c.yaml#L49 > I would change it for the node naming. > > + compatible = "nuvoton,nct7202"; > > + reg = <0x1d>; > > + read-vin-data-size = <8>; > > + }; > > + }; > > diff --git a/MAINTAINERS b/MAINTAINERS > > index 91d0609db61b..68570c58e7aa 100644 > > --- a/MAINTAINERS > > +++ b/MAINTAINERS > > @@ -2746,6 +2746,7 @@ L: openbmc@lists.ozlabs.org (moderated for non-subscribers) > > S: Supported > > F: Documentation/devicetree/bindings/*/*/*npcm* > > F: Documentation/devicetree/bindings/*/*npcm* > > +F: Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > F: Documentation/devicetree/bindings/rtc/nuvoton,nct3018y.yaml > > F: arch/arm/boot/dts/nuvoton/nuvoton-npcm* > > F: arch/arm/mach-npcm/ >
On Wed, Nov 06, 2024 at 11:58:06AM +0700, Chanh Nguyen wrote: > > > On 06/11/2024 09:39, Eason Yang wrote: > > This adds a binding specification for the Nuvoton NCT7201/NCT7202 > > family of ADCs. > > > > Signed-off-by: Eason Yang <j2anfernee@gmail.com> > > --- > > .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ > > MAINTAINERS | 1 + > > 2 files changed, 48 insertions(+) > > create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > > diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > new file mode 100644 > > index 000000000000..3052039af10e > > --- /dev/null > > +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > @@ -0,0 +1,47 @@ > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > +%YAML 1.2 > > +--- > > +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > + > > +title: Nuvoton nct7202 and similar ADCs > > + > > +maintainers: > > + - Eason Yang <yhyang2@nuvoton.com> > > + > > +description: | > > + Family of ADCs with i2c interface. > > + > > +properties: > > + compatible: > > + enum: > > + - nuvoton,nct7201 > > + - nuvoton,nct7202 > > + > > + reg: > > + maxItems: 1 > > + > > + read-vin-data-size: > > Is it generic property or vendor property? I tried to find in the > https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings > , but it seems this property hasn't been used on other devices. > > If it is vendor property, then I think it should include a vendor prefix. > For examples: > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7780.yaml#L50 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/fsl%2Cvf610-adc.yaml#L42 > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/st%2Cstmpe-adc.yaml#L22 An explanation of why it cannot be determined from the compatible would also be good. Two compatibles and two values makes me a little suspicious!
Dear Conor Dooley, Thank you for your response. NCT7201 supports 8 voltage monitor inputs while NCT7202 supports 12 voltage monitor inputs. NCT7201 and NCT7202 provide SMBus to access the internal register, and support SMBus byte write and byte/word read protocols. Conor Dooley <conor@kernel.org> 於 2024年11月7日 週四 上午12:13寫道: > > On Wed, Nov 06, 2024 at 11:58:06AM +0700, Chanh Nguyen wrote: > > > > > > On 06/11/2024 09:39, Eason Yang wrote: > > > This adds a binding specification for the Nuvoton NCT7201/NCT7202 > > > family of ADCs. > > > > > > Signed-off-by: Eason Yang <j2anfernee@gmail.com> > > > --- > > > .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ > > > MAINTAINERS | 1 + > > > 2 files changed, 48 insertions(+) > > > create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > > > > diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > new file mode 100644 > > > index 000000000000..3052039af10e > > > --- /dev/null > > > +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml > > > @@ -0,0 +1,47 @@ > > > +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) > > > +%YAML 1.2 > > > +--- > > > +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# > > > +$schema: http://devicetree.org/meta-schemas/core.yaml# > > > + > > > +title: Nuvoton nct7202 and similar ADCs > > > + > > > +maintainers: > > > + - Eason Yang <yhyang2@nuvoton.com> > > > + > > > +description: | > > > + Family of ADCs with i2c interface. > > > + > > > +properties: > > > + compatible: > > > + enum: > > > + - nuvoton,nct7201 > > > + - nuvoton,nct7202 > > > + > > > + reg: > > > + maxItems: 1 > > > + > > > + read-vin-data-size: > > > > Is it generic property or vendor property? I tried to find in the > > https://github.com/torvalds/linux/tree/master/Documentation/devicetree/bindings > > , but it seems this property hasn't been used on other devices. > > > > If it is vendor property, then I think it should include a vendor prefix. > > For examples: > > > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/adi%2Cad7780.yaml#L50 > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/fsl%2Cvf610-adc.yaml#L42 > > https://github.com/torvalds/linux/blob/master/Documentation/devicetree/bindings/iio/adc/st%2Cstmpe-adc.yaml#L22 > > An explanation of why it cannot be determined from the compatible would > also be good. Two compatibles and two values makes me a little > suspicious!
diff --git a/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml new file mode 100644 index 000000000000..3052039af10e --- /dev/null +++ b/Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml @@ -0,0 +1,47 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nct720x.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Nuvoton nct7202 and similar ADCs + +maintainers: + - Eason Yang <yhyang2@nuvoton.com> + +description: | + Family of ADCs with i2c interface. + +properties: + compatible: + enum: + - nuvoton,nct7201 + - nuvoton,nct7202 + + reg: + maxItems: 1 + + read-vin-data-size: + description: number of data bits per read vin + $ref: /schemas/types.yaml#/definitions/uint32 + enum: [8, 16] + +required: + - compatible + - reg + - read-vin-data-size + +additionalProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + + nct7202@1d { + compatible = "nuvoton,nct7202"; + reg = <0x1d>; + read-vin-data-size = <8>; + }; + }; diff --git a/MAINTAINERS b/MAINTAINERS index 91d0609db61b..68570c58e7aa 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2746,6 +2746,7 @@ L: openbmc@lists.ozlabs.org (moderated for non-subscribers) S: Supported F: Documentation/devicetree/bindings/*/*/*npcm* F: Documentation/devicetree/bindings/*/*npcm* +F: Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml F: Documentation/devicetree/bindings/rtc/nuvoton,nct3018y.yaml F: arch/arm/boot/dts/nuvoton/nuvoton-npcm* F: arch/arm/mach-npcm/
This adds a binding specification for the Nuvoton NCT7201/NCT7202 family of ADCs. Signed-off-by: Eason Yang <j2anfernee@gmail.com> --- .../bindings/iio/adc/nuvoton,nct720x.yaml | 47 +++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 48 insertions(+) create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nct720x.yaml