Message ID | 20250319-togreg-v1-3-d8244a502f2c@analog.com (mailing list archive) |
---|---|
State | Changes Requested |
Headers | show |
Series | Add driver for AD3530R and AD3531R DACs | expand |
On Wed, 19 Mar 2025 11:47:57 +0800, Kim Seer Paller wrote: > The AD3530R/AD3530 is an 8-Channel, 16-Bit Voltage Output DAC, while the > AD3531R/AD3531 is a 4-Channel, 16-Bit Voltage Output DAC. These devices > include software-programmable gain controls that provide full-scale > output spans of 2.5V or 5V for reference voltages of 2.5V. They operate > from a single supply voltage range of 2.7V to 5.5V and are guaranteed to > be monotonic by design. Additionally, these devices features a 2.5V, > 5ppm/°C internal reference, which is disabled by default. > > This adds the documentation for ad3530r. > > Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com> > --- > .../devicetree/bindings/iio/dac/adi,ad3530r.yaml | 89 ++++++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 90 insertions(+) > My bot found errors running 'make dt_binding_check' on your patch: yamllint warnings/errors: dtschema/dtc warnings/errors: /builds/robherring/dt-review-ci/linux/Documentation/devicetree/bindings/iio/adc/adi,axi-adc.example.dtb: adc@0: pwm-names: ['convst1'] is too short from schema $id: http://devicetree.org/schemas/iio/adc/adi,ad7606.yaml# doc reference errors (make refcheckdocs): Warning: Documentation/arch/powerpc/cxl.rst references a file that doesn't exist: Documentation/ABI/testing/sysfs-class-cxl Warning: lib/Kconfig.debug references a file that doesn't exist: Documentation/dev-tools/fault-injection/fault-injection.rst Documentation/arch/powerpc/cxl.rst: Documentation/ABI/testing/sysfs-class-cxl lib/Kconfig.debug: Documentation/dev-tools/fault-injection/fault-injection.rst See https://patchwork.ozlabs.org/project/devicetree-bindings/patch/20250319-togreg-v1-3-d8244a502f2c@analog.com The base for the series is generally the latest rc1. A different dependency should be noted in *this* patch. If you already ran 'make dt_binding_check' and didn't see the above error(s), then make sure 'yamllint' is installed and dt-schema is up to date: pip3 install dtschema --upgrade Please check and re-submit after running the above command yourself. Note that DT_SCHEMA_FILES can be set to your schema file to speed up checking your schema. However, it must be unset to test all examples with your schema.
On Wed, Mar 19, 2025 at 11:47:57AM +0800, Kim Seer Paller wrote: > The AD3530R/AD3530 is an 8-Channel, 16-Bit Voltage Output DAC, while the "Document the AD3530R/AD3530, an 8-Channel, 16-bit...." > AD3531R/AD3531 is a 4-Channel, 16-Bit Voltage Output DAC. These devices > include software-programmable gain controls that provide full-scale > output spans of 2.5V or 5V for reference voltages of 2.5V. They operate > from a single supply voltage range of 2.7V to 5.5V and are guaranteed to > be monotonic by design. Additionally, these devices features a 2.5V, > 5ppm/°C internal reference, which is disabled by default. > > This adds the documentation for ad3530r. And that sentence us really not needed. See submitting patches. > > Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com> > --- > .../devicetree/bindings/iio/dac/adi,ad3530r.yaml | 89 ++++++++++++++++++++++ > MAINTAINERS | 1 + > 2 files changed, 90 insertions(+) > > diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml > new file mode 100644 > index 0000000000000000000000000000000000000000..6b50dce38383c8eb0d2107bf4e44cd320776f481 > --- /dev/null > +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml > @@ -0,0 +1,89 @@ > +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) > +%YAML 1.2 > +--- > +$id: http://devicetree.org/schemas/iio/dac/adi,ad3530r.yaml# > +$schema: http://devicetree.org/meta-schemas/core.yaml# > + > +title: Analog Devices AD3530R and Similar DACs > + > +maintainers: > + - Kim Seer Paller <kimseer.paller@analog.com> > + > +description: | > + The AD3530R/AD3530 are low power, 8-channel, 16-bit, buffered voltage output, > + DACs that include a 2.5V internal reference (disabled by default), and a gain > + bit field, resulting in a full-scale output span of 2.5V (gain = 1) or 5V > + (gain = 2) for a reference voltage of 2.5V. > + Datasheet can be found here: > + https://www.analog.com/media/en/technical-documentation/data-sheets/2664fa.pdf > + > +properties: > + compatible: > + enum: > + - adi,ad3530r > + - adi,ad3531r > + > + reg: > + maxItems: 1 > + > + spi-max-frequency: > + maximum: 50000000 > + > + vdd-supply: > + description: Power Supply Input. > + > + iovdd-supply: > + description: Digital Power Supply Input. > + > + ref-supply: > + description: > + Reference Input/Output. The voltage at the REF pin sets the full-scale > + range of all channels. If not provided the internal reference is used and > + also provided on the VREF pin. > + > + reset-gpios: > + description: > + Active low signal that is falling edge sensitive. When it is deasserted, > + the digital core initialization is performed and all DAC registers except > + the Interface Configuration A register are reset to their default values. > + maxItems: 1 > + > + ldac-gpios: > + description: > + LDAC pin to be used as a hardware trigger to update the DAC channels. If > + not present, the DAC channels are updated by Software LDAC. > + maxItems: 1 > + > + adi,double-output-range: > + description: > + Configure the output range for all channels. If the property is present, > + the output will range from 0V to 2Vref. If the property is not > + present, the output will range from 0V to Vref. You already have adi,range-double. It's not us who should find it, but you. You have just ADI bindings to look at. We have all bindings. Best regards, Krzysztof
> > + adi,double-output-range: > > + description: > > + Configure the output range for all channels. If the property is present, > > + the output will range from 0V to 2Vref. If the property is not > > + present, the output will range from 0V to Vref. > > You already have adi,range-double. It's not us who should find it, but > you. You have just ADI bindings to look at. We have all bindings. Apologies, I'll take note of this. Thanks
diff --git a/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml b/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml new file mode 100644 index 0000000000000000000000000000000000000000..6b50dce38383c8eb0d2107bf4e44cd320776f481 --- /dev/null +++ b/Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml @@ -0,0 +1,89 @@ +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) +%YAML 1.2 +--- +$id: http://devicetree.org/schemas/iio/dac/adi,ad3530r.yaml# +$schema: http://devicetree.org/meta-schemas/core.yaml# + +title: Analog Devices AD3530R and Similar DACs + +maintainers: + - Kim Seer Paller <kimseer.paller@analog.com> + +description: | + The AD3530R/AD3530 are low power, 8-channel, 16-bit, buffered voltage output, + DACs that include a 2.5V internal reference (disabled by default), and a gain + bit field, resulting in a full-scale output span of 2.5V (gain = 1) or 5V + (gain = 2) for a reference voltage of 2.5V. + Datasheet can be found here: + https://www.analog.com/media/en/technical-documentation/data-sheets/2664fa.pdf + +properties: + compatible: + enum: + - adi,ad3530r + - adi,ad3531r + + reg: + maxItems: 1 + + spi-max-frequency: + maximum: 50000000 + + vdd-supply: + description: Power Supply Input. + + iovdd-supply: + description: Digital Power Supply Input. + + ref-supply: + description: + Reference Input/Output. The voltage at the REF pin sets the full-scale + range of all channels. If not provided the internal reference is used and + also provided on the VREF pin. + + reset-gpios: + description: + Active low signal that is falling edge sensitive. When it is deasserted, + the digital core initialization is performed and all DAC registers except + the Interface Configuration A register are reset to their default values. + maxItems: 1 + + ldac-gpios: + description: + LDAC pin to be used as a hardware trigger to update the DAC channels. If + not present, the DAC channels are updated by Software LDAC. + maxItems: 1 + + adi,double-output-range: + description: + Configure the output range for all channels. If the property is present, + the output will range from 0V to 2Vref. If the property is not + present, the output will range from 0V to Vref. + type: boolean + +required: + - compatible + - reg + - vdd-supply + - iovdd-supply + +allOf: + - $ref: /schemas/spi/spi-peripheral-props.yaml# + +additionalProperties: false + +examples: + - | + spi { + #address-cells = <1>; + #size-cells = <0>; + dac@0 { + compatible = "adi,ad3530r"; + reg = <0>; + spi-max-frequency = <1000000>; + + vdd-supply = <&vdd>; + iovdd-supply = <&iovdd>; + }; + }; +... diff --git a/MAINTAINERS b/MAINTAINERS index 2d3c31c74594ca1934c67e7aad0a179feeaa39bf..7862469226f52375adc219115ef68d03662127be 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -1295,6 +1295,7 @@ L: linux-iio@vger.kernel.org S: Supported W: https://ez.analog.com/linux-software-drivers F: Documentation/ABI/testing/sysfs-bus-iio-dac-ad3530r +F: Documentation/devicetree/bindings/iio/dac/adi,ad3530r.yaml ANALOG DEVICES INC AD3552R DRIVER M: Nuno Sá <nuno.sa@analog.com>
The AD3530R/AD3530 is an 8-Channel, 16-Bit Voltage Output DAC, while the AD3531R/AD3531 is a 4-Channel, 16-Bit Voltage Output DAC. These devices include software-programmable gain controls that provide full-scale output spans of 2.5V or 5V for reference voltages of 2.5V. They operate from a single supply voltage range of 2.7V to 5.5V and are guaranteed to be monotonic by design. Additionally, these devices features a 2.5V, 5ppm/°C internal reference, which is disabled by default. This adds the documentation for ad3530r. Signed-off-by: Kim Seer Paller <kimseer.paller@analog.com> --- .../devicetree/bindings/iio/dac/adi,ad3530r.yaml | 89 ++++++++++++++++++++++ MAINTAINERS | 1 + 2 files changed, 90 insertions(+)