18c2ecf20Sopenharmony_ci* Atmel ClassD driver under ALSA SoC architecture
28c2ecf20Sopenharmony_ci
38c2ecf20Sopenharmony_ciRequired properties:
48c2ecf20Sopenharmony_ci- compatible
58c2ecf20Sopenharmony_ci	Should be "atmel,sama5d2-classd".
68c2ecf20Sopenharmony_ci- reg
78c2ecf20Sopenharmony_ci	Should contain ClassD registers location and length.
88c2ecf20Sopenharmony_ci- interrupts
98c2ecf20Sopenharmony_ci	Should contain the IRQ line for the ClassD.
108c2ecf20Sopenharmony_ci- dmas
118c2ecf20Sopenharmony_ci	One DMA specifiers as described in atmel-dma.txt and dma.txt files.
128c2ecf20Sopenharmony_ci- dma-names
138c2ecf20Sopenharmony_ci	Must be "tx".
148c2ecf20Sopenharmony_ci- clock-names
158c2ecf20Sopenharmony_ci	Tuple listing input clock names.
168c2ecf20Sopenharmony_ci	Required elements: "pclk" and "gclk".
178c2ecf20Sopenharmony_ci- clocks
188c2ecf20Sopenharmony_ci	Please refer to clock-bindings.txt.
198c2ecf20Sopenharmony_ci- assigned-clocks
208c2ecf20Sopenharmony_ci	Should be <&classd_gclk>.
218c2ecf20Sopenharmony_ci
228c2ecf20Sopenharmony_ciOptional properties:
238c2ecf20Sopenharmony_ci- pinctrl-names, pinctrl-0
248c2ecf20Sopenharmony_ci	Please refer to pinctrl-bindings.txt.
258c2ecf20Sopenharmony_ci- atmel,model
268c2ecf20Sopenharmony_ci	The user-visible name of this sound complex.
278c2ecf20Sopenharmony_ci	The default value is "CLASSD".
288c2ecf20Sopenharmony_ci- atmel,pwm-type
298c2ecf20Sopenharmony_ci	PWM modulation type, "single" or "diff".
308c2ecf20Sopenharmony_ci	The default value is "single".
318c2ecf20Sopenharmony_ci- atmel,non-overlap-time
328c2ecf20Sopenharmony_ci	Set non-overlapping time, the unit is nanosecond(ns).
338c2ecf20Sopenharmony_ci	There are four values,
348c2ecf20Sopenharmony_ci	<5>, <10>, <15>, <20>, the default value is <10>.
358c2ecf20Sopenharmony_ci	Non-overlapping will be disabled if not specified.
368c2ecf20Sopenharmony_ci
378c2ecf20Sopenharmony_ciExample:
388c2ecf20Sopenharmony_ciclassd: classd@fc048000 {
398c2ecf20Sopenharmony_ci		compatible = "atmel,sama5d2-classd";
408c2ecf20Sopenharmony_ci		reg = <0xfc048000 0x100>;
418c2ecf20Sopenharmony_ci		interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>;
428c2ecf20Sopenharmony_ci		dmas = <&dma0
438c2ecf20Sopenharmony_ci			(AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1)
448c2ecf20Sopenharmony_ci			| AT91_XDMAC_DT_PERID(47))>;
458c2ecf20Sopenharmony_ci		dma-names = "tx";
468c2ecf20Sopenharmony_ci		clocks = <&classd_clk>, <&classd_gclk>;
478c2ecf20Sopenharmony_ci		clock-names = "pclk", "gclk";
488c2ecf20Sopenharmony_ci		assigned-clocks = <&classd_gclk>;
498c2ecf20Sopenharmony_ci
508c2ecf20Sopenharmony_ci		pinctrl-names = "default";
518c2ecf20Sopenharmony_ci		pinctrl-0 = <&pinctrl_classd_default>;
528c2ecf20Sopenharmony_ci		atmel,model = "classd @ SAMA5D2-Xplained";
538c2ecf20Sopenharmony_ci		atmel,pwm-type = "diff";
548c2ecf20Sopenharmony_ci		atmel,non-overlap-time = <10>;
558c2ecf20Sopenharmony_ci};
56