[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20240122-daunting-woof-19fac5689bb2@spud>
Date: Mon, 22 Jan 2024 18:00:14 +0000
From: Conor Dooley <conor@...nel.org>
To: Seven Lee <wtli@...oton.com>
Cc: broonie@...nel.org, lgirdwood@...il.com, alsa-devel@...a-project.org,
devicetree@...r.kernel.org, linux-kernel@...r.kernel.org,
robh+dt@...nel.org, conor+dt@...nel.org, YHCHuang@...oton.com,
KCHSU0@...oton.com, CTLIN0@...oton.com, SJLIN0@...oton.com,
scott6986@...il.com, supercraig0719@...il.com, dardar923@...il.com
Subject: Re: [PATCH 1/2] ASoC: dt-bindings: Added schema for "nuvoton,nau8325"
On Mon, Jan 22, 2024 at 05:56:49PM +0800, Seven Lee wrote:
> Added a DT schema for describing nau8325 audio amplifiers.
>
> Signed-off-by: Seven Lee <wtli@...oton.com>
> ---
> .../bindings/sound/nuvoton,nau8325.yaml | 82 +++++++++++++++++++
> 1 file changed, 82 insertions(+)
> create mode 100644 Documentation/devicetree/bindings/sound/nuvoton,nau8325.yaml
>
> diff --git a/Documentation/devicetree/bindings/sound/nuvoton,nau8325.yaml b/Documentation/devicetree/bindings/sound/nuvoton,nau8325.yaml
> new file mode 100644
> index 000000000000..9105985357aa
> --- /dev/null
> +++ b/Documentation/devicetree/bindings/sound/nuvoton,nau8325.yaml
> @@ -0,0 +1,82 @@
> +# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
> +%YAML 1.2
> +---
> +$id: http://devicetree.org/schemas/sound/nuvoton,nau8325.yaml#
> +$schema: http://devicetree.org/meta-schemas/core.yaml#
> +
> +title: NAU8325 audio Amplifier
> +
> +maintainers:
> + - Seven Lee <WTLI@...oton.com>
> +
> +allOf:
> + - $ref: dai-common.yaml#
> +
> +properties:
> + compatible:
> + const: nuvoton,nau8325
> +
> + reg:
> + maxItems: 1
> +
> + nuvoton,vref-impedance:
I know this property already has users, but this is a new device and you
are writing a new driver from scratch, could you instead call it
"nuvoton,vref-impedance-ohms" and make the options the impednances
themselves?
The absence of the property could then be used to indicate that it is an
open circuit?
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + VREF impedance selection.
> + enum:
> + - 0 # Open
> + - 1 # 25kOhm
> + - 2 # 125kOhm
> + - 3 # 2.5kOhm
> + default: 2
> +
> + nuvoton,dac-vref:
> + $ref: /schemas/types.yaml#/definitions/uint32
> + description:
> + DAC Reference Voltage Setting.
> + enum:
> + - 0 # VDDA
> + - 1 # VDDA*1.5/1.8V
> + - 2 # VDDA*1.6/1.8V
> + - 3 # VDDA*1.7/1.8V
I would also rather than this enum was used to have sensible values for
the enum itself (which I suppose means strings here), rather than the
register values. Seeing "nuvoton,dac-vref = <2>" in a devicetree is not
very meaningful IMO.
Cheers,
Conor.
> + default: 2
> +
> + nuvoton,alc-enable:
> + description:
> + Enable digital automatic level control (ALC) function.
> + type: boolean
> +
> + nuvoton,clock-detection-disable:
> + description:
> + When clock detection is enabled, it will detect whether MCLK
> + and FS are within the range. MCLK range is from 2.048MHz to 24.576MHz.
> + FS range is from 8kHz to 96kHz.
> + type: boolean
> +
> + nuvoton,clock-det-data:
> + description:
> + Request clock detection to require 2048 non-zero samples before enabling
> + the audio paths. If set then non-zero samples is required, otherwise it
> + doesn't matter.
> + type: boolean
> +
> +required:
> + - compatible
> + - reg
> +
> +unevaluatedProperties: false
> +
> +examples:
> + - |
> + i2c {
> + #address-cells = <1>;
> + #size-cells = <0>;
> + codec@21 {
> + compatible = "nuvoton,nau8325";
> + reg = <0x21>;
> + nuvoton,vref-impedance = <2>;
> + nuvoton,dac-vref = <2>;
> + nuvoton,alc-enable;
> + nuvoton,clock-det-data;
> + };
> + };
> --
> 2.25.1
>
Download attachment "signature.asc" of type "application/pgp-signature" (229 bytes)
Powered by blists - more mailing lists