Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit cf44fba0 authored by Mark Brown's avatar Mark Brown
Browse files

Merge remote-tracking branch 'asoc/topic/davinci' into asoc-next

parents 07056901 ee2f615d
Loading
Loading
Loading
Loading
+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";
};
+27 −14
Original line number Original line Diff line number Diff line
@@ -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:


@@ -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
+2 −0
Original line number Original line Diff line number Diff line
@@ -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 {
+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
@@ -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
+1 −0
Original line number Original line Diff line number Diff line
@@ -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