Loading Documentation/devicetree/bindings/sound/davinci-evm-audio.txt 0 → 100644 +42 −0 Original line number Original line Diff line number Diff line * Texas Instruments SoC audio setups with TLV320AIC3X Codec Required properties: - compatible : "ti,da830-evm-audio" : forDM365/DA8xx/OMAPL1x/AM33xx - ti,model : The user-visible name of this sound complex. - ti,audio-codec : The phandle of the TLV320AIC3x audio codec - ti,mcasp-controller : The phandle of the McASP controller - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec - ti,audio-routing : A list of the connections between audio components. Each entry is a pair of strings, the first being the connection's sink, the second being the connection's source. Valid names for sources and sinks are the codec's pins, and the jacks on the board: Board connectors: * Headphone Jack * Line Out * Mic Jack * Line In Example: sound { compatible = "ti,da830-evm-audio"; ti,model = "DA830 EVM"; ti,audio-codec = <&tlv320aic3x>; ti,mcasp-controller = <&mcasp1>; ti,codec-clock-rate = <12000000>; ti,audio-routing = "Headphone Jack", "HPLOUT", "Headphone Jack", "HPROUT", "Line Out", "LLOUT", "Line Out", "RLOUT", "MIC3L", "Mic Bias 2V", "MIC3R", "Mic Bias 2V", "Mic Bias 2V", "Mic Jack", "LINE1L", "Line In", "LINE2L", "Line In", "LINE1R", "Line In", "LINE2R", "Line In"; }; Documentation/devicetree/bindings/sound/davinci-mcasp-audio.txt +27 −14 Original line number Original line Diff line number Diff line Loading @@ -4,17 +4,25 @@ Required properties: - compatible : - compatible : "ti,dm646x-mcasp-audio" : for DM646x platforms "ti,dm646x-mcasp-audio" : for DM646x platforms "ti,da830-mcasp-audio" : for both DA830 & DA850 platforms "ti,da830-mcasp-audio" : for both DA830 & DA850 platforms "ti,omap2-mcasp-audio" : for OMAP2 platforms (TI81xx, AM33xx) "ti,am33xx-mcasp-audio" : for AM33xx platforms (AM33xx, TI81xx) - reg : Should contain McASP registers offset and length - interrupts : Interrupt number for McASP - op-mode : I2S/DIT ops mode. - tdm-slots : Slots for TDM operation. - num-serializer : Serializers used by McASP. - serial-dir : A list of serializer pin mode. The list number should be equal to "num-serializer" parameter. Each entry is a number indication serializer pin direction. (0 - INACTIVE, 1 - TX, 2 - RX) - reg : Should contain reg specifiers for the entries in the reg-names property. - reg-names : Should contain: * "mpu" for the main registers (required). For compatibility with existing software, it is recommended this is the first entry. * "dat" for separate data port register access (optional). - op-mode : I2S/DIT ops mode. 0 for I2S mode. 1 for DIT mode used for S/PDIF, IEC60958-1, and AES-3 formats. - tdm-slots : Slots for TDM operation. Indicates number of channels transmitted or received over one serializer. - serial-dir : A list of serializer configuration. Each entry is a number indication for serializer pin direction. (0 - INACTIVE, 1 - TX, 2 - RX) - dmas: two element list of DMA controller phandles and DMA request line ordered pairs. - dma-names: identifier string for each DMA request line in the dmas property. These strings correspond 1:1 with the ordered pairs in dmas. The dma identifiers must be "rx" and "tx". Optional properties: Optional properties: Loading @@ -23,18 +31,23 @@ Optional properties: - rx-num-evt : FIFO levels. - rx-num-evt : FIFO levels. - sram-size-playback : size of sram to be allocated during playback - sram-size-playback : size of sram to be allocated during playback - sram-size-capture : size of sram to be allocated during capture - sram-size-capture : size of sram to be allocated during capture - interrupts : Interrupt numbers for McASP, currently not used by the driver - interrupt-names : Known interrupt names are "tx" and "rx" - pinctrl-0: Should specify pin control group used for this controller. - pinctrl-names: Should contain only one value - "default", for more details please refer to pinctrl-bindings.txt Example: Example: mcasp0: mcasp0@1d00000 { mcasp0: mcasp0@1d00000 { compatible = "ti,da830-mcasp-audio"; compatible = "ti,da830-mcasp-audio"; #address-cells = <1>; #size-cells = <0>; reg = <0x100000 0x3000>; reg = <0x100000 0x3000>; interrupts = <82 83>; reg-names "mpu"; interrupts = <82>, <83>; interrupts-names = "tx", "rx"; op-mode = <0>; /* MCASP_IIS_MODE */ op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; tdm-slots = <2>; num-serializer = <16>; serial-dir = < serial-dir = < 0 0 0 0 /* 0: INACTIVE, 1: TX, 2: RX */ 0 0 0 0 /* 0: INACTIVE, 1: TX, 2: RX */ 0 0 0 0 0 0 0 0 Loading include/linux/platform_data/davinci_asp.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -84,6 +84,8 @@ struct snd_platform_data { u8 version; u8 version; u8 txnumevt; u8 txnumevt; u8 rxnumevt; u8 rxnumevt; int tx_dma_channel; int rx_dma_channel; }; }; enum { enum { Loading sound/soc/davinci/Kconfig +15 −3 Original line number Original line Diff line number Diff line config SND_DAVINCI_SOC config SND_DAVINCI_SOC tristate "SoC Audio for the TI DAVINCI chip" tristate "SoC Audio for the TI DAVINCI or AM33XX chip" depends on ARCH_DAVINCI depends on ARCH_DAVINCI || SOC_AM33XX help help Platform driver for daVinci or AM33xx Say Y or M if you want to add support for codecs attached to Say Y or M if you want to add support for codecs attached to the DAVINCI AC97 or I2S interface. You will also need the DAVINCI AC97, I2S, or McASP interface. You will also need to select the audio interfaces to support below. to select the audio interfaces to support below. config SND_DAVINCI_SOC_I2S config SND_DAVINCI_SOC_I2S Loading @@ -15,6 +16,17 @@ config SND_DAVINCI_SOC_MCASP config SND_DAVINCI_SOC_VCIF config SND_DAVINCI_SOC_VCIF tristate tristate config SND_AM33XX_SOC_EVM tristate "SoC Audio for the AM33XX chip based boards" depends on SND_DAVINCI_SOC && SOC_AM33XX select SND_SOC_TLV320AIC3X select SND_DAVINCI_SOC_MCASP help Say Y or M if you want to add support for SoC audio on AM33XX boards using McASP and TLV320AIC3X codec. For example AM335X-EVM, AM335X-EVMSK, and BeagelBone with AudioCape boards have this setup. config SND_DAVINCI_SOC_EVM config SND_DAVINCI_SOC_EVM tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM" tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM" depends on SND_DAVINCI_SOC depends on SND_DAVINCI_SOC Loading sound/soc/davinci/Makefile +1 −0 Original line number Original line Diff line number Diff line Loading @@ -13,6 +13,7 @@ obj-$(CONFIG_SND_DAVINCI_SOC_VCIF) += snd-soc-davinci-vcif.o snd-soc-evm-objs := davinci-evm.o snd-soc-evm-objs := davinci-evm.o obj-$(CONFIG_SND_DAVINCI_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DAVINCI_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_AM33XX_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DM6467_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DM6467_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA830_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA830_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA850_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA850_SOC_EVM) += snd-soc-evm.o Loading
Documentation/devicetree/bindings/sound/davinci-evm-audio.txt 0 → 100644 +42 −0 Original line number Original line Diff line number Diff line * Texas Instruments SoC audio setups with TLV320AIC3X Codec Required properties: - compatible : "ti,da830-evm-audio" : forDM365/DA8xx/OMAPL1x/AM33xx - ti,model : The user-visible name of this sound complex. - ti,audio-codec : The phandle of the TLV320AIC3x audio codec - ti,mcasp-controller : The phandle of the McASP controller - ti,codec-clock-rate : The Codec Clock rate (in Hz) applied to the Codec - ti,audio-routing : A list of the connections between audio components. Each entry is a pair of strings, the first being the connection's sink, the second being the connection's source. Valid names for sources and sinks are the codec's pins, and the jacks on the board: Board connectors: * Headphone Jack * Line Out * Mic Jack * Line In Example: sound { compatible = "ti,da830-evm-audio"; ti,model = "DA830 EVM"; ti,audio-codec = <&tlv320aic3x>; ti,mcasp-controller = <&mcasp1>; ti,codec-clock-rate = <12000000>; ti,audio-routing = "Headphone Jack", "HPLOUT", "Headphone Jack", "HPROUT", "Line Out", "LLOUT", "Line Out", "RLOUT", "MIC3L", "Mic Bias 2V", "MIC3R", "Mic Bias 2V", "Mic Bias 2V", "Mic Jack", "LINE1L", "Line In", "LINE2L", "Line In", "LINE1R", "Line In", "LINE2R", "Line In"; };
Documentation/devicetree/bindings/sound/davinci-mcasp-audio.txt +27 −14 Original line number Original line Diff line number Diff line Loading @@ -4,17 +4,25 @@ Required properties: - compatible : - compatible : "ti,dm646x-mcasp-audio" : for DM646x platforms "ti,dm646x-mcasp-audio" : for DM646x platforms "ti,da830-mcasp-audio" : for both DA830 & DA850 platforms "ti,da830-mcasp-audio" : for both DA830 & DA850 platforms "ti,omap2-mcasp-audio" : for OMAP2 platforms (TI81xx, AM33xx) "ti,am33xx-mcasp-audio" : for AM33xx platforms (AM33xx, TI81xx) - reg : Should contain McASP registers offset and length - interrupts : Interrupt number for McASP - op-mode : I2S/DIT ops mode. - tdm-slots : Slots for TDM operation. - num-serializer : Serializers used by McASP. - serial-dir : A list of serializer pin mode. The list number should be equal to "num-serializer" parameter. Each entry is a number indication serializer pin direction. (0 - INACTIVE, 1 - TX, 2 - RX) - reg : Should contain reg specifiers for the entries in the reg-names property. - reg-names : Should contain: * "mpu" for the main registers (required). For compatibility with existing software, it is recommended this is the first entry. * "dat" for separate data port register access (optional). - op-mode : I2S/DIT ops mode. 0 for I2S mode. 1 for DIT mode used for S/PDIF, IEC60958-1, and AES-3 formats. - tdm-slots : Slots for TDM operation. Indicates number of channels transmitted or received over one serializer. - serial-dir : A list of serializer configuration. Each entry is a number indication for serializer pin direction. (0 - INACTIVE, 1 - TX, 2 - RX) - dmas: two element list of DMA controller phandles and DMA request line ordered pairs. - dma-names: identifier string for each DMA request line in the dmas property. These strings correspond 1:1 with the ordered pairs in dmas. The dma identifiers must be "rx" and "tx". Optional properties: Optional properties: Loading @@ -23,18 +31,23 @@ Optional properties: - rx-num-evt : FIFO levels. - rx-num-evt : FIFO levels. - sram-size-playback : size of sram to be allocated during playback - sram-size-playback : size of sram to be allocated during playback - sram-size-capture : size of sram to be allocated during capture - sram-size-capture : size of sram to be allocated during capture - interrupts : Interrupt numbers for McASP, currently not used by the driver - interrupt-names : Known interrupt names are "tx" and "rx" - pinctrl-0: Should specify pin control group used for this controller. - pinctrl-names: Should contain only one value - "default", for more details please refer to pinctrl-bindings.txt Example: Example: mcasp0: mcasp0@1d00000 { mcasp0: mcasp0@1d00000 { compatible = "ti,da830-mcasp-audio"; compatible = "ti,da830-mcasp-audio"; #address-cells = <1>; #size-cells = <0>; reg = <0x100000 0x3000>; reg = <0x100000 0x3000>; interrupts = <82 83>; reg-names "mpu"; interrupts = <82>, <83>; interrupts-names = "tx", "rx"; op-mode = <0>; /* MCASP_IIS_MODE */ op-mode = <0>; /* MCASP_IIS_MODE */ tdm-slots = <2>; tdm-slots = <2>; num-serializer = <16>; serial-dir = < serial-dir = < 0 0 0 0 /* 0: INACTIVE, 1: TX, 2: RX */ 0 0 0 0 /* 0: INACTIVE, 1: TX, 2: RX */ 0 0 0 0 0 0 0 0 Loading
include/linux/platform_data/davinci_asp.h +2 −0 Original line number Original line Diff line number Diff line Loading @@ -84,6 +84,8 @@ struct snd_platform_data { u8 version; u8 version; u8 txnumevt; u8 txnumevt; u8 rxnumevt; u8 rxnumevt; int tx_dma_channel; int rx_dma_channel; }; }; enum { enum { Loading
sound/soc/davinci/Kconfig +15 −3 Original line number Original line Diff line number Diff line config SND_DAVINCI_SOC config SND_DAVINCI_SOC tristate "SoC Audio for the TI DAVINCI chip" tristate "SoC Audio for the TI DAVINCI or AM33XX chip" depends on ARCH_DAVINCI depends on ARCH_DAVINCI || SOC_AM33XX help help Platform driver for daVinci or AM33xx Say Y or M if you want to add support for codecs attached to Say Y or M if you want to add support for codecs attached to the DAVINCI AC97 or I2S interface. You will also need the DAVINCI AC97, I2S, or McASP interface. You will also need to select the audio interfaces to support below. to select the audio interfaces to support below. config SND_DAVINCI_SOC_I2S config SND_DAVINCI_SOC_I2S Loading @@ -15,6 +16,17 @@ config SND_DAVINCI_SOC_MCASP config SND_DAVINCI_SOC_VCIF config SND_DAVINCI_SOC_VCIF tristate tristate config SND_AM33XX_SOC_EVM tristate "SoC Audio for the AM33XX chip based boards" depends on SND_DAVINCI_SOC && SOC_AM33XX select SND_SOC_TLV320AIC3X select SND_DAVINCI_SOC_MCASP help Say Y or M if you want to add support for SoC audio on AM33XX boards using McASP and TLV320AIC3X codec. For example AM335X-EVM, AM335X-EVMSK, and BeagelBone with AudioCape boards have this setup. config SND_DAVINCI_SOC_EVM config SND_DAVINCI_SOC_EVM tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM" tristate "SoC Audio support for DaVinci DM6446, DM355 or DM365 EVM" depends on SND_DAVINCI_SOC depends on SND_DAVINCI_SOC Loading
sound/soc/davinci/Makefile +1 −0 Original line number Original line Diff line number Diff line Loading @@ -13,6 +13,7 @@ obj-$(CONFIG_SND_DAVINCI_SOC_VCIF) += snd-soc-davinci-vcif.o snd-soc-evm-objs := davinci-evm.o snd-soc-evm-objs := davinci-evm.o obj-$(CONFIG_SND_DAVINCI_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DAVINCI_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_AM33XX_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DM6467_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DM6467_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA830_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA830_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA850_SOC_EVM) += snd-soc-evm.o obj-$(CONFIG_SND_DA850_SOC_EVM) += snd-soc-evm.o