1*c66ec88fSEmmanuel Vadot* Atmel ClassD driver under ALSA SoC architecture 2*c66ec88fSEmmanuel Vadot 3*c66ec88fSEmmanuel VadotRequired properties: 4*c66ec88fSEmmanuel Vadot- compatible 5*c66ec88fSEmmanuel Vadot Should be "atmel,sama5d2-classd". 6*c66ec88fSEmmanuel Vadot- reg 7*c66ec88fSEmmanuel Vadot Should contain ClassD registers location and length. 8*c66ec88fSEmmanuel Vadot- interrupts 9*c66ec88fSEmmanuel Vadot Should contain the IRQ line for the ClassD. 10*c66ec88fSEmmanuel Vadot- dmas 11*c66ec88fSEmmanuel Vadot One DMA specifiers as described in atmel-dma.txt and dma.txt files. 12*c66ec88fSEmmanuel Vadot- dma-names 13*c66ec88fSEmmanuel Vadot Must be "tx". 14*c66ec88fSEmmanuel Vadot- clock-names 15*c66ec88fSEmmanuel Vadot Tuple listing input clock names. 16*c66ec88fSEmmanuel Vadot Required elements: "pclk" and "gclk". 17*c66ec88fSEmmanuel Vadot- clocks 18*c66ec88fSEmmanuel Vadot Please refer to clock-bindings.txt. 19*c66ec88fSEmmanuel Vadot- assigned-clocks 20*c66ec88fSEmmanuel Vadot Should be <&classd_gclk>. 21*c66ec88fSEmmanuel Vadot 22*c66ec88fSEmmanuel VadotOptional properties: 23*c66ec88fSEmmanuel Vadot- pinctrl-names, pinctrl-0 24*c66ec88fSEmmanuel Vadot Please refer to pinctrl-bindings.txt. 25*c66ec88fSEmmanuel Vadot- atmel,model 26*c66ec88fSEmmanuel Vadot The user-visible name of this sound complex. 27*c66ec88fSEmmanuel Vadot The default value is "CLASSD". 28*c66ec88fSEmmanuel Vadot- atmel,pwm-type 29*c66ec88fSEmmanuel Vadot PWM modulation type, "single" or "diff". 30*c66ec88fSEmmanuel Vadot The default value is "single". 31*c66ec88fSEmmanuel Vadot- atmel,non-overlap-time 32*c66ec88fSEmmanuel Vadot Set non-overlapping time, the unit is nanosecond(ns). 33*c66ec88fSEmmanuel Vadot There are four values, 34*c66ec88fSEmmanuel Vadot <5>, <10>, <15>, <20>, the default value is <10>. 35*c66ec88fSEmmanuel Vadot Non-overlapping will be disabled if not specified. 36*c66ec88fSEmmanuel Vadot 37*c66ec88fSEmmanuel VadotExample: 38*c66ec88fSEmmanuel Vadotclassd: classd@fc048000 { 39*c66ec88fSEmmanuel Vadot compatible = "atmel,sama5d2-classd"; 40*c66ec88fSEmmanuel Vadot reg = <0xfc048000 0x100>; 41*c66ec88fSEmmanuel Vadot interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>; 42*c66ec88fSEmmanuel Vadot dmas = <&dma0 43*c66ec88fSEmmanuel Vadot (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) 44*c66ec88fSEmmanuel Vadot | AT91_XDMAC_DT_PERID(47))>; 45*c66ec88fSEmmanuel Vadot dma-names = "tx"; 46*c66ec88fSEmmanuel Vadot clocks = <&classd_clk>, <&classd_gclk>; 47*c66ec88fSEmmanuel Vadot clock-names = "pclk", "gclk"; 48*c66ec88fSEmmanuel Vadot assigned-clocks = <&classd_gclk>; 49*c66ec88fSEmmanuel Vadot 50*c66ec88fSEmmanuel Vadot pinctrl-names = "default"; 51*c66ec88fSEmmanuel Vadot pinctrl-0 = <&pinctrl_classd_default>; 52*c66ec88fSEmmanuel Vadot atmel,model = "classd @ SAMA5D2-Xplained"; 53*c66ec88fSEmmanuel Vadot atmel,pwm-type = "diff"; 54*c66ec88fSEmmanuel Vadot atmel,non-overlap-time = <10>; 55*c66ec88fSEmmanuel Vadot}; 56