Re: [PATCH v2 1/2] dt-bindings: iio: dac: add MCP4821

From: David Lechner
Date: Sun Dec 17 2023 - 20:25:51 EST


On Sun, Dec 17, 2023 at 12:11 PM Anshul Dalal <anshulusr@xxxxxxxxx> wrote:
>
> Adds support for MCP48xx series of DACs.
>
> Datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/22244B.pdf #MCP48x1
> Datasheet: https://ww1.microchip.com/downloads/en/DeviceDoc/20002249B.pdf #MCP48x2
> Reviewed-by: Conor Dooley <conor.dooley@xxxxxxxxxxxxx>
> Signed-off-by: Anshul Dalal <anshulusr@xxxxxxxxx>
>
> ---
>
> Changes for v2:
> - Changed order in device table to numerical
> - Made vdd_supply required
> - Added 'Reviewed-by: Conor Dooley'
>
> Previous versions:
> v1: https://lore.kernel.org/lkml/20231117073040.685860-1-anshulusr@xxxxxxxxx/
> ---
> .../bindings/iio/dac/microchip,mcp4821.yaml | 64 +++++++++++++++++++
> 1 file changed, 64 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/iio/dac/microchip,mcp4821.yaml
>
> diff --git a/Documentation/devicetree/bindings/iio/dac/microchip,mcp4821.yaml b/Documentation/devicetree/bindings/iio/dac/microchip,mcp4821.yaml
> new file mode 100644
> index 000000000000..97da9f9ef450
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/iio/dac/microchip,mcp4821.yaml
> @@ -0,0 +1,64 @@
> +# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/iio/dac/microchip,mcp4821.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: Microchip MCP4821 and similar DACs
> +
> +description: |
> + Supports MCP48x1 (single channel) and MCP48x2 (dual channel) series of DACs.
> + Device supports simplex communication over SPI in Mode 0,1 and Mode 1,1.

It seems like SPI modes usually only have one number in them, i.e.
mode 1 and mode 3 in this case, I'm guessing.

> +
> + +---------+--------------+-------------+
> + | Device | Resolution | Channels |
> + |---------|--------------|-------------|
> + | MCP4801 | 8-bit | 1 |
> + | MCP4802 | 8-bit | 2 |
> + | MCP4811 | 10-bit | 1 |
> + | MCP4812 | 10-bit | 2 |
> + | MCP4821 | 12-bit | 1 |
> + | MCP4822 | 12-bit | 2 |
> + +---------+--------------+-------------+
> +
> + Datasheet:
> + MCP48x1: https://ww1.microchip.com/downloads/en/DeviceDoc/22244B.pdf
> + MCP48x2: https://ww1.microchip.com/downloads/en/DeviceDoc/20002249B.pdf
> +
> +maintainers:
> + - Anshul Dalal <anshulusr@xxxxxxxxx>
> +
> +properties:
> + compatible:
> + enum:
> + - microchip,mcp4801
> + - microchip,mcp4802
> + - microchip,mcp4811
> + - microchip,mcp4812
> + - microchip,mcp4821
> + - microchip,mcp4822
> +
> + reg:
> + maxItems: 1
> +
> + vdd-supply: true

What about the SHDN and LDAC pins? It seems like all should have an
ldac-gpios property and MCP48x1 should have a shdn-gpios property for
these.

> +
> +required:
> + - compatible
> + - reg
> + - vdd-supply
> +
> +additionalProperties: false
> +
> +examples:
> + - |
> + spi {
> + #address-cells = <1>;
> + #size-cells = <0>;
> +
> + dac@0 {
> + compatible = "microchip,mcp4821";
> + reg = <0>;
> + vdd-supply = <&vdd_regulator>;
> + };
> + };
> --
> 2.43.0
>
>