Loading Documentation/devicetree/bindings/sound/atmel-classd.txt 0 → 100644 +52 −0 Original line number Diff line number Diff line * Atmel ClassD driver under ALSA SoC architecture Required properties: - compatible Should be "atmel,sama5d2-classd". - reg Should contain ClassD registers location and length. - interrupts Should contain the IRQ line for the ClassD. - dmas One DMA specifiers as described in atmel-dma.txt and dma.txt files. - dma-names Must be "tx". - clock-names Tuple listing input clock names. Required elements: "pclk", "gclk" and "aclk". - clocks Please refer to clock-bindings.txt. Optional properties: - pinctrl-names, pinctrl-0 Please refer to pinctrl-bindings.txt. - atmel,model The user-visible name of this sound complex. The default value is "CLASSD". - atmel,pwm-type PWM modulation type, "single" or "diff". The default value is "single". - atmel,non-overlap-time Set non-overlapping time, the unit is nanosecond(ns). There are four values, <5>, <10>, <15>, <20>, the default value is <10>. Non-overlapping will be disabled if not specified. Example: classd: classd@fc048000 { compatible = "atmel,sama5d2-classd"; reg = <0xfc048000 0x100>; interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>; dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(47))>; dma-names = "tx"; clocks = <&classd_clk>, <&classd_gclk>, <&audio_pll_pmc>; clock-names = "pclk", "gclk", "aclk"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_classd_default>; atmel,model = "classd @ SAMA5D2-Xplained"; atmel,pwm-type = "diff"; atmel,non-overlap-time = <10>; }; Documentation/devicetree/bindings/sound/da7213.txt 0 → 100644 +41 −0 Original line number Diff line number Diff line Dialog Semiconductor DA7213 Audio Codec bindings ====== Required properties: - compatible : Should be "dlg,da7213" - reg: Specifies the I2C slave address Optional properties: - clocks : phandle and clock specifier for codec MCLK. - clock-names : Clock name string for 'clocks' attribute, should be "mclk". - dlg,micbias1-lvl : Voltage (mV) for Mic Bias 1 [<1600>, <2200>, <2500>, <3000>] - dlg,micbias2-lvl : Voltage (mV) for Mic Bias 2 [<1600>, <2200>, <2500>, <3000>] - dlg,dmic-data-sel : DMIC channel select based on clock edge. ["lrise_rfall", "lfall_rrise"] - dlg,dmic-samplephase : When to sample audio from DMIC. ["on_clkedge", "between_clkedge"] - dlg,dmic-clkrate : DMIC clock frequency (Hz). [<1500000>, <3000000>] ====== Example: codec_i2c: da7213@1a { compatible = "dlg,da7213"; reg = <0x1a>; clocks = <&clks 201>; clock-names = "mclk"; dlg,micbias1-lvl = <2500>; dlg,micbias2-lvl = <2500>; dlg,dmic-data-sel = "lrise_rfall"; dlg,dmic-samplephase = "between_clkedge"; dlg,dmic-clkrate = <3000000>; }; include/sound/da7213.h +0 −3 Original line number Diff line number Diff line Loading @@ -44,9 +44,6 @@ struct da7213_platform_data { enum da7213_dmic_data_sel dmic_data_sel; enum da7213_dmic_samplephase dmic_samplephase; enum da7213_dmic_clk_rate dmic_clk_rate; /* MCLK squaring config */ bool mclk_squaring; }; #endif /* _DA7213_PDATA_H */ sound/soc/atmel/Kconfig +9 −0 Original line number Diff line number Diff line Loading @@ -59,4 +59,13 @@ config SND_AT91_SOC_SAM9X5_WM8731 help Say Y if you want to add support for audio SoC on an at91sam9x5 based board that is using WM8731 codec. config SND_ATMEL_SOC_CLASSD tristate "Atmel ASoC driver for boards using CLASSD" depends on ARCH_AT91 || COMPILE_TEST select SND_ATMEL_SOC_DMA select REGMAP_MMIO help Say Y if you want to add support for Atmel ASoC driver for boards using CLASSD. endif sound/soc/atmel/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -11,7 +11,9 @@ obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o snd-soc-sam9g20-wm8731-objs := sam9g20_wm8731.o snd-atmel-soc-wm8904-objs := atmel_wm8904.o snd-soc-sam9x5-wm8731-objs := sam9x5_wm8731.o snd-atmel-soc-classd-objs := atmel-classd.o obj-$(CONFIG_SND_AT91_SOC_SAM9G20_WM8731) += snd-soc-sam9g20-wm8731.o obj-$(CONFIG_SND_ATMEL_SOC_WM8904) += snd-atmel-soc-wm8904.o obj-$(CONFIG_SND_AT91_SOC_SAM9X5_WM8731) += snd-soc-sam9x5-wm8731.o obj-$(CONFIG_SND_ATMEL_SOC_CLASSD) += snd-atmel-soc-classd.o Loading
Documentation/devicetree/bindings/sound/atmel-classd.txt 0 → 100644 +52 −0 Original line number Diff line number Diff line * Atmel ClassD driver under ALSA SoC architecture Required properties: - compatible Should be "atmel,sama5d2-classd". - reg Should contain ClassD registers location and length. - interrupts Should contain the IRQ line for the ClassD. - dmas One DMA specifiers as described in atmel-dma.txt and dma.txt files. - dma-names Must be "tx". - clock-names Tuple listing input clock names. Required elements: "pclk", "gclk" and "aclk". - clocks Please refer to clock-bindings.txt. Optional properties: - pinctrl-names, pinctrl-0 Please refer to pinctrl-bindings.txt. - atmel,model The user-visible name of this sound complex. The default value is "CLASSD". - atmel,pwm-type PWM modulation type, "single" or "diff". The default value is "single". - atmel,non-overlap-time Set non-overlapping time, the unit is nanosecond(ns). There are four values, <5>, <10>, <15>, <20>, the default value is <10>. Non-overlapping will be disabled if not specified. Example: classd: classd@fc048000 { compatible = "atmel,sama5d2-classd"; reg = <0xfc048000 0x100>; interrupts = <59 IRQ_TYPE_LEVEL_HIGH 7>; dmas = <&dma0 (AT91_XDMAC_DT_MEM_IF(0) | AT91_XDMAC_DT_PER_IF(1) | AT91_XDMAC_DT_PERID(47))>; dma-names = "tx"; clocks = <&classd_clk>, <&classd_gclk>, <&audio_pll_pmc>; clock-names = "pclk", "gclk", "aclk"; pinctrl-names = "default"; pinctrl-0 = <&pinctrl_classd_default>; atmel,model = "classd @ SAMA5D2-Xplained"; atmel,pwm-type = "diff"; atmel,non-overlap-time = <10>; };
Documentation/devicetree/bindings/sound/da7213.txt 0 → 100644 +41 −0 Original line number Diff line number Diff line Dialog Semiconductor DA7213 Audio Codec bindings ====== Required properties: - compatible : Should be "dlg,da7213" - reg: Specifies the I2C slave address Optional properties: - clocks : phandle and clock specifier for codec MCLK. - clock-names : Clock name string for 'clocks' attribute, should be "mclk". - dlg,micbias1-lvl : Voltage (mV) for Mic Bias 1 [<1600>, <2200>, <2500>, <3000>] - dlg,micbias2-lvl : Voltage (mV) for Mic Bias 2 [<1600>, <2200>, <2500>, <3000>] - dlg,dmic-data-sel : DMIC channel select based on clock edge. ["lrise_rfall", "lfall_rrise"] - dlg,dmic-samplephase : When to sample audio from DMIC. ["on_clkedge", "between_clkedge"] - dlg,dmic-clkrate : DMIC clock frequency (Hz). [<1500000>, <3000000>] ====== Example: codec_i2c: da7213@1a { compatible = "dlg,da7213"; reg = <0x1a>; clocks = <&clks 201>; clock-names = "mclk"; dlg,micbias1-lvl = <2500>; dlg,micbias2-lvl = <2500>; dlg,dmic-data-sel = "lrise_rfall"; dlg,dmic-samplephase = "between_clkedge"; dlg,dmic-clkrate = <3000000>; };
include/sound/da7213.h +0 −3 Original line number Diff line number Diff line Loading @@ -44,9 +44,6 @@ struct da7213_platform_data { enum da7213_dmic_data_sel dmic_data_sel; enum da7213_dmic_samplephase dmic_samplephase; enum da7213_dmic_clk_rate dmic_clk_rate; /* MCLK squaring config */ bool mclk_squaring; }; #endif /* _DA7213_PDATA_H */
sound/soc/atmel/Kconfig +9 −0 Original line number Diff line number Diff line Loading @@ -59,4 +59,13 @@ config SND_AT91_SOC_SAM9X5_WM8731 help Say Y if you want to add support for audio SoC on an at91sam9x5 based board that is using WM8731 codec. config SND_ATMEL_SOC_CLASSD tristate "Atmel ASoC driver for boards using CLASSD" depends on ARCH_AT91 || COMPILE_TEST select SND_ATMEL_SOC_DMA select REGMAP_MMIO help Say Y if you want to add support for Atmel ASoC driver for boards using CLASSD. endif
sound/soc/atmel/Makefile +2 −0 Original line number Diff line number Diff line Loading @@ -11,7 +11,9 @@ obj-$(CONFIG_SND_ATMEL_SOC_SSC) += snd-soc-atmel_ssc_dai.o snd-soc-sam9g20-wm8731-objs := sam9g20_wm8731.o snd-atmel-soc-wm8904-objs := atmel_wm8904.o snd-soc-sam9x5-wm8731-objs := sam9x5_wm8731.o snd-atmel-soc-classd-objs := atmel-classd.o obj-$(CONFIG_SND_AT91_SOC_SAM9G20_WM8731) += snd-soc-sam9g20-wm8731.o obj-$(CONFIG_SND_ATMEL_SOC_WM8904) += snd-atmel-soc-wm8904.o obj-$(CONFIG_SND_AT91_SOC_SAM9X5_WM8731) += snd-soc-sam9x5-wm8731.o obj-$(CONFIG_SND_ATMEL_SOC_CLASSD) += snd-atmel-soc-classd.o