dt-bindings:iio:adc: Another set of yaml conversions.
Subsystems (12)
Jonathan Cameron
maintainercover dt-bindings:iio:adc: Another set of yaml conversions.
From: Jonathan Cameron <[email protected]>
It is somewhat easier to do these all at once as then the yaml syntax knowledge builds up and Rob once said he preferred to review them in groups. Hence here are 20 binding conversions to enjoy.
There are 2 other bindings currently awaiting v2 review and it may take a while to convert over the remaining IIO ADC ones as they are mostly the complex cases. There are also quite a few drivers that have undocumented bindings. I plan to do a sweep for those once yaml conversions are finished.
For maintainers, I've mostly gone with the original author of the txt file. If anyone wants to claim responsibility for any or reject it then that is great. I'll act as backup maintainer for all of these by default anyway.
There are a few places I think we could look to tighten the binding definitions if we wish. Hopefully this will be a good layer to build on.
Thanks,
Jonathan
Jonathan Cameron (20):
dt-bindings:iio:adc:fsl,vf610-adc conversion to yaml. dt-bindings:iio:adc:ti,twl4030-madc yaml conversion dt-bindings:iio:adc:st,stmpe-adc yaml conversion dt-bindings:iio:adc: aspeed,ast2400 yaml conversion dt-bindings:iio:adc:marvell,berlin2-adc yaml conversion dt-bindings:iio:adc:sprd,sc2720-adc yaml conversion. dt-bindings:iio:adc:nuvoton,nau7802 yaml conversion dt-bindings:iio:adc:nuvoton,npcm750-adc yaml conversion dt-bindings:iio:adc:nxp,lpc1850-adc yaml conversion dt-bindings:iio:adc:lpc3220-adc yaml conversion dt-bindings:iio:adc:motorola,cpcap-adc yaml conversion dt-bindings:iio:adc:dlg,da9150-gpadc yaml conversion dt-bindings:iio:adc:cosmic,10001-adc yaml conversion dt-bindings:iio:adc:adi,ad7949 yaml conversion dt-bindings:iio:adc:ad7768-1 yaml conversion dt-bindings:iio:adc:ti,ads1015 yaml conversion dt-bindings:iio:adc:holt,hi8435 yaml conversion dt-bindings:iio:adc:amlogic,meson-saradc yaml conversion dt-bindings:iio:adc:fsl,imx7d-adc yaml conversion dt-bindings:iio:adc:fsl,imx25-gcq yaml conversion
.../devicetree/bindings/iio/adc/ad7949.txt | 16 -- .../bindings/iio/adc/adi,ad7768-1.txt | 41 ----- .../bindings/iio/adc/adi,ad7768-1.yaml | 89 +++++++++++ .../bindings/iio/adc/adi,ad7949.yaml | 57 +++++++ .../devicetree/bindings/iio/adc/ads1015.txt | 73 --------- .../bindings/iio/adc/amlogic,meson-saradc.txt | 48 ------ .../iio/adc/amlogic,meson-saradc.yaml | 145 ++++++++++++++++++ .../bindings/iio/adc/aspeed,ast2400-adc.yaml | 54 +++++++ .../bindings/iio/adc/aspeed_adc.txt | 22 --- .../bindings/iio/adc/berlin2_adc.txt | 19 --- .../bindings/iio/adc/cc10001_adc.txt | 22 --- .../bindings/iio/adc/cosmic,10001-adc.yaml | 59 +++++++ .../devicetree/bindings/iio/adc/cpcap-adc.txt | 17 -- .../bindings/iio/adc/da9150-gpadc.txt | 16 -- .../bindings/iio/adc/dlg,da9150-gpadc.yaml | 33 ++++ .../bindings/iio/adc/fsl,imx25-gcq.txt | 57 ------- .../bindings/iio/adc/fsl,imx25-gcq.yaml | 129 ++++++++++++++++ .../bindings/iio/adc/fsl,imx7d-adc.yaml | 62 ++++++++ .../bindings/iio/adc/fsl,vf610-adc.yaml | 81 ++++++++++ .../devicetree/bindings/iio/adc/hi8435.txt | 21 --- .../bindings/iio/adc/holt,hi8435.yaml | 49 ++++++ .../devicetree/bindings/iio/adc/imx7d-adc.txt | 24 --- .../bindings/iio/adc/lpc1850-adc.txt | 20 --- .../bindings/iio/adc/lpc32xx-adc.txt | 21 --- .../bindings/iio/adc/marvell,berlin2-adc.yaml | 50 ++++++ .../bindings/iio/adc/motorola,cpcap-adc.yaml | 51 ++++++ .../bindings/iio/adc/nuvoton,nau7802.yaml | 50 ++++++ .../bindings/iio/adc/nuvoton,npcm-adc.txt | 26 ---- .../bindings/iio/adc/nuvoton,npcm750-adc.yaml | 64 ++++++++ .../bindings/iio/adc/nuvoton-nau7802.txt | 18 --- .../bindings/iio/adc/nxp,lpc1850-adc.yaml | 61 ++++++++ .../bindings/iio/adc/nxp,lpc3220-adc.yaml | 50 ++++++ .../bindings/iio/adc/sprd,sc2720-adc.yaml | 72 +++++++++ .../bindings/iio/adc/sprd,sc27xx-adc.txt | 40 ----- .../bindings/iio/adc/st,stmpe-adc.yaml | 45 ++++++ .../devicetree/bindings/iio/adc/stmpe-adc.txt | 21 --- .../bindings/iio/adc/ti,ads1015.yaml | 113 ++++++++++++++ .../bindings/iio/adc/ti,twl4030-madc.yaml | 48 ++++++ .../bindings/iio/adc/twl4030-madc.txt | 24 --- .../devicetree/bindings/iio/adc/vf610-adc.txt | 36 ----- 40 files changed, 1362 insertions(+), 582 deletions(-) delete mode 100644 Documentation/devicetree/bindings/iio/adc/ad7949.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/adi,ad7949.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/ads1015.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/aspeed,ast2400-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/aspeed_adc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/berlin2_adc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/cc10001_adc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/cosmic,10001-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/cpcap-adc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/da9150-gpadc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/dlg,da9150-gpadc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/fsl,imx25-gcq.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/fsl,imx25-gcq.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/fsl,imx7d-adc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/fsl,vf610-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/hi8435.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/holt,hi8435.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/imx7d-adc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/lpc1850-adc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/lpc32xx-adc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/marvell,berlin2-adc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/motorola,cpcap-adc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,nau7802.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,npcm-adc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton,npcm750-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/nuvoton-nau7802.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/nxp,lpc1850-adc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/nxp,lpc3220-adc.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/sprd,sc27xx-adc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/st,stmpe-adc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/stmpe-adc.txt create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,ads1015.yaml create mode 100644 Documentation/devicetree/bindings/iio/adc/ti,twl4030-madc.yaml delete mode 100644 Documentation/devicetree/bindings/iio/adc/twl4030-madc.txt delete mode 100644 Documentation/devicetree/bindings/iio/adc/vf610-adc.txt
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 1/20 dt-bindings:iio:adc:fsl,vf610-adc conversion to yaml.
From: Jonathan Cameron <[email protected]>
A simple conversion of this freescale ADC binding from txt to yaml. For maintainer I went with Fugang Duan as the original author of the binding. Would be great to have confirmation of this.
--- .../bindings/iio/adc/fsl,vf610-adc.yaml | 81 +++++++++++++++++++ .../devicetree/bindings/iio/adc/vf610-adc.txt | 36 --------- 2 files changed, 81 insertions(+), 36 deletions(-)
Documentation/devicetree/bindings/iio/adc/fsl,vf610-adc.yaml new file +81 -0
@@ -0,0 +1,81 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/fsl,vf610-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ADC found on Freescale vf610 and similar SoCs + +maintainers: + - Fugang Duan <[email protected]> + +description: + ADCs found on vf610/i.MX6slx and upward SoCs from Freescale. + +properties: + compatible: + const: fsl,vf610-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + description: ADC source clock (ipg clock) + maxItems: 1 + + clock-names: + const: adc + + vref-supply: + description: ADC reference voltage supply. + + fsl,adck-max-frequency: + $ref: /schemas/types.yaml#/definitions/uint32-array + minItems: 3 + maxItems: 3 + description: | + Maximum frequencies from datasheet operating requirements. + Three values necessary to cover the 3 conversion modes. + * Frequency in normal mode (ADLPC=0, ADHSC=0) + * Frequency in high-speed mode (ADLPC=0, ADHSC=1) + * Frequency in low-power mode (ADLPC=1, ADHSC=0) + + min-sample-time: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Minimum sampling time in nanoseconds. This value has + to be chosen according to the conversion mode and the connected analog + source resistance (R_as) and capacitance (C_as). Refer the datasheet's + operating requirements. A safe default across a wide range of R_as and + C_as as well as conversion modes is 1000ns. + + "#io-channel-cells": + const: 1 + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - vref-supply + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/vf610-clock.h> + adc@4003b000 { + compatible = "fsl,vf610-adc"; + reg = <0x4003b000 0x1000>; + interrupts = <0 53 0x04>; + clocks = <&clks VF610_CLK_ADC0>; + clock-names = "adc"; + fsl,adck-max-frequency = <30000000>, <40000000>, <20000000>; + vref-supply = <®_vcc_3v3_mcu>; + min-sample-time = <10000>; + }; +...
Documentation/devicetree/bindings/iio/adc/vf610-adc.txt deleted +0 -36
@@ -1,36 +0,0 @@ -Freescale vf610 Analog to Digital Converter bindings - -The devicetree bindings are for the new ADC driver written for -vf610/i.MX6slx and upward SoCs from Freescale. - -Required properties: -- compatible: Should contain "fsl,vf610-adc" -- reg: Offset and length of the register set for the device -- interrupts: Should contain the interrupt for the device -- clocks: The clock is needed by the ADC controller, ADC clock source is ipg clock. -- clock-names: Must contain "adc", matching entry in the clocks property. -- vref-supply: The regulator supply ADC reference voltage. - -Recommended properties: -- fsl,adck-max-frequency: Maximum frequencies according to datasheets operating - requirements. Three values are required, depending on conversion mode: - - Frequency in normal mode (ADLPC=0, ADHSC=0) - - Frequency in high-speed mode (ADLPC=0, ADHSC=1) - - Frequency in low-power mode (ADLPC=1, ADHSC=0) -- min-sample-time: Minimum sampling time in nanoseconds. This value has - to be chosen according to the conversion mode and the connected analog - source resistance (R_as) and capacitance (C_as). Refer the datasheet's - operating requirements. A safe default across a wide range of R_as and - C_as as well as conversion modes is 1000ns. - -Example: -adc0: adc@4003b000 { - compatible = "fsl,vf610-adc"; - reg = <0x4003b000 0x1000>; - interrupts = <0 53 0x04>; - clocks = <&clks VF610_CLK_ADC0>; - clock-names = "adc"; - fsl,adck-max-frequency = <30000000>, <40000000>, - <20000000>; - vref-supply = <®_vcc_3v3_mcu>; -};
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 2/20 dt-bindings:iio:adc:ti,twl4030-madc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Conversion from txt to yaml as part of a general move of IIO bindings to the new format.
--- .../bindings/iio/adc/ti,twl4030-madc.yaml | 48 +++++++++++++++++++ .../bindings/iio/adc/twl4030-madc.txt | 24 ---------- 2 files changed, 48 insertions(+), 24 deletions(-)
Documentation/devicetree/bindings/iio/adc/ti,twl4030-madc.yaml new file +48 -0
@@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/ti,twl4030-madc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MADC subsystem in the TWL4030 power module + +maintainers: + - Sebastian Reichel <[email protected]> + +description: + The MADC subsystem in the TWL4030 consists of a 10-bit ADC + combined with a 16-input analog multiplexer. + +properties: + compatible: + const: ti,twl4030-madc + + interrupts: + maxItems: 1 + + ti,system-uses-second-madc-irq: + type: boolean + description: + Set if the second madc irq register should be used, which is intended + to be used by Co-Processors (e.g. a modem). + + "#io-channel-cells": + const: 1 + +required: + - compatible + - interrupts + - "#io-channel-cells" + +additionalProperties: false + +examples: + - | + twl { + madc { + compatible = "ti,twl4030-madc"; + interrupts = <3>; + #io-channel-cells = <1>; + }; + }; +...
Documentation/devicetree/bindings/iio/adc/twl4030-madc.txt deleted +0 -24
@@ -1,24 +0,0 @@ -* TWL4030 Monitoring Analog to Digital Converter (MADC) - -The MADC subsystem in the TWL4030 consists of a 10-bit ADC -combined with a 16-input analog multiplexer. - -Required properties: - - compatible: Should contain "ti,twl4030-madc". - - interrupts: IRQ line for the MADC submodule. - - #io-channel-cells: Should be set to <1>. - -Optional properties: - - ti,system-uses-second-madc-irq: boolean, set if the second madc irq register - should be used, which is intended to be used - by Co-Processors (e.g. a modem). - -Example: - -&twl { - madc { - compatible = "ti,twl4030-madc"; - interrupts = <3>; - #io-channel-cells = <1>; - }; -};
Signature · 1 line
2.28.0
Re: [PATCH 02/20] dt-bindings:iio:adc:ti,twl4030-madc yaml conversion
Hi,
Quoted 8 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
Conversion from txt to yaml as part of a general move of IIO bindings to the new format.
Signed-off-by Jonathan Cameron <[email protected]>Cc Sebastian Reichel <[email protected]>---
-- Sebastian
Quoted 91 lines
.../bindings/iio/adc/ti,twl4030-madc.yaml | 48 +++++++++++++++++++ .../bindings/iio/adc/twl4030-madc.txt | 24 ---------- 2 files changed, 48 insertions(+), 24 deletions(-)Documentation/devicetree/bindings/iio/adc/ti,twl4030-madc.yaml new file +48
-0@@ -0,0 +1,48 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/ti,twl4030-madc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: MADC subsystem in the TWL4030 power module + +maintainers: + - Sebastian Reichel <[email protected]> + +description: + The MADC subsystem in the TWL4030 consists of a 10-bit ADC + combined with a 16-input analog multiplexer. + +properties: + compatible: + const: ti,twl4030-madc + + interrupts: + maxItems: 1 + + ti,system-uses-second-madc-irq: + type: boolean + description: + Set if the second madc irq register should be used, which is intended + to be used by Co-Processors (e.g. a modem). + + "#io-channel-cells": + const: 1 + +required: + - compatible + - interrupts + - "#io-channel-cells" + +additionalProperties: false + +examples: + - | + twl { + madc { + compatible = "ti,twl4030-madc"; + interrupts = <3>; + #io-channel-cells = <1>; + }; + }; +...Documentation/devicetree/bindings/iio/adc/twl4030-madc.txt deleted +0
-24@@ -1,24 +0,0 @@ -* TWL4030 Monitoring Analog to Digital Converter (MADC) - -The MADC subsystem in the TWL4030 consists of a 10-bit ADC -combined with a 16-input analog multiplexer. - -Required properties: - - compatible: Should contain "ti,twl4030-madc". - - interrupts: IRQ line for the MADC submodule. - - #io-channel-cells: Should be set to <1>. - -Optional properties: - - ti,system-uses-second-madc-irq: boolean, set if the second madc irq register - should be used, which is intended to be used - by Co-Processors (e.g. a modem). - -Example: - -&twl { - madc { - compatible = "ti,twl4030-madc"; - interrupts = <3>; - #io-channel-cells = <1>; - }; -};Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 3/20 dt-bindings:iio:adc:st,stmpe-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Conversion from freeform text to yaml.
One oddity in this binding is that, for historical reasons it requires the node name to be stmpe_adc. I've put that in the decription field but I'm not sure if there is a better way to specify this?
--- .../bindings/iio/adc/st,stmpe-adc.yaml | 45 +++++++++++++++++++ .../devicetree/bindings/iio/adc/stmpe-adc.txt | 21 --------- 2 files changed, 45 insertions(+), 21 deletions(-)
Documentation/devicetree/bindings/iio/adc/st,stmpe-adc.yaml new file +45 -0
@@ -0,0 +1,45 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/st,stmpe-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ADC on an STMPE multifunction device. + +maintainers: + - Stefan Agner <[email protected]> + +description: + This ADC forms part of an ST microelectronics STMPE multifunction device . + The ADC is shared with the STMPE touchscreen. As a result some ADC related + settings are specified in the parent node. + The node name myst be stmpe_adc and should be a child node of the stmpe node + to which it belongs. + +properties: + compatible: + const: st,stmpe-adc + + st,norequest-mask: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Bitmask specifying which ADC channels should _not_ be + requestable due to different usage (e.g. touch). + + "#io-channel-cells": + const: 1 + +required: + - compatible + +additionalProperties: false + +examples: + - | + stmpe { + stmpe_adc { + compatible = "st,stmpe-adc"; + st,norequest-mask = <0x0F>; /* dont use ADC CH3-0 */ + }; + }; +...
Documentation/devicetree/bindings/iio/adc/stmpe-adc.txt deleted +0 -21
@@ -1,21 +0,0 @@ -STMPE ADC driver ----------------- - -Required properties: - - compatible: "st,stmpe-adc" - -Optional properties: -Note that the ADC is shared with the STMPE touchscreen. ADC related settings -have to be done in the mfd. -- st,norequest-mask: bitmask specifying which ADC channels should _not_ be - requestable due to different usage (e.g. touch) - -Node name must be stmpe_adc and should be child node of stmpe node to -which it belongs. - -Example: - - stmpe_adc { - compatible = "st,stmpe-adc"; - st,norequest-mask = <0x0F>; /* dont use ADC CH3-0 */ - };
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 4/20 dt-bindings:iio:adc: aspeed,ast2400 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Simple txt to yaml conversion. Part of a general move to convert all the IIO bindings over to yaml.
--- .../bindings/iio/adc/aspeed,ast2400-adc.yaml | 54 +++++++++++++++++++ .../bindings/iio/adc/aspeed_adc.txt | 22 -------- 2 files changed, 54 insertions(+), 22 deletions(-)
Documentation/devicetree/bindings/iio/adc/aspeed,ast2400-adc.yaml new file +54 -0
@@ -0,0 +1,54 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/aspeed,ast2400-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: ADC that forms part of an ASPEED server management processor. + +maintainers: + - Rick Altherr <[email protected]> + +description: + This device is a 10-bit converter for 16 voltage channels. All inputs are + single ended. + +properties: + compatible: + enum: + - aspeed,ast2400-adc + - aspeed,ast2500-adc + + reg: + maxItems: 1 + + clocks: + description: + Input clock used to derive the sample clock. Expected to be the + SoC's APB clock. + + resets: true + + "#io-channel-cells": + const: 1 + +required: + - compatible + - reg + - clocks + - resets + - "#io-channel-cells" + +additionalProperties: false + +examples: + - | + #include <dt-bindings/clock/aspeed-clock.h> + adc@1e6e9000 { + compatible = "aspeed,ast2400-adc"; + reg = <0x1e6e9000 0xb0>; + clocks = <&syscon ASPEED_CLK_APB>; + resets = <&syscon ASPEED_RESET_ADC>; + #io-channel-cells = <1>; + }; +...
Documentation/devicetree/bindings/iio/adc/aspeed_adc.txt deleted +0 -22
@@ -1,22 +0,0 @@ -Aspeed ADC - -This device is a 10-bit converter for 16 voltage channels. All inputs are -single ended. - -Required properties: -- compatible: Should be "aspeed,ast2400-adc" or "aspeed,ast2500-adc" -- reg: memory window mapping address and length -- clocks: Input clock used to derive the sample clock. Expected to be the - SoC's APB clock. -- resets: Reset controller phandle -- #io-channel-cells: Must be set to <1> to indicate channels are selected - by index. - -Example: - adc@1e6e9000 { - compatible = "aspeed,ast2400-adc"; - reg = <0x1e6e9000 0xb0>; - clocks = <&syscon ASPEED_CLK_APB>; - resets = <&syscon ASPEED_RESET_ADC>; - #io-channel-cells = <1>; - };
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 5/20 dt-bindings:iio:adc:marvell,berlin2-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Part of a general move of IIO bindings over to yaml.
--- .../bindings/iio/adc/berlin2_adc.txt | 19 ------- .../bindings/iio/adc/marvell,berlin2-adc.yaml | 50 +++++++++++++++++++ 2 files changed, 50 insertions(+), 19 deletions(-)
Documentation/devicetree/bindings/iio/adc/berlin2_adc.txt deleted +0 -19
@@ -1,19 +0,0 @@ -* Berlin Analog to Digital Converter (ADC) - -The Berlin ADC has 8 channels, with one connected to a temperature sensor. -It is part of the system controller register set. The ADC node should be a -sub-node of the system controller node. - -Required properties: -- compatible: must be "marvell,berlin2-adc" -- interrupts: the interrupts for the ADC and the temperature sensor -- interrupt-names: should be "adc" and "tsen" - -Example: - -adc: adc { - compatible = "marvell,berlin2-adc"; - interrupt-parent = <&sic>; - interrupts = <12>, <14>; - interrupt-names = "adc", "tsen"; -};
Documentation/devicetree/bindings/iio/adc/marvell,berlin2-adc.yaml new file +50 -0
50 lines not on this page · raw message
Signature · 1 line
2.28.0
Rob Herring
maintainerRe: [PATCH 05/20] dt-bindings:iio:adc:marvell,berlin2-adc yaml conversion
Quoted 11 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
Part of a general move of IIO bindings over to yaml.
Signed-off-by Jonathan Cameron <[email protected]>Cc Antoine Tenart <[email protected]>--- .../bindings/iio/adc/berlin2_adc.txt | 19 ------- .../bindings/iio/adc/marvell,berlin2-adc.yaml | 50 +++++++++++++++++++ 2 files changed, 50 insertions(+), 19 deletions(-)
My bot found errors running 'make dt_binding_check' on your patch:
./Documentation/devicetree/bindings/iio/adc/marvell,berlin2-adc.yaml: $id: relative path/filename doesn't match actual path or filename
expected: http://devicetree.org/schemas/iio/adc/marvell,berlin2-adc.yaml#
See https://patchwork.ozlabs.org/patch/1358086
If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure dt-schema is up to date:
pip3 install git+https://github.com/devicetree-org/dt-schema.git@master --upgrade
Please check and re-submit.
Jonathan Cameron
maintainerPATCH 6/20 dt-bindings:iio:adc:sprd,sc2720-adc yaml conversion.
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
I changed the name to reflect a specific part in line with normal naming conventions. If there is a particularly strong reason to keep the wild cards let me know.
Otherwise this was a fairly simple conversion as part of converting all the IIO bindings to yaml.
--- .../bindings/iio/adc/sprd,sc2720-adc.yaml | 72 +++++++++++++++++++ .../bindings/iio/adc/sprd,sc27xx-adc.txt | 40 ----------- 2 files changed, 72 insertions(+), 40 deletions(-)
Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml new file +72 -0
@@ -0,0 +1,72 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/sprd,sc2720-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Spreadtrum SC27XX series PMICs ADC binding + +maintainers: + - Baolin Wang <[email protected]> + +description: + Supports the ADC found on these PMICs. + +properties: + compatible: + enum: + - sprd,sc2720-adc + - sprd,sc2721-adc + - sprd,sc2723-adc + - sprd,sc2730-adc + - sprd,sc2731-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + "#io-channel-cells": + const: 1 + + hwlocks: + maxItems: 1 + + nvmem-cells: + maxItems: 2 + + nvmem-cell-names: + items: + - const: big_scale_calib + - const: small_scale_calib + +required: + - compatible + - reg + - interrupts + - "#io-channel-cells" + - hwlocks + - nvmem-cells + - nvmem-cell-names + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + pmic { + #address-cells = <1>; + #size-cells = <0>; + adc@480 { + compatible = "sprd,sc2731-adc"; + reg = <0x480>; + interrupt-parent = <&sc2731_pmic>; + interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; + #io-channel-cells = <1>; + hwlocks = <&hwlock 4>; + nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; + nvmem-cell-names = "big_scale_calib", "small_scale_calib"; + }; + }; +...
Documentation/devicetree/bindings/iio/adc/sprd,sc27xx-adc.txt deleted +0 -40
@@ -1,40 +0,0 @@ -Spreadtrum SC27XX series PMICs ADC binding - -Required properties: -- compatible: Should be one of the following. - "sprd,sc2720-adc" - "sprd,sc2721-adc" - "sprd,sc2723-adc" - "sprd,sc2730-adc" - "sprd,sc2731-adc" -- reg: The address offset of ADC controller. -- interrupt-parent: The interrupt controller. -- interrupts: The interrupt number for the ADC device. -- #io-channel-cells: Number of cells in an IIO specifier. -- hwlocks: Reference to a phandle of a hwlock provider node. -- nvmem-cells: A phandle to the calibration cells provided by eFuse device. -- nvmem-cell-names: Should be "big_scale_calib", "small_scale_calib". - -Example: - - sc2731_pmic: pmic@0 { - compatible = "sprd,sc2731"; - reg = <0>; - spi-max-frequency = <26000000>; - interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; - interrupt-controller; - #interrupt-cells = <2>; - #address-cells = <1>; - #size-cells = <0>; - - pmic_adc: adc@480 { - compatible = "sprd,sc2731-adc"; - reg = <0x480>; - interrupt-parent = <&sc2731_pmic>; - interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; - #io-channel-cells = <1>; - hwlocks = <&hwlock 4>; - nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; - nvmem-cell-names = "big_scale_calib", "small_scale_calib"; - }; - };
Signature · 1 line
2.28.0
Orson Zhai
maintainerRe: [PATCH 06/20] dt-bindings:iio:adc:sprd,sc2720-adc yaml conversion.
Hi Jonathan,
Quoted 6 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
I changed the name to reflect a specific part in line with normal naming conventions. If there is a particularly strong reason to keep the wild cards let me know.
Why do we have to change the file name of 27xx ?
Quoted 3 lines
Otherwise this was a fairly simple conversion as part of converting all the IIO bindings to yaml.
Thanks for doing this for us.
-Orson
Quoted 137 lines
Signed-off-by Jonathan Cameron <[email protected]>Cc Baolin Wang <[email protected]>Cc Orson Zhai <[email protected]>Cc Chunyan Zhang <[email protected]>--- .../bindings/iio/adc/sprd,sc2720-adc.yaml | 72 +++++++++++++++++++ .../bindings/iio/adc/sprd,sc27xx-adc.txt | 40 ----------- 2 files changed, 72 insertions(+), 40 deletions(-)Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml new file +72
-0@@ -0,0 +1,72 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/sprd,sc2720-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Spreadtrum SC27XX series PMICs ADC binding + +maintainers: + - Baolin Wang <[email protected]> + +description: + Supports the ADC found on these PMICs. + +properties: + compatible: + enum: + - sprd,sc2720-adc + - sprd,sc2721-adc + - sprd,sc2723-adc + - sprd,sc2730-adc + - sprd,sc2731-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + "#io-channel-cells": + const: 1 + + hwlocks: + maxItems: 1 + + nvmem-cells: + maxItems: 2 + + nvmem-cell-names: + items: + - const: big_scale_calib + - const: small_scale_calib + +required: + - compatible + - reg + - interrupts + - "#io-channel-cells" + - hwlocks + - nvmem-cells + - nvmem-cell-names + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + pmic { + #address-cells = <1>; + #size-cells = <0>; + adc@480 { + compatible = "sprd,sc2731-adc"; + reg = <0x480>; + interrupt-parent = <&sc2731_pmic>; + interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; + #io-channel-cells = <1>; + hwlocks = <&hwlock 4>; + nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; + nvmem-cell-names = "big_scale_calib", "small_scale_calib"; + }; + }; +...Documentation/devicetree/bindings/iio/adc/sprd,sc27xx-adc.txt deleted +0
-41@@ -1,40 +0,0 @@ -Spreadtrum SC27XX series PMICs ADC binding - -Required properties: -- compatible: Should be one of the following. - "sprd,sc2720-adc" - "sprd,sc2721-adc" - "sprd,sc2723-adc" - "sprd,sc2730-adc" - "sprd,sc2731-adc" -- reg: The address offset of ADC controller. -- interrupt-parent: The interrupt controller. -- interrupts: The interrupt number for the ADC device. -- #io-channel-cells: Number of cells in an IIO specifier. -- hwlocks: Reference to a phandle of a hwlock provider node. -- nvmem-cells: A phandle to the calibration cells provided by eFuse device. -- nvmem-cell-names: Should be "big_scale_calib", "small_scale_calib". - -Example: - - sc2731_pmic: pmic@0 { - compatible = "sprd,sc2731"; - reg = <0>; - spi-max-frequency = <26000000>; - interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; - interrupt-controller; - #interrupt-cells = <2>; - #address-cells = <1>; - #size-cells = <0>; - - pmic_adc: adc@480 { - compatible = "sprd,sc2731-adc"; - reg = <0x480>; - interrupt-parent = <&sc2731_pmic>; - interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; - #io-channel-cells = <1>; - hwlocks = <&hwlock 4>; - nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; - nvmem-cell-names = "big_scale_calib", "small_scale_calib"; - }; - }; --2.28.0
Re: [PATCH 06/20] dt-bindings:iio:adc:sprd,sc2720-adc yaml conversion.
Quoted 11 lines · On Tue, 8 Sep 2020 01:46:40 +0800 Orson Zhai <[email protected]> wrote:
Hi Jonathan,
Quoted 6 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
I changed the name to reflect a specific part in line with normal naming conventions. If there is a particularly strong reason to keep the wild cards let me know.
Why do we have to change the file name of 27xx ?
We don't have to, but generally we try to avoid using wild
card naming. It is far too common for companies marketing departments
or similar to decide to group incompatible parts. Basically picking a part number and saying 'and compatible' is much less likely to cause confusion than a wild card!
If you feel strongly about it and can do a check of whether there are any incompatible parts or not covered by that wild card range, then I'm happy to change it back again whilst applying.
Feel free to give a conditional Ack btw!
Jonathan
Quoted 146 lines
Quoted 4 lines
Otherwise this was a fairly simple conversion as part of converting all the IIO bindings to yaml.
Thanks for doing this for us.
-Orson
Quoted 137 lines
Signed-off-by Jonathan Cameron <[email protected]>Cc Baolin Wang <[email protected]>Cc Orson Zhai <[email protected]>Cc Chunyan Zhang <[email protected]>--- .../bindings/iio/adc/sprd,sc2720-adc.yaml | 72 +++++++++++++++++++ .../bindings/iio/adc/sprd,sc27xx-adc.txt | 40 ----------- 2 files changed, 72 insertions(+), 40 deletions(-)Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml new file +72
-0@@ -0,0 +1,72 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/sprd,sc2720-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Spreadtrum SC27XX series PMICs ADC binding + +maintainers: + - Baolin Wang <[email protected]> + +description: + Supports the ADC found on these PMICs. + +properties: + compatible: + enum: + - sprd,sc2720-adc + - sprd,sc2721-adc + - sprd,sc2723-adc + - sprd,sc2730-adc + - sprd,sc2731-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + "#io-channel-cells": + const: 1 + + hwlocks: + maxItems: 1 + + nvmem-cells: + maxItems: 2 + + nvmem-cell-names: + items: + - const: big_scale_calib + - const: small_scale_calib + +required: + - compatible + - reg + - interrupts + - "#io-channel-cells" + - hwlocks + - nvmem-cells + - nvmem-cell-names + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + pmic { + #address-cells = <1>; + #size-cells = <0>; + adc@480 { + compatible = "sprd,sc2731-adc"; + reg = <0x480>; + interrupt-parent = <&sc2731_pmic>; + interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; + #io-channel-cells = <1>; + hwlocks = <&hwlock 4>; + nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; + nvmem-cell-names = "big_scale_calib", "small_scale_calib"; + }; + }; +...Documentation/devicetree/bindings/iio/adc/sprd,sc27xx-adc.txt deleted +0
-41@@ -1,40 +0,0 @@ -Spreadtrum SC27XX series PMICs ADC binding - -Required properties: -- compatible: Should be one of the following. - "sprd,sc2720-adc" - "sprd,sc2721-adc" - "sprd,sc2723-adc" - "sprd,sc2730-adc" - "sprd,sc2731-adc" -- reg: The address offset of ADC controller. -- interrupt-parent: The interrupt controller. -- interrupts: The interrupt number for the ADC device. -- #io-channel-cells: Number of cells in an IIO specifier. -- hwlocks: Reference to a phandle of a hwlock provider node. -- nvmem-cells: A phandle to the calibration cells provided by eFuse device. -- nvmem-cell-names: Should be "big_scale_calib", "small_scale_calib". - -Example: - - sc2731_pmic: pmic@0 { - compatible = "sprd,sc2731"; - reg = <0>; - spi-max-frequency = <26000000>; - interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; - interrupt-controller; - #interrupt-cells = <2>; - #address-cells = <1>; - #size-cells = <0>; - - pmic_adc: adc@480 { - compatible = "sprd,sc2731-adc"; - reg = <0x480>; - interrupt-parent = <&sc2731_pmic>; - interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; - #io-channel-cells = <1>; - hwlocks = <&hwlock 4>; - nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; - nvmem-cell-names = "big_scale_calib", "small_scale_calib"; - }; - }; --2.28.0
Re: [PATCH 06/20] dt-bindings:iio:adc:sprd,sc2720-adc yaml conversion.
Quoted 13 lines · Jonathan Cameron
Quoted 10 lines · On Tue, 8 Sep 2020 01:46:40 +0800 Orson Zhai <[email protected]> wrote:
Hi Jonathan,
Quoted 6 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
I changed the name to reflect a specific part in line with normal naming conventions. If there is a particularly strong reason to keep the wild cards let me know.
Quoted 7 lines
Quoted 1 line
Why do we have to change the file name of 27xx ?
We don't have to, but generally we try to avoid using wild
card naming. It is far too common for companies marketing departments
or similar to decide to group incompatible parts. Basically picking a part number and saying 'and compatible' is much less likely to cause confusion than a wild card!
It makes much sense to me.
Quoted 6 lines
If you feel strongly about it and can do a check of whether there are any incompatible parts or not covered by that wild card range, then I'm happy to change it back again whilst applying.
Feel free to give a conditional Ack btw!
Thanks.
Orson
Quoted 151 lines
Jonathan
Quoted 146 lines
Quoted 4 lines
Otherwise this was a fairly simple conversion as part of converting all the IIO bindings to yaml.
Thanks for doing this for us.
-Orson
Quoted 137 lines
Signed-off-by Jonathan Cameron <[email protected]>Cc Baolin Wang <[email protected]>Cc Orson Zhai <[email protected]>Cc Chunyan Zhang <[email protected]>--- .../bindings/iio/adc/sprd,sc2720-adc.yaml | 72 +++++++++++++++++++ .../bindings/iio/adc/sprd,sc27xx-adc.txt | 40 ----------- 2 files changed, 72 insertions(+), 40 deletions(-)Documentation/devicetree/bindings/iio/adc/sprd,sc2720-adc.yaml new file +72
-0@@ -0,0 +1,72 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/sprd,sc2720-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Spreadtrum SC27XX series PMICs ADC binding + +maintainers: + - Baolin Wang <[email protected]> + +description: + Supports the ADC found on these PMICs. + +properties: + compatible: + enum: + - sprd,sc2720-adc + - sprd,sc2721-adc + - sprd,sc2723-adc + - sprd,sc2730-adc + - sprd,sc2731-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + "#io-channel-cells": + const: 1 + + hwlocks: + maxItems: 1 + + nvmem-cells: + maxItems: 2 + + nvmem-cell-names: + items: + - const: big_scale_calib + - const: small_scale_calib + +required: + - compatible + - reg + - interrupts + - "#io-channel-cells" + - hwlocks + - nvmem-cells + - nvmem-cell-names + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + pmic { + #address-cells = <1>; + #size-cells = <0>; + adc@480 { + compatible = "sprd,sc2731-adc"; + reg = <0x480>; + interrupt-parent = <&sc2731_pmic>; + interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; + #io-channel-cells = <1>; + hwlocks = <&hwlock 4>; + nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; + nvmem-cell-names = "big_scale_calib", "small_scale_calib"; + }; + }; +...Documentation/devicetree/bindings/iio/adc/sprd,sc27xx-adc.txt deleted +0
-41@@ -1,40 +0,0 @@ -Spreadtrum SC27XX series PMICs ADC binding - -Required properties: -- compatible: Should be one of the following. - "sprd,sc2720-adc" - "sprd,sc2721-adc" - "sprd,sc2723-adc" - "sprd,sc2730-adc" - "sprd,sc2731-adc" -- reg: The address offset of ADC controller. -- interrupt-parent: The interrupt controller. -- interrupts: The interrupt number for the ADC device. -- #io-channel-cells: Number of cells in an IIO specifier. -- hwlocks: Reference to a phandle of a hwlock provider node. -- nvmem-cells: A phandle to the calibration cells provided by eFuse device. -- nvmem-cell-names: Should be "big_scale_calib", "small_scale_calib". - -Example: - - sc2731_pmic: pmic@0 { - compatible = "sprd,sc2731"; - reg = <0>; - spi-max-frequency = <26000000>; - interrupts = <GIC_SPI 31 IRQ_TYPE_LEVEL_HIGH>; - interrupt-controller; - #interrupt-cells = <2>; - #address-cells = <1>; - #size-cells = <0>; - - pmic_adc: adc@480 { - compatible = "sprd,sc2731-adc"; - reg = <0x480>; - interrupt-parent = <&sc2731_pmic>; - interrupts = <0 IRQ_TYPE_LEVEL_HIGH>; - #io-channel-cells = <1>; - hwlocks = <&hwlock 4>; - nvmem-cells = <&adc_big_scale>, <&adc_small_scale>; - nvmem-cell-names = "big_scale_calib", "small_scale_calib"; - }; - }; --2.28.0
Jonathan Cameron
maintainerPATCH 7/20 dt-bindings:iio:adc:nuvoton,nau7802 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
A simple conversion from txt file to yaml. I added the #io-channel-cells property as optional to allow the channels of this ADCs to be used to provide services to other drivers, for example if an analog accelerometer is connected.
--- .../bindings/iio/adc/nuvoton,nau7802.yaml | 50 +++++++++++++++++++ .../bindings/iio/adc/nuvoton-nau7802.txt | 18 ------- 2 files changed, 50 insertions(+), 18 deletions(-)
Documentation/devicetree/bindings/iio/adc/nuvoton,nau7802.yaml new file +50 -0
@@ -0,0 +1,50 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/nuvoton,nau7802.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Nuvoton NAU7802 I2c Analog to Digital Converter (ADC) + +maintainers: + - Alexandre Belloni <[email protected]> + - Maxime Ripard <[email protected]> + +properties: + compatible: + const: nuvoton,nau7802 + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + nuvoton,vldo: + $ref: /schemas/types.yaml#/definitions/uint32 + description: + Internal reference voltage in millivolts to be configured. + minimum: 2400 + maximum: 4500 + + "#io-channel-cells": + const: 1 + +required: + - compatible + - reg + +additionalProperties: false + +examples: + - | + i2c { + #address-cells = <1>; + #size-cells = <0>; + nau7802@2a { + compatible = "nuvoton,nau7802"; + reg = <0x2a>; + nuvoton,vldo = <3000>; + }; + }; +...
Documentation/devicetree/bindings/iio/adc/nuvoton-nau7802.txt deleted +0 -18
@@ -1,18 +0,0 @@ -* Nuvoton NAU7802 Analog to Digital Converter (ADC) - -Required properties: - - compatible: Should be "nuvoton,nau7802" - - reg: Should contain the ADC I2C address - -Optional properties: - - nuvoton,vldo: Internal reference voltage in millivolts to be - configured valid values are between 2400 mV and 4500 mV. - - interrupts: IRQ line for the ADC. If not used the driver will use - polling. - -Example: -adc2: nau7802@2a { - compatible = "nuvoton,nau7802"; - reg = <0x2a>; - nuvoton,vldo = <3000>; -};
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 8/20 dt-bindings:iio:adc:nuvoton,npcm750-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Renamed the file to reflect the only compatible.
Added #io-channel-cells to make it easier to support consumers of the ADC channels this device provides.
--- .../bindings/iio/adc/nuvoton,npcm-adc.txt | 26 -------- .../bindings/iio/adc/nuvoton,npcm750-adc.yaml | 64 +++++++++++++++++++ 2 files changed, 64 insertions(+), 26 deletions(-)
Documentation/devicetree/bindings/iio/adc/nuvoton,npcm-adc.txt deleted +0 -26
@@ -1,26 +0,0 @@ -Nuvoton NPCM Analog to Digital Converter (ADC) - -The NPCM ADC is a 10-bit converter for eight channel inputs. - -Required properties: -- compatible: "nuvoton,npcm750-adc" for the NPCM7XX BMC. -- reg: specifies physical base address and size of the registers. -- interrupts: Contain the ADC interrupt with flags for falling edge. -- resets : phandle to the reset control for this device. - -Optional properties: -- clocks: phandle of ADC reference clock, in case the clock is not - added the ADC will use the default ADC sample rate. -- vref-supply: The regulator supply ADC reference voltage, in case the - vref-supply is not added the ADC will use internal voltage - reference. - -Example: - -adc: adc@f000c000 { - compatible = "nuvoton,npcm750-adc"; - reg = <0xf000c000 0x8>; - interrupts = <GIC_SPI 0 IRQ_TYPE_LEVEL_HIGH>; - clocks = <&clk NPCM7XX_CLK_ADC>; - resets = <&rstc NPCM7XX_RESET_IPSRST1 NPCM7XX_RESET_ADC>; -};
Documentation/devicetree/bindings/iio/adc/nuvoton,npcm750-adc.yaml new file +64 -0
64 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 9/20 dt-bindings:iio:adc:nxp,lpc1850-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Most of the description in the original doc is effectively boilerplate and does not bring much value so I have not carried it over into the yaml.
Added #io-channel-cells to simplify use of channels on this ADC by consumer drivers.
--- .../bindings/iio/adc/lpc1850-adc.txt | 20 ------ .../bindings/iio/adc/nxp,lpc1850-adc.yaml | 61 +++++++++++++++++++ 2 files changed, 61 insertions(+), 20 deletions(-)
Documentation/devicetree/bindings/iio/adc/lpc1850-adc.txt deleted +0 -20
@@ -1,20 +0,0 @@ -NXP LPC1850 ADC bindings - -Required properties: -- compatible: Should be "nxp,lpc1850-adc" -- reg: Offset and length of the register set for the ADC device -- interrupts: The interrupt number for the ADC device -- clocks: The root clock of the ADC controller -- vref-supply: The regulator supply ADC reference voltage -- resets: phandle to reset controller and line specifier - -Example: - -adc0: adc@400e3000 { - compatible = "nxp,lpc1850-adc"; - reg = <0x400e3000 0x1000>; - interrupts = <17>; - clocks = <&ccu1 CLK_APB3_ADC0>; - vref-supply = <®_vdda>; - resets = <&rgu 40>; -};
Documentation/devicetree/bindings/iio/adc/nxp,lpc1850-adc.yaml new file +61 -0
61 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 10/20 dt-bindings:iio:adc:lpc3220-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Renamed to remove the wild cards. These go wrong far too often so in general preferred to use the name of a specific part. As this binding only provides one compatible, I went with that.
--- .../bindings/iio/adc/lpc32xx-adc.txt | 21 -------- .../bindings/iio/adc/nxp,lpc3220-adc.yaml | 50 +++++++++++++++++++ 2 files changed, 50 insertions(+), 21 deletions(-)
Documentation/devicetree/bindings/iio/adc/lpc32xx-adc.txt deleted +0 -21
@@ -1,21 +0,0 @@ -* NXP LPC32xx SoC ADC controller - -Required properties: -- compatible: must be "nxp,lpc3220-adc" -- reg: physical base address of the controller and length of memory mapped - region. -- interrupts: The ADC interrupt - -Optional: - - vref-supply: The regulator supply ADC reference voltage, optional - for legacy reason, but highly encouraging to us in new device tree - -Example: - - adc@40048000 { - compatible = "nxp,lpc3220-adc"; - reg = <0x40048000 0x1000>; - interrupt-parent = <&mic>; - interrupts = <39 0>; - vref-supply = <&vcc>; - };
Documentation/devicetree/bindings/iio/adc/nxp,lpc3220-adc.yaml new file +50 -0
50 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 11/20 dt-bindings:iio:adc:motorola,cpcap-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Conversion from txt to yaml.
Slightly expanded example to give a bit more context. Description lifted from the original driver commit.
--- .../devicetree/bindings/iio/adc/cpcap-adc.txt | 17 ------- .../bindings/iio/adc/motorola,cpcap-adc.yaml | 51 +++++++++++++++++++ 2 files changed, 51 insertions(+), 17 deletions(-)
Documentation/devicetree/bindings/iio/adc/cpcap-adc.txt deleted +0 -17
@@ -1,17 +0,0 @@ -Motorola CPCAP PMIC ADC binding - -Required properties: -- compatible: Should be "motorola,cpcap-adc" or "motorola,mapphone-cpcap-adc" -- interrupts: The interrupt number for the ADC device -- interrupt-names: Should be "adcdone" -- #io-channel-cells: Number of cells in an IIO specifier - -Example: - -cpcap_adc: adc { - compatible = "motorola,mapphone-cpcap-adc"; - interrupt-parent = <&cpcap>; - interrupts = <8 IRQ_TYPE_NONE>; - interrupt-names = "adcdone"; - #io-channel-cells = <1>; -};
Documentation/devicetree/bindings/iio/adc/motorola,cpcap-adc.yaml new file +51 -0
51 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 12/20 dt-bindings:iio:adc:dlg,da9150-gpadc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
This is a small part of an MFD so perhaps ultimately it makes more sense to document it with that MFD binding rather than separately.
In the meantime it's a straightforward conversion from txt to yaml.
--- .../bindings/iio/adc/da9150-gpadc.txt | 16 --------- .../bindings/iio/adc/dlg,da9150-gpadc.yaml | 33 +++++++++++++++++++ 2 files changed, 33 insertions(+), 16 deletions(-)
Documentation/devicetree/bindings/iio/adc/da9150-gpadc.txt deleted +0 -16
@@ -1,16 +0,0 @@ -Dialog Semiconductor DA9150 IIO GPADC bindings - -Required properties: -- compatible: "dlg,da9150-gpadc" for DA9150 IIO GPADC -- #io-channel-cells: Should be set to <1> - (See Documentation/devicetree/bindings/iio/iio-bindings.txt for further info) - -For further information on GPADC channels, see device datasheet. - - -Example: - - gpadc: da9150-gpadc { - compatible = "dlg,da9150-gpadc"; - #io-channel-cells = <1>; - };
Documentation/devicetree/bindings/iio/adc/dlg,da9150-gpadc.yaml new file +33 -0
@@ -0,0 +1,33 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/dlg,da9150-gpadc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Dialog Semiconductor DA9150 IIO GPADC + +maintainers: + - Adam Thomson <[email protected]> + +description: + This patch adds support for general purpose ADC within the + DA9150 Charger & Fuel-Gauge IC. + +properties: + compatible: + const: dlg,da9150-gpadc + + "#io-channel-cells": + const: 1 + +required: + - compatible + - "#io-channel-cells" + +examples: + - | + adc { + compatible = "dlg,da9150-gpadc"; + #io-channel-cells = <1>; + }; +...
Signature · 1 line
2.28.0
RE: [PATCH 12/20] dt-bindings:iio:adc:dlg,da9150-gpadc yaml conversion
Quoted 9 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
This is a small part of an MFD so perhaps ultimately it makes more sense to document it with that MFD binding rather than separately.
In the meantime it's a straightforward conversion from txt to yaml.
Signed-off-by Jonathan Cameron <[email protected]>Cc Adam Thomson <[email protected]>
Jonathan Cameron
maintainerPATCH 13/20 dt-bindings:iio:adc:cosmic,10001-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
I don't really know much about this one, hence the binding is a simple conversion of what was in the txt file.
--- .../bindings/iio/adc/cc10001_adc.txt | 22 ------- .../bindings/iio/adc/cosmic,10001-adc.yaml | 59 +++++++++++++++++++ 2 files changed, 59 insertions(+), 22 deletions(-)
Documentation/devicetree/bindings/iio/adc/cc10001_adc.txt deleted +0 -22
@@ -1,22 +0,0 @@ -* Cosmic Circuits - Analog to Digital Converter (CC-10001-ADC) - -Required properties: - - compatible: Should be "cosmic,10001-adc" - - reg: Should contain adc registers location and length. - - clock-names: Should contain "adc". - - clocks: Should contain a clock specifier for each entry in clock-names - - vref-supply: The regulator supply ADC reference voltage. - -Optional properties: - - adc-reserved-channels: Bitmask of reserved channels, - i.e. channels that cannot be used by the OS. - -Example: -adc: adc@18101600 { - compatible = "cosmic,10001-adc"; - reg = <0x18101600 0x24>; - adc-reserved-channels = <0x2>; - clocks = <&adc_clk>; - clock-names = "adc"; - vref-supply = <®_1v8>; -};
Documentation/devicetree/bindings/iio/adc/cosmic,10001-adc.yaml new file +59 -0
59 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 14/20 dt-bindings:iio:adc:adi,ad7949 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Simple SPI driver. I've added the #io-channel-cells
as an optional parameter to allow use of this device as a provider of ADC capabilities to other devices.
--- .../devicetree/bindings/iio/adc/ad7949.txt | 16 ------ .../bindings/iio/adc/adi,ad7949.yaml | 57 +++++++++++++++++++ 2 files changed, 57 insertions(+), 16 deletions(-)
Documentation/devicetree/bindings/iio/adc/ad7949.txt deleted +0 -16
@@ -1,16 +0,0 @@ -* Analog Devices AD7949/AD7682/AD7689 - -Required properties: - - compatible: Should be one of - * "adi,ad7949" - * "adi,ad7682" - * "adi,ad7689" - - reg: spi chip select number for the device - - vref-supply: The regulator supply for ADC reference voltage - -Example: -adc@0 { - compatible = "adi,ad7949"; - reg = <0>; - vref-supply = <&vdd_supply>; -};
Documentation/devicetree/bindings/iio/adc/adi,ad7949.yaml new file +57 -0
57 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 15/20 dt-bindings:iio:adc:ad7768-1 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Fairly straight conversion. The one oddity in the original binding is that spi-cpha and spi-cpol were not marked as required, but were in the example. Looking at the datasheet, there isn't any documented flexibility in the possible SPI modes, so I have moved these to requires. For spi-max-frequency I have gone the other way. I absolutely agree that it is good to specify this in the dt-binding, but it's not strictly required.
--- .../bindings/iio/adc/adi,ad7768-1.txt | 41 --------- .../bindings/iio/adc/adi,ad7768-1.yaml | 89 +++++++++++++++++++ 2 files changed, 89 insertions(+), 41 deletions(-)
Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.txt deleted +0 -41
@@ -1,41 +0,0 @@ -Analog Devices AD7768-1 ADC device driver - -Required properties for the AD7768-1: - -- compatible: Must be "adi,ad7768-1" -- reg: SPI chip select number for the device -- spi-max-frequency: Max SPI frequency to use - see: Documentation/devicetree/bindings/spi/spi-bus.txt -- clocks: phandle to the master clock (mclk) - see: Documentation/devicetree/bindings/clock/clock-bindings.txt -- clock-names: Must be "mclk". -- interrupts: IRQ line for the ADC - see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt -- vref-supply: vref supply can be used as reference for conversion -- adi,sync-in-gpios: must be the device tree identifier of the SYNC-IN pin. Enables - synchronization of multiple devices that require simultaneous sampling. - A pulse is always required if the configuration is changed in any way, for example - if the filter decimation rate changes. As the line is active low, it should - be marked GPIO_ACTIVE_LOW. - -Optional properties: - - - reset-gpios : GPIO spec for the RESET pin. If specified, it will be asserted during - driver probe. As the line is active low, it should be marked GPIO_ACTIVE_LOW. - -Example: - - adc@0 { - compatible = "adi,ad7768-1"; - reg = <0>; - spi-max-frequency = <2000000>; - spi-cpol; - spi-cpha; - vref-supply = <&adc_vref>; - interrupts = <25 IRQ_TYPE_EDGE_RISING>; - interrupt-parent = <&gpio>; - adi,sync-in-gpios = <&gpio 22 GPIO_ACTIVE_LOW>; - reset-gpios = <&gpio 27 GPIO_ACTIVE_LOW>; - clocks = <&ad7768_mclk>; - clock-names = "mclk"; - };
Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.yaml new file +89 -0
89 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerRe: [PATCH 15/20] dt-bindings:iio:adc:ad7768-1 yaml conversion
Quoted 10 lines · On Sat, 5 Sep 2020 18:29:59 +0100 Jonathan Cameron <[email protected]> wrote:
From: Jonathan Cameron <[email protected]>
Fairly straight conversion. The one oddity in the original binding is that spi-cpha and spi-cpol were not marked as required, but were in the example. Looking at the datasheet, there isn't any documented flexibility in the possible SPI modes, so I have moved these to requires. For spi-max-frequency I have gone the other way. I absolutely agree that it is good to specify this in the dt-binding, but it's not strictly required.
Quoted 2 lines
Signed-off-by Jonathan Cameron <[email protected]>Cc Stefan Popa <[email protected]>
As Stefan bounced, I guess not the best choice for maintainer on this binding going forwards.
Shall we go the same way as with the code Maintenance and make it Michael's problem? :)
Jonathan
Quoted 147 lines
--- .../bindings/iio/adc/adi,ad7768-1.txt | 41 --------- .../bindings/iio/adc/adi,ad7768-1.yaml | 89 +++++++++++++++++++ 2 files changed, 89 insertions(+), 41 deletions(-)Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.txt deleted +0
-41@@ -1,41 +0,0 @@ -Analog Devices AD7768-1 ADC device driver - -Required properties for the AD7768-1: - -- compatible: Must be "adi,ad7768-1" -- reg: SPI chip select number for the device -- spi-max-frequency: Max SPI frequency to use - see: Documentation/devicetree/bindings/spi/spi-bus.txt -- clocks: phandle to the master clock (mclk) - see: Documentation/devicetree/bindings/clock/clock-bindings.txt -- clock-names: Must be "mclk". -- interrupts: IRQ line for the ADC - see: Documentation/devicetree/bindings/interrupt-controller/interrupts.txt -- vref-supply: vref supply can be used as reference for conversion -- adi,sync-in-gpios: must be the device tree identifier of the SYNC-IN pin. Enables - synchronization of multiple devices that require simultaneous sampling. - A pulse is always required if the configuration is changed in any way, for example - if the filter decimation rate changes. As the line is active low, it should - be marked GPIO_ACTIVE_LOW. - -Optional properties: - - - reset-gpios : GPIO spec for the RESET pin. If specified, it will be asserted during - driver probe. As the line is active low, it should be marked GPIO_ACTIVE_LOW. - -Example: - - adc@0 { - compatible = "adi,ad7768-1"; - reg = <0>; - spi-max-frequency = <2000000>; - spi-cpol; - spi-cpha; - vref-supply = <&adc_vref>; - interrupts = <25 IRQ_TYPE_EDGE_RISING>; - interrupt-parent = <&gpio>; - adi,sync-in-gpios = <&gpio 22 GPIO_ACTIVE_LOW>; - reset-gpios = <&gpio 27 GPIO_ACTIVE_LOW>; - clocks = <&ad7768_mclk>; - clock-names = "mclk"; - };Documentation/devicetree/bindings/iio/adc/adi,ad7768-1.yaml new file +89
-0@@ -0,0 +1,89 @@ +# SPDX-License-Identifier: GPL-2.0 +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/adi,ad7768-1.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices AD7768-1 ADC device driver + +maintainers: + - Stefan Popa <[email protected]> + +description: | + Datasheet at: + https://www.analog.com/media/en/technical-documentation/data-sheets/ad7768-1.pdf + +properties: + compatible: + const: adi,ad7768-1 + + reg: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + const: mclk + + interrupts: + maxItems: 1 + + vref-supply: + description: + ADC reference voltage supply + + adi,sync-in-gpios: + description: + Enables synchronization of multiple devices that require simultaneous + sampling. A pulse is always required if the configuration is changed + in any way, for example if the filter decimation rate changes. + As the line is active low, it should be marked GPIO_ACTIVE_LOW. + + reset-gpios: + maxItems: 1 + + spi-max-frequency: true + + spi-cpol: true + spi-cpha : true + + "#io-channel-cells": + const: 1 + +required: + - compatible + - reg + - clocks + - clock-names + - vref-supply + - spi-cpol + - spi-cpha + - adi,sync-in-gpios + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/gpio/gpio.h> + spi { + #address-cells = <1>; + #size-cells = <0>; + + adc@0 { + compatible = "adi,ad7768-1"; + reg = <0>; + spi-max-frequency = <2000000>; + spi-cpol; + spi-cpha; + vref-supply = <&adc_vref>; + interrupts = <25 IRQ_TYPE_EDGE_RISING>; + interrupt-parent = <&gpio>; + adi,sync-in-gpios = <&gpio 22 GPIO_ACTIVE_LOW>; + reset-gpios = <&gpio 27 GPIO_ACTIVE_LOW>; + clocks = <&ad7768_mclk>; + clock-names = "mclk"; + }; + }; +...
Jonathan Cameron
maintainerPATCH 16/20 dt-bindings:iio:adc:ti,ads1015 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
This binding was moved over from hwmon some time ago so is a bit unusual in terms of IIO bindings. However, conversion was fairly straight forwards.
I've listed both Dirk (who think wrote original binding) and Daniel who added the IIO driver for this device.
--- .../devicetree/bindings/iio/adc/ads1015.txt | 73 ----------- .../bindings/iio/adc/ti,ads1015.yaml | 113 ++++++++++++++++++ 2 files changed, 113 insertions(+), 73 deletions(-)
Documentation/devicetree/bindings/iio/adc/ads1015.txt deleted +0 -73
@@ -1,73 +0,0 @@ -ADS1015 (I2C) - -This device is a 12-bit A-D converter with 4 inputs. - -The inputs can be used single ended or in certain differential combinations. - -For configuration all possible combinations are mapped to 8 channels: - 0: Voltage over AIN0 and AIN1. - 1: Voltage over AIN0 and AIN3. - 2: Voltage over AIN1 and AIN3. - 3: Voltage over AIN2 and AIN3. - 4: Voltage over AIN0 and GND. - 5: Voltage over AIN1 and GND. - 6: Voltage over AIN2 and GND. - 7: Voltage over AIN3 and GND. - -Each channel can be configured individually: - - pga is the programmable gain amplifier (values are full scale) - 0: +/- 6.144 V - 1: +/- 4.096 V - 2: +/- 2.048 V (default) - 3: +/- 1.024 V - 4: +/- 0.512 V - 5: +/- 0.256 V - - data_rate in samples per second - 0: 128 - 1: 250 - 2: 490 - 3: 920 - 4: 1600 (default) - 5: 2400 - 6: 3300 - -1) The /ads1015 node - - Required properties: - - - compatible : must be "ti,ads1015" - - reg : I2C bus address of the device - - #address-cells : must be <1> - - #size-cells : must be <0> - - The node contains child nodes for each channel that the platform uses. - - Example ADS1015 node: - - ads1015@49 { - compatible = "ti,ads1015"; - reg = <0x49>; - #address-cells = <1>; - #size-cells = <0>; - - [ child node definitions... ] - } - -2) channel nodes - - Required properties: - - - reg : the channel number - - Optional properties: - - - ti,gain : the programmable gain amplifier setting - - ti,datarate : the converter data rate - - Example ADS1015 channel node: - - channel@4 { - reg = <4>; - ti,gain = <3>; - ti,datarate = <5>; - };
Documentation/devicetree/bindings/iio/adc/ti,ads1015.yaml new file +113 -0
113 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 17/20 dt-bindings:iio:adc:holt,hi8435 yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
Very simple binding. I've changed the example to use the node name threshold-detector@0 as sensor@0 seemed too generic.
--- .../devicetree/bindings/iio/adc/hi8435.txt | 21 -------- .../bindings/iio/adc/holt,hi8435.yaml | 49 +++++++++++++++++++ 2 files changed, 49 insertions(+), 21 deletions(-)
Documentation/devicetree/bindings/iio/adc/hi8435.txt deleted +0 -21
@@ -1,21 +0,0 @@ -Holt Integrated Circuits HI-8435 threshold detector bindings - -Required properties: - - compatible: should be "holt,hi8435" - - reg: spi chip select number for the device - -Recommended properties: - - spi-max-frequency: definition as per - Documentation/devicetree/bindings/spi/spi-bus.txt - -Optional properties: - - gpios: GPIO used for controlling the reset pin - -Example: -sensor@0 { - compatible = "holt,hi8435"; - reg = <0>; - gpios = <&gpio6 1 0>; - - spi-max-frequency = <1000000>; -};
Documentation/devicetree/bindings/iio/adc/holt,hi8435.yaml new file +49 -0
49 lines not on this page · raw message
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 18/20 dt-bindings:iio:adc:amlogic,meson-saradc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
This binding is non trivial due to the range of different parts supported having several subtle quirks.
I am far from sure I have these correct. For example:
1) Can we have the clock adc_sel without adc_clk?
2) I haven't restricted the amlogic,hhi-sysctrl to only be present on the relevant parts if nvmem stuff also is, but it would seem to be rather odd if it were otherwise.
Perhaps we look to make this binding more restrictive at a later date.
--- .../bindings/iio/adc/amlogic,meson-saradc.txt | 48 ------ .../iio/adc/amlogic,meson-saradc.yaml | 145 ++++++++++++++++++ 2 files changed, 145 insertions(+), 48 deletions(-)
Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.txt deleted +0 -48
@@ -1,48 +0,0 @@ -* Amlogic Meson SAR (Successive Approximation Register) A/D converter - -Required properties: -- compatible: depending on the SoC this should be one of: - - "amlogic,meson8-saradc" for Meson8 - - "amlogic,meson8b-saradc" for Meson8b - - "amlogic,meson8m2-saradc" for Meson8m2 - - "amlogic,meson-gxbb-saradc" for GXBB - - "amlogic,meson-gxl-saradc" for GXL - - "amlogic,meson-gxm-saradc" for GXM - - "amlogic,meson-axg-saradc" for AXG - - "amlogic,meson-g12a-saradc" for AXG - along with the generic "amlogic,meson-saradc" -- reg: the physical base address and length of the registers -- interrupts: the interrupt indicating end of sampling -- clocks: phandle and clock identifier (see clock-names) -- clock-names: mandatory clocks: - - "clkin" for the reference clock (typically XTAL) - - "core" for the SAR ADC core clock - optional clocks: - - "adc_clk" for the ADC (sampling) clock - - "adc_sel" for the ADC (sampling) clock mux -- vref-supply: the regulator supply for the ADC reference voltage -- #io-channel-cells: must be 1, see ../iio-bindings.txt - -Optional properties: -- amlogic,hhi-sysctrl: phandle to the syscon which contains the 5th bit - of the TSC (temperature sensor coefficient) on - Meson8b and Meson8m2 (which used to calibrate the - temperature sensor) -- nvmem-cells: phandle to the temperature_calib eFuse cells -- nvmem-cell-names: if present (to enable the temperature sensor - calibration) this must contain "temperature_calib" - - -Example: - saradc: adc@8680 { - compatible = "amlogic,meson-gxl-saradc", "amlogic,meson-saradc"; - #io-channel-cells = <1>; - reg = <0x0 0x8680 0x0 0x34>; - interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; - clocks = <&xtal>, - <&clkc CLKID_SAR_ADC>, - <&clkc CLKID_SANA>, - <&clkc CLKID_SAR_ADC_CLK>, - <&clkc CLKID_SAR_ADC_SEL>; - clock-names = "clkin", "core", "sana", "adc_clk", "adc_sel"; - };
Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml new file +145 -0
145 lines not on this page · raw message
Signature · 1 line
2.28.0
Martin Blumenstingl
reviewerRe: [PATCH 18/20] dt-bindings:iio:adc:amlogic,meson-saradc yaml conversion
Hi Jonathan,
Quoted 5 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
This binding is non trivial due to the range of different parts supported having several subtle quirks.
thank you for working on this!
Quoted 2 lines
I am far from sure I have these correct. For example:
1) Can we have the clockadc_selwithoutadc_clk?
adc_sel and adc_clk only exist on GXBB and newer
Meson8, Meson8b and Meson8m2 have these clocks built into the SAR ADC IP block
Quoted 3 lines
2) I haven't restricted the amlogic,hhi-sysctrl to only be present on the relevant parts if nvmem stuff also is, but it would seem to be rather odd if it were otherwise.
yes, I think we can restrict this later
[...]
Review
Quoted 10 lines
(quoted diff) +10
-0+ adc@9680 { + compatible = "amlogic,meson8b-saradc", "amlogic,meson-saradc"; + #io-channel-cells = <1>; + reg = <0x0 0x9680 0x0 0x34>; + interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; + clocks = <&xtal>, + <&clkc CLKID_SAR_ADC>, + <&clkc CLKID_SAR_ADC_CLK>, + <&clkc CLKID_SAR_ADC_SEL>; + clock-names = "clkin", "core";
CLKID_SAR_ADC_CLK and CLKID_SAR_ADC_SEL should not be in this Meson8b example
I have attached a patch for this as well as for making the clock selection more restrictive (to catch errors like this). feel free to include it in your patch if you think that it improves things
Best regards,
Martin
Documentation/devicetree/bindings/iio/adc/amlogic,meson-saradc.yaml +20 -16
@@ -35,18 +35,9 @@ properties: description: Interrupt indicates end of sampling. maxItems: 1 - clocks: - minItems: 2 - maxItems: 4 - - clock-names: - items: - - const: clkin - - const: core - - const: adc_clk - - const: adc_sel - minItems: 2 - maxItems: 4 + clocks: true + + clock-names: true vref-supply: true
@@ -79,10 +70,26 @@ allOf: properties: nvmem-cells: true nvmem-cell-names: true + clock-names: + items: + - const: clkin + - const: core + minItems: 2 + clocks: + minItems: 2 else: properties: nvmem-cells: false mvmem-cel-names: false + clock-names: + items: + - const: clkin + - const: core + - const: adc_clk + - const: adc_sel + minItems: 4 + clocks: + minItems: 4 - if: properties:
@@ -132,10 +139,7 @@ examples: #io-channel-cells = <1>; reg = <0x0 0x9680 0x0 0x34>; interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; - clocks = <&xtal>, - <&clkc CLKID_SAR_ADC>, - <&clkc CLKID_SAR_ADC_CLK>, - <&clkc CLKID_SAR_ADC_SEL>; + clocks = <&xtal>, <&clkc CLKID_SAR_ADC>; clock-names = "clkin", "core"; nvmem-cells = <&tsens_caldata>; nvmem-cell-names = "temperature_calib";
Jonathan Cameron
maintainerRe: [PATCH 18/20] dt-bindings:iio:adc:amlogic,meson-saradc yaml conversion
Quoted 6 lines · On Sun, 6 Sep 2020 12:00:02 +0200 Martin Blumenstingl…
Hi Jonathan,
Quoted 3 lines · Jonathan Cameron
From: Jonathan Cameron <[email protected]>
Quoted 8 lines
Quoted 2 lines
This binding is non trivial due to the range of different parts supported having several subtle quirks.
thank you for working on this!
Quoted 2 lines
I am far from sure I have these correct. For example:
1) Can we have the clockadc_selwithoutadc_clk?
adc_selandadc_clkonly exist on GXBB and newer
Meson8, Meson8b and Meson8m2 have these clocks built into the SAR ADC IP block
Ah. That makes sense.
Quoted 17 lines
Quoted 4 lines
2) I haven't restricted the amlogic,hhi-sysctrl to only be present on the relevant parts if nvmem stuff also is, but it would seem to be rather odd if it were otherwise.
yes, I think we can restrict this later
[...]
Review
Quoted 10 lines
(quoted diff) +10
-0+ adc@9680 { + compatible = "amlogic,meson8b-saradc", "amlogic,meson-saradc"; + #io-channel-cells = <1>; + reg = <0x0 0x9680 0x0 0x34>; + interrupts = <GIC_SPI 73 IRQ_TYPE_EDGE_RISING>; + clocks = <&xtal>, + <&clkc CLKID_SAR_ADC>, + <&clkc CLKID_SAR_ADC_CLK>, + <&clkc CLKID_SAR_ADC_SEL>; + clock-names = "clkin", "core";
Quoted 5 lines
CLKID_SAR_ADC_CLKandCLKID_SAR_ADC_SELshould not be in this Meson8b exampleI have attached a patch for this as well as for making the clock selection more restrictive (to catch errors like this). feel free to include it in your patch if you think that it improves things
Great thanks. I'll roll your patch into this for v2.
Thanks,
Jonathan
Quoted 4 lines
Best regards,
Martin
Jonathan Cameron
maintainerPATCH 19/20 dt-bindings:iio:adc:fsl,imx7d-adc yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
A nice simple binding. Only real different from txt is that I dropped some descriptions where the naming of the parameter was self explanatory
--- .../bindings/iio/adc/fsl,imx7d-adc.yaml | 62 +++++++++++++++++++ .../devicetree/bindings/iio/adc/imx7d-adc.txt | 24 ------- 2 files changed, 62 insertions(+), 24 deletions(-)
Documentation/devicetree/bindings/iio/adc/fsl,imx7d-adc.yaml new file +62 -0
@@ -0,0 +1,62 @@ +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/adc/fsl,imx7d-adc.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Freescale ADC found on the imx7d SoC + +maintainers: + - Haibo Chen <[email protected]> + +properties: + compatible: + const: fsl,imx7d-adc + + reg: + maxItems: 1 + + interrupts: + maxItems: 1 + + clocks: + maxItems: 1 + + clock-names: + const: adc + + vref-supply: true + + "#io-channel-cells": + const: 1 + +required: + - compatible + - reg + - interrupts + - clocks + - clock-names + - vref-supply + - "#io-channel-cells" + +additionalProperties: false + +examples: + - | + #include <dt-bindings/interrupt-controller/irq.h> + #include <dt-bindings/clock/imx7d-clock.h> + #include <dt-bindings/interrupt-controller/arm-gic.h> + soc { + #address-cells = <1>; + #size-cells = <1>; + adc@30610000 { + compatible = "fsl,imx7d-adc"; + reg = <0x30610000 0x10000>; + interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; + clocks = <&clks IMX7D_ADC_ROOT_CLK>; + clock-names = "adc"; + vref-supply = <®_vcc_3v3_mcu>; + #io-channel-cells = <1>; + }; + }; +...
Documentation/devicetree/bindings/iio/adc/imx7d-adc.txt deleted +0 -24
@@ -1,24 +0,0 @@ -Freescale imx7d ADC bindings - -The devicetree bindings are for the ADC driver written for -imx7d SoC. - -Required properties: -- compatible: Should be "fsl,imx7d-adc" -- reg: Offset and length of the register set for the ADC device -- interrupts: The interrupt number for the ADC device -- clocks: The root clock of the ADC controller -- clock-names: Must contain "adc", matching entry in the clocks property -- vref-supply: The regulator supply ADC reference voltage -- #io-channel-cells: Must be 1 as per ../iio-bindings.txt - -Example: -adc1: adc@30610000 { - compatible = "fsl,imx7d-adc"; - reg = <0x30610000 0x10000>; - interrupts = <GIC_SPI 98 IRQ_TYPE_LEVEL_HIGH>; - clocks = <&clks IMX7D_ADC_ROOT_CLK>; - clock-names = "adc"; - vref-supply = <®_vcc_3v3_mcu>; - #io-channel-cells = <1>; -};
Signature · 1 line
2.28.0
Jonathan Cameron
maintainerPATCH 20/20 dt-bindings:iio:adc:fsl,imx25-gcq yaml conversion
In reply to Jonathan CameronFrom: Jonathan Cameron <[email protected]>
This binding has a few corners that would have been done different today but hopefully the yaml schema captures the contraints correctly.
The child node names are not constrained hence the fairly open regexp. I've also documented the defaults for the two references that the driver seems to use and copied the value descriptions from the header because I think they should be in the dt-binding itself.
This is part of a general effort to convert all the IIO bindings over to yaml
--- .../bindings/iio/adc/fsl,imx25-gcq.txt | 57 -------- .../bindings/iio/adc/fsl,imx25-gcq.yaml | 129 ++++++++++++++++++ 2 files changed, 129 insertions(+), 57 deletions(-)
Documentation/devicetree/bindings/iio/adc/fsl,imx25-gcq.txt deleted +0 -57
@@ -1,57 +0,0 @@ -Freescale i.MX25 ADC GCQ device - -This is a generic conversion queue device that can convert any of the -analog inputs using the ADC unit of the i.MX25. - -Required properties: - - compatible: Should be "fsl,imx25-gcq". - - reg: Should be the register range of the module. - - interrupts: Should be the interrupt number of the module. - Typically this is <1>. - - #address-cells: Should be <1> (setting for the subnodes) - - #size-cells: Should be <0> (setting for the subnodes) - -Optional properties: - - vref-ext-supply: The regulator supplying the ADC reference voltage. - Required when at least one subnode uses the this reference. - - vref-xp-supply: The regulator supplying the ADC reference voltage on pin XP. - Required when at least one subnode uses this reference. - - vref-yp-supply: The regulator supplying the ADC reference voltage on pin YP. - Required when at least one subnode uses this reference. - -Sub-nodes: -Optionally you can define subnodes which define the reference voltage -for the analog inputs. - -Required properties for subnodes: - - reg: Should be the number of the analog input. - 0: xp - 1: yp - 2: xn - 3: yn - 4: wiper - 5: inaux0 - 6: inaux1 - 7: inaux2 -Optional properties for subnodes: - - fsl,adc-refp: specifies the positive reference input as defined in - <dt-bindings/iio/adc/fsl-imx25-gcq.h> - - fsl,adc-refn: specifies the negative reference input as defined in - <dt-bindings/iio/adc/fsl-imx25-gcq.h> - -Example: - - adc: adc@50030800 { - compatible = "fsl,imx25-gcq"; - reg = <0x50030800 0x60>; - interrupt-parent = <&tscadc>; - interrupts = <1>; - #address-cells = <1>; - #size-cells = <0>; - - inaux@5 { - reg = <5>; - fsl,adc-refp = <MX25_ADC_REFP_INT>; - fsl,adc-refn = <MX25_ADC_REFN_NGND>; - }; - };
Documentation/devicetree/bindings/iio/adc/fsl,imx25-gcq.yaml new file +129 -0
129 lines not on this page · raw message
Signature · 1 line
2.28.0