[PATCH v2] ASoC: dt-bindings: sound: atmel_ac97c: Convert to DT schema
Manish Baing
manishbaing2789 at gmail.com
Sun May 24 12:53:18 PDT 2026
Convert the Atmel AC97 controller binding from text
format to YAML schema.
Signed-off-by: Manish Baing <manishbaing2789 at gmail.com>
---
Changes in v2:
- Added undocumented 'clocks' and 'clock-names' properties which are
unconditionally required by the driver.
- Removed 'ac97-gpios' from the required list, as the driver treats
it as optional, fixing validation for existing dtsi files.
.../sound/atmel,at91sam9263-ac97c.yaml | 70 +++++++++++++++++++
.../devicetree/bindings/sound/atmel_ac97c.txt | 20 ------
2 files changed, 70 insertions(+), 20 deletions(-)
create mode 100644 Documentation/devicetree/bindings/sound/atmel,at91sam9263-ac97c.yaml
delete mode 100644 Documentation/devicetree/bindings/sound/atmel_ac97c.txt
diff --git a/Documentation/devicetree/bindings/sound/atmel,at91sam9263-ac97c.yaml b/Documentation/devicetree/bindings/sound/atmel,at91sam9263-ac97c.yaml
new file mode 100644
index 000000000000..5f4ebe81bf90
--- /dev/null
+++ b/Documentation/devicetree/bindings/sound/atmel,at91sam9263-ac97c.yaml
@@ -0,0 +1,70 @@
+# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
+%YAML 1.2
+---
+$id: http://devicetree.org/schemas/sound/atmel,at91sam9263-ac97c.yaml#
+$schema: http://devicetree.org/meta-schemas/core.yaml#
+
+title: Atmel AC97 Controller
+
+maintainers:
+ - Nicolas Ferre <nicolas.ferre at microchip.com>
+ - Alexandre Belloni <alexandre.belloni at bootlin.com>
+
+allOf:
+ - $ref: dai-common.yaml#
+
+properties:
+ compatible:
+ const: atmel,at91sam9263-ac97c
+
+ reg:
+ maxItems: 1
+ description: Address and length of the register set for the device.
+
+ interrupts:
+ maxItems: 1
+ description: Should contain the AC97 interrupt.
+
+ clocks:
+ maxItems: 1
+
+ clock-names:
+ const: ac97_clk
+
+ ac97-gpios:
+ minItems: 3
+ maxItems: 4
+ description: |
+ AC97 link GPIOs- sync, sdata_out, reset, and optional sdata_in.
+ The driver primarily uses the reset pin.
+
+ pinctrl-0: true
+
+ pinctrl-names:
+ const: default
+
+required:
+ - compatible
+ - reg
+ - interrupts
+ - clocks
+ - clock-names
+
+unevaluatedProperties: false
+
+examples:
+ - |
+ #include <dt-bindings/interrupt-controller/irq.h>
+ #include <dt-bindings/gpio/gpio.h>
+ #include <dt-bindings/clock/at91.h>
+
+ sound at fffa0000 {
+ compatible = "atmel,at91sam9263-ac97c";
+ reg = <0xfffa0000 0x4000>;
+ interrupts = <18 IRQ_TYPE_LEVEL_HIGH 5>;
+ clocks = <&pmc PMC_TYPE_PERIPHERAL 2>;
+ clock-names = "ac97_clk";
+ pinctrl-names = "default";
+ pinctrl-0 = <&pinctrl_ac97>;
+ ac97-gpios = <&pioB 0 0>, <&pioB 2 0>, <&pioC 29 GPIO_ACTIVE_LOW>;
+ };
diff --git a/Documentation/devicetree/bindings/sound/atmel_ac97c.txt b/Documentation/devicetree/bindings/sound/atmel_ac97c.txt
deleted file mode 100644
index b151bd902ce3..000000000000
--- a/Documentation/devicetree/bindings/sound/atmel_ac97c.txt
+++ /dev/null
@@ -1,20 +0,0 @@
-* Atmel AC97 controller
-
-Required properties:
- - compatible: "atmel,at91sam9263-ac97c"
- - reg: Address and length of the register set for the device
- - interrupts: Should contain AC97 interrupt
- - ac97-gpios: Please refer to soc-ac97link.txt, only ac97-reset is used
-Optional properties:
- - pinctrl-names, pinctrl-0: Please refer to pinctrl-bindings.txt
-
-Example:
-sound at fffa0000 {
- compatible = "atmel,at91sam9263-ac97c";
- pinctrl-names = "default";
- pinctrl-0 = <&pinctrl_ac97>;
- reg = <0xfffa0000 0x4000>;
- interrupts = <18 IRQ_TYPE_LEVEL_HIGH 5>;
-
- ac97-gpios = <&pioB 0 0 &pioB 2 0 &pioC 29 GPIO_ACTIVE_LOW>;
-};
--
2.43.0
More information about the linux-arm-kernel
mailing list