1b97ee269SEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause) 2b97ee269SEmmanuel Vadot# Copyright (C) 2022 Microchip Technology, Inc. and its subsidiaries 3b97ee269SEmmanuel Vadot%YAML 1.2 4b97ee269SEmmanuel Vadot--- 5b97ee269SEmmanuel Vadot$id: http://devicetree.org/schemas/sound/atmel,sama5d2-classd.yaml# 6b97ee269SEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 7b97ee269SEmmanuel Vadot 8b97ee269SEmmanuel Vadottitle: Atmel ClassD Amplifier 9b97ee269SEmmanuel Vadot 10b97ee269SEmmanuel Vadotmaintainers: 11b97ee269SEmmanuel Vadot - Nicolas Ferre <nicolas.ferre@microchip.com> 12b97ee269SEmmanuel Vadot - Alexandre Belloni <alexandre.belloni@bootlin.com> 13b97ee269SEmmanuel Vadot - Claudiu Beznea <claudiu.beznea@microchip.com> 14b97ee269SEmmanuel Vadot 15b97ee269SEmmanuel Vadotdescription: 16b97ee269SEmmanuel Vadot The Audio Class D Amplifier (CLASSD) is a digital input, Pulse Width 17b97ee269SEmmanuel Vadot Modulated (PWM) output stereo Class D amplifier. 18b97ee269SEmmanuel Vadot 19b97ee269SEmmanuel Vadotproperties: 20b97ee269SEmmanuel Vadot compatible: 21*01950c46SEmmanuel Vadot oneOf: 22*01950c46SEmmanuel Vadot - items: 23*01950c46SEmmanuel Vadot - const: atmel,sama5d2-classd 24*01950c46SEmmanuel Vadot - items: 25*01950c46SEmmanuel Vadot - const: microchip,sam9x7-classd 26*01950c46SEmmanuel Vadot - const: atmel,sama5d2-classd 27b97ee269SEmmanuel Vadot 28b97ee269SEmmanuel Vadot reg: 29b97ee269SEmmanuel Vadot maxItems: 1 30b97ee269SEmmanuel Vadot 31b97ee269SEmmanuel Vadot interrupts: 32b97ee269SEmmanuel Vadot maxItems: 1 33b97ee269SEmmanuel Vadot 34b97ee269SEmmanuel Vadot dmas: 35b97ee269SEmmanuel Vadot maxItems: 1 36b97ee269SEmmanuel Vadot 37b97ee269SEmmanuel Vadot dma-names: 38b97ee269SEmmanuel Vadot const: tx 39b97ee269SEmmanuel Vadot 40b97ee269SEmmanuel Vadot clocks: 41b97ee269SEmmanuel Vadot maxItems: 2 42b97ee269SEmmanuel Vadot 43b97ee269SEmmanuel Vadot clock-names: 44b97ee269SEmmanuel Vadot items: 45b97ee269SEmmanuel Vadot - const: pclk 46b97ee269SEmmanuel Vadot - const: gclk 47b97ee269SEmmanuel Vadot 48b97ee269SEmmanuel Vadot atmel,model: 49b97ee269SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 50b97ee269SEmmanuel Vadot default: CLASSD 51b97ee269SEmmanuel Vadot description: The user-visible name of this sound complex. 52b97ee269SEmmanuel Vadot 53b97ee269SEmmanuel Vadot atmel,pwm-type: 54b97ee269SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/string 55b97ee269SEmmanuel Vadot enum: 56b97ee269SEmmanuel Vadot - single 57b97ee269SEmmanuel Vadot - diff 58b97ee269SEmmanuel Vadot default: single 59b97ee269SEmmanuel Vadot description: PWM modulation type. 60b97ee269SEmmanuel Vadot 61b97ee269SEmmanuel Vadot atmel,non-overlap-time: 62b97ee269SEmmanuel Vadot $ref: /schemas/types.yaml#/definitions/uint32 63b97ee269SEmmanuel Vadot enum: 64b97ee269SEmmanuel Vadot - 5 65b97ee269SEmmanuel Vadot - 10 66b97ee269SEmmanuel Vadot - 15 67b97ee269SEmmanuel Vadot - 20 68b97ee269SEmmanuel Vadot default: 10 69b97ee269SEmmanuel Vadot description: 70b97ee269SEmmanuel Vadot Set non-overlapping time, the unit is nanosecond(ns). 71b97ee269SEmmanuel Vadot Non-overlapping will be disabled if not specified. 72b97ee269SEmmanuel Vadot 73b97ee269SEmmanuel Vadotrequired: 74b97ee269SEmmanuel Vadot - compatible 75b97ee269SEmmanuel Vadot - reg 76b97ee269SEmmanuel Vadot - interrupts 77b97ee269SEmmanuel Vadot - dmas 78b97ee269SEmmanuel Vadot - dma-names 79b97ee269SEmmanuel Vadot - clock-names 80b97ee269SEmmanuel Vadot - clocks 81b97ee269SEmmanuel Vadot 82b97ee269SEmmanuel VadotadditionalProperties: false 83b97ee269SEmmanuel Vadot 84b97ee269SEmmanuel Vadotexamples: 85b97ee269SEmmanuel Vadot - | 86b97ee269SEmmanuel Vadot #include <dt-bindings/dma/at91.h> 87b97ee269SEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 88b97ee269SEmmanuel Vadot 89b97ee269SEmmanuel Vadot classd: sound@fc048000 { 90b97ee269SEmmanuel Vadot compatible = "atmel,sama5d2-classd"; 91b97ee269SEmmanuel Vadot reg = <0xfc048000 0x100>; 92b97ee269SEmmanuel Vadot interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>; 93b97ee269SEmmanuel Vadot dmas = <&dma0 94b97ee269SEmmanuel Vadot (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) 95b97ee269SEmmanuel Vadot | AT91_XDMAC_DT_PERID(47))>; 96b97ee269SEmmanuel Vadot dma-names = "tx"; 97b97ee269SEmmanuel Vadot clocks = <&classd_clk>, <&classd_gclk>; 98b97ee269SEmmanuel Vadot clock-names = "pclk", "gclk"; 99b97ee269SEmmanuel Vadot assigned-clocks = <&classd_gclk>; 100b97ee269SEmmanuel Vadot pinctrl-names = "default"; 101b97ee269SEmmanuel Vadot pinctrl-0 = <&pinctrl_classd_default>; 102b97ee269SEmmanuel Vadot atmel,model = "classd @ SAMA5D2-Xplained"; 103b97ee269SEmmanuel Vadot atmel,pwm-type = "diff"; 104b97ee269SEmmanuel Vadot atmel,non-overlap-time = <10>; 105b97ee269SEmmanuel Vadot }; 106