From: Neo Chang <YLCHANG2@nuvoton.com>
To: <broonie@kernel.org>
Cc: <lgirdwood@gmail.com>, <perex@perex.cz>, <robh@kernel.org>,
<krzk+dt@kernel.org>, <linux-sound@vger.kernel.org>,
<devicetree@vger.kernel.org>, <alsa-devel@alsa-project.org>,
<neo.chang70@gmail.com>, <kchsu0@nuvoton.com>,
<sjlin0@nuvoton.com>, "Neo Chang" <YLCHANG2@nuvoton.com>
Subject: [PATCH v6 1/2] ASoC: dt-bindings: nuvoton,nau8360: Add NAU83G60
Date: Wed, 8 Jul 2026 17:35:05 +0800 [thread overview]
Message-ID: <20260708093506.895481-2-YLCHANG2@nuvoton.com> (raw)
In-Reply-To: <20260708093506.895481-1-YLCHANG2@nuvoton.com>
Add device tree bindings documentation for the Nuvoton NAU83G60
audio amplifier.
Signed-off-by: Neo Chang <YLCHANG2@nuvoton.com>
---
Changes in v6:
- Removed '|' from descriptions.
- Add firmware-name in required.
- Add "nuvoton,dsp-tx-slot-mapping" and "nuvoton,dsp-rx-slot-mapping" properties.
Changes in v5:
- Remove the detailed datasheet information, keep only the valid I2C address enum
- Simplify the firmware firmware-name items definition by removing the redundant
minItems/maxItems and moving the channel descriptions directly into individual
item entries.
Changes in v4:
- Refine the `firmware-name` description to clarify the loading order
(Left then Right) and the PBTL mode behavior.
- Remove the "dsp bypass" option description.
- Update the example node to follow devicetree coding styles.
Changes in v3:
- Remove colon to resolve YAML build warnings.
- Fix 'firmware-name' property definition to comply with binding schemas
Changes in v2:
- Dropped the word "driver" from the description.
- Removed runtime/software configuration properties:
nuvoton,low-latency, nuvoton,anc-enable, nuvoton,aec-enable,
nuvoton,vbat-microvolt, and nuvoton,tdm-channel-length.
- Added missing "nuvoton,dac-cur-enable" property for static speaker impedance matching.
- Removed unnecessary '|' formatting from single-line descriptions.
- Fixed typo in firmware-name property.
---
.../bindings/sound/nuvoton,nau8360.yaml | 113 ++++++++++++++++++
1 file changed, 113 insertions(+)
create mode 100644 Documentation/devicetree/bindings/sound/nuvoton,nau8360.yaml
diff --git a/Documentation/devicetree/bindings/sound/nuvoton,nau8360.yaml b/Documentation/devicetree/bindings/sound/nuvoton,nau8360.yaml
new file mode 100644
index 000000000000..3aa3df0bcb93
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/nuvoton,nau8360.yaml
@@ -0,0 +1,113 @@
+# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/nuvoton,nau8360.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Nuvoton NAU83G60 Stereo Class-D Amplifier with DSP
+
+description:
+ Stereo Class-D Amplifier with DSP and I/V-sense.
+ This device supports I2C.
+
+maintainers:
+ - Neo Chang <YLCHANG2@nuvoton.com>
+
+properties:
+ compatible:
+ enum:
+ - nuvoton,nau8360
+
+ reg:
+ description: The I2C address is determined by the hardware pins.
+ enum: [0x1a, 0x1b, 0x4a, 0x4b]
+
+ "#sound-dai-cells":
+ const: 0
+
+ clocks:
+ maxItems: 1
+
+ clock-names:
+ const: mclk
+
+ firmware-name:
+ items:
+ - description:
+ Left DSP core firmware.
+ In PBTL mode, the Left firmware is ignored and only the Right is applied.
+ - description: Right DSP core firmware.
+
+ nuvoton,pbtl-enable:
+ type: boolean
+ description: NAU83G60 supports PBTL mode for mono output.
+
+ nuvoton,dac-cur-enable:
+ type: boolean
+ description:
+ Adjust DAC output current to match speaker impedance and prevent
+ hardware damage. +3.2dB when present, 0dB by default.
+
+ nuvoton,dsp-rx-slot-mapping:
+ description:
+ Configures the TDM slot routing for DSP RX functions.
+ Each integer assigns a specific DSP internal function to a TDM slot.
+ The indices of the array correspond to the following hardware functions
+ (0) DACL
+ (1) DACR
+ (2) ANCL
+ (3) ANCR
+ Assigned slots must be unique, except 255 which disables the function.
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 4
+ maxItems: 4
+ items:
+ enum: [ 0, 1, 2, 3, 4, 5, 6, 7, 255 ]
+
+ nuvoton,dsp-tx-slot-mapping:
+ description:
+ Configures the TDM slot routing for DSP TX functions.
+ Each integer assigns a specific DSP internal function to a TDM slot.
+ The indices of the array correspond to the following hardware functions
+ (0) AECL (Acoustic echo cancellation left)
+ (1) AECR (Acoustic echo cancellation right)
+ (2) ISNSL (Current sense left)
+ (3) ISNSR (Current sense right)
+ (4) VSNSL (Voltage sense left)
+ (5) VSNSR (Voltage sense right)
+ (6) TJ (Junction temperature)
+ (7) VBAT (Battery voltage)
+ Assigned slots must be unique, except 255 which disables the function.
+ $ref: /schemas/types.yaml#/definitions/uint32-array
+ minItems: 8
+ maxItems: 8
+ items:
+ enum: [ 0, 1, 2, 3, 4, 5, 6, 7, 255 ]
+
+required:
+ - compatible
+ - reg
+ - firmware-name
+
+allOf:
+ - $ref: dai-common.yaml#
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ i2c {
+ #address-cells = <1>;
+ #size-cells = <0>;
+
+ codec@1a {
+ compatible = "nuvoton,nau8360";
+ reg = <0x1a>;
+ #sound-dai-cells = <0>;
+ firmware-name = "NAU83G60.kcs.bin.l", "NAU83G60.kcs.bin.r";
+ nuvoton,dac-cur-enable;
+ nuvoton,pbtl-enable;
+ nuvoton,dsp-rx-slot-mapping = <0 1 2 3>;
+ nuvoton,dsp-tx-slot-mapping = <0 1 2 3 4 5 6 7>;
+ };
+ };
--
2.25.1
next prev parent reply other threads:[~2026-07-08 9:35 UTC|newest]
Thread overview: 6+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-07-08 9:35 [PATCH v6 0/2] ASoC: codecs: Add Nuvoton NAU83G60 audio codec driver Neo Chang
2026-07-08 9:35 ` Neo Chang [this message]
2026-07-10 6:49 ` [PATCH v6 1/2] ASoC: dt-bindings: nuvoton,nau8360: Add NAU83G60 Krzysztof Kozlowski
2026-07-08 9:35 ` [PATCH v6 2/2] ASoC: codecs: nau8360: Add support for NAU83G60 amplifier Neo Chang
2026-07-08 9:50 ` sashiko-bot
2026-07-08 19:11 ` Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260708093506.895481-2-YLCHANG2@nuvoton.com \
--to=ylchang2@nuvoton.com \
--cc=alsa-devel@alsa-project.org \
--cc=broonie@kernel.org \
--cc=devicetree@vger.kernel.org \
--cc=kchsu0@nuvoton.com \
--cc=krzk+dt@kernel.org \
--cc=lgirdwood@gmail.com \
--cc=linux-sound@vger.kernel.org \
--cc=neo.chang70@gmail.com \
--cc=perex@perex.cz \
--cc=robh@kernel.org \
--cc=sjlin0@nuvoton.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox