Loading Documentation/devicetree/bindings/sound/qcom-audio-dev.txt +91 −0 Original line number Diff line number Diff line Loading @@ -1613,3 +1613,94 @@ sound { asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; }; * MDMCALIFORNIUM ASoC Machine driver - compatible : "qcom,mdm-audio-tasha" for tasha codec and node is "sound" - qcom,model : The user-visible name of this sound card. - qcom,tasha-mclk-clk-freq : MCLK frequency value for tasha codec and node is "sound-9335" - qcom,audio-routing : A list of the connections between audio components. - asoc-platform: This is phandle list containing the references to platform device nodes that are used as part of the sound card dai-links. - asoc-platform-names: This property contains list of platform names. The order of the platform names should match to that of the phandle order given in "asoc-platform". - asoc-cpu: This is phandle list containing the references to cpu dai device nodes that are used as part of the sound card dai-links. - asoc-cpu-names: This property contains list of cpu dai names. The order of the cpu dai names should match to that of the phandle order given in "asoc-cpu". The cpu names are in the form of "%s.%d" form, where the id (%d) field represents the back-end AFE port id that this CPU dai is associated with. - asoc-codec: This is phandle list containing the references to codec dai device nodes that are used as part of the sound card dai-links. - asoc-codec-names: This property contains list of codec dai names. The order of the codec dai names should match to that of the phandle order given in "asoc-codec". Optional properties: - clock-names : clock name defined for external clock. - clocks : external clock defined for codec clock. - qcom,hph-en1-gpio : GPIO to enable HiFi amplifiers. - qcom,hph-en0-gpio : GPIO to enable HiFi audio route to headset. Example: sound { compatible = "qcom,mdm-audio-tasha"; qcom,model = "mdm-tasha-i2s-snd-card"; qcom,audio-routing = "RX_BIAS", "MCLK", "LDO_H", "MCLK", "AIF4 MAD", "MCLK", "ultrasound amp", "LINEOUT1", "ultrasound amp", "LINEOUT3", "AMIC1", "MIC BIAS1 Internal1", "MIC BIAS1 Internal1", "Handset Mic", "AMIC2", "MIC BIAS2 External", "MIC BIAS2 External", "Headset Mic", "AMIC3", "MIC BIAS2 External", "MIC BIAS2 External", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2 External", "MIC BIAS2 External", "ANCLeft Headset Mic", "DMIC1", "MIC BIAS1 External", "MIC BIAS1 External", "Digital Mic1", "DMIC2", "MIC BIAS1 External", "MIC BIAS1 External", "Digital Mic2", "DMIC3", "MIC BIAS3 External", "MIC BIAS3 External", "Digital Mic3", "DMIC4", "MIC BIAS3 External", "MIC BIAS3 External", "Digital Mic4", "DMIC5", "MIC BIAS4 External", "MIC BIAS4 External", "Digital Mic5", "DMIC6", "MIC BIAS4 External", "MIC BIAS4 External", "Digital Mic6"; qcom,tasha-mclk-clk-freq = <12288000>; asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>, <&loopback>, <&hostless>, <&afe>, <&routing>, <&pcm_dtmf>, <&host_pcm>; asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1", "msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback", "msm-pcm-hostless", "msm-pcm-afe", "msm-pcm-routing", "msm-pcm-dtmf", "msm-voice-host-pcm"; asoc-cpu = <&dai_pri_auxpcm>, <&mi2s_prim>, <&dtmf_tx>, <&rx_capture_tx>, <&rx_playback_rx>, <&tx_capture_tx>, <&tx_playback_rx>, <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>, <&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>; asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-mi2s.0", "msm-dai-stub-dev.4", "msm-dai-stub-dev.5", "msm-dai-stub-dev.6", "msm-dai-stub-dev.7", "msm-dai-stub-dev.8", "msm-dai-q6-dev.224", "msm-dai-q6-dev.225", "msm-dai-q6-dev.241", "msm-dai-q6-dev.240", "msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773"; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; qcom,aux-codec = <&stub_codec>; }; arch/arm/configs/mdm_defconfig +5 −0 Original line number Diff line number Diff line Loading @@ -222,6 +222,8 @@ CONFIG_MSM_SMD_PKT=y CONFIG_I2C=y CONFIG_I2C_CHARDEV=y CONFIG_I2C_MSM_V2=y CONFIG_SLIMBUS=y CONFIG_SOUNDWIRE=y CONFIG_SPI=y CONFIG_SPI_QUP=y CONFIG_SPI_SPIDEV=m Loading @@ -241,6 +243,7 @@ CONFIG_SENSORS_QPNP_ADC_VOLTAGE=y CONFIG_THERMAL=y CONFIG_THERMAL_TSENS8974=y CONFIG_THERMAL_QPNP_ADC_TM=y CONFIG_WCD9335_CODEC=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_STUB=y CONFIG_REGULATOR_MEM_ACC=y Loading @@ -249,6 +252,7 @@ CONFIG_REGULATOR_CPR=y CONFIG_SOUND=y CONFIG_SND=y CONFIG_SND_SOC=y CONFIG_SND_SOC_MDMCALIFORNIUM=y CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_XHCI_HCD=y Loading Loading @@ -308,6 +312,7 @@ CONFIG_RMNET_IPA3=y CONFIG_MSM_SPMI=y CONFIG_MSM_SPMI_PMIC_ARB=y CONFIG_MSM_QPNP_INT=y CONFIG_MSM_ADSP_LOADER=y CONFIG_MSM_MEMORY_DUMP_V2=y CONFIG_MSM_BOOT_STATS=y CONFIG_MSM_COMMON_LOG=y Loading sound/soc/msm/Kconfig +18 −0 Original line number Diff line number Diff line Loading @@ -184,4 +184,22 @@ config SND_SOC_MSM8X16 the machine driver and the corresponding DAI-links config SND_SOC_MDMCALIFORNIUM tristate "SoC Machine driver for MDMCALIFORNIUM boards" depends on ARCH_MDMCALIFORNIUM select SND_SOC_QDSP6V2 select SND_SOC_MSM_STUB select SND_SOC_MSM_HOSTLESS_PCM select SND_DYNAMIC_MINORS select MSM_QDSP6_APRV3 select MSM_QDSP6V2_CODECS select SND_SOC_WCD9335 select SND_SOC_WSA881X select SND_HWDEP help To add support for SoC audio on MDMCALIFORNIUM. This will enable sound soc drivers which interfaces with DSP, also it will enable the machine driver and the corresponding DAI-links endmenu sound/soc/msm/Makefile +3 −0 Original line number Diff line number Diff line Loading @@ -29,3 +29,6 @@ snd-soc-msm8x16-objs := msm8952.o msm-audio-pinctrl.o snd-soc-msm8x16-objs += msm8952-slimbus.o msm8952-dai-links.o obj-$(CONFIG_SND_SOC_MSM8X16) += snd-soc-msm8x16.o # for MDM Californium sound card driver snd-soc-mdmcalifornium-objs := mdmcalifornium.o obj-$(CONFIG_SND_SOC_MDMCALIFORNIUM) += snd-soc-mdmcalifornium.o Loading
Documentation/devicetree/bindings/sound/qcom-audio-dev.txt +91 −0 Original line number Diff line number Diff line Loading @@ -1613,3 +1613,94 @@ sound { asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; }; * MDMCALIFORNIUM ASoC Machine driver - compatible : "qcom,mdm-audio-tasha" for tasha codec and node is "sound" - qcom,model : The user-visible name of this sound card. - qcom,tasha-mclk-clk-freq : MCLK frequency value for tasha codec and node is "sound-9335" - qcom,audio-routing : A list of the connections between audio components. - asoc-platform: This is phandle list containing the references to platform device nodes that are used as part of the sound card dai-links. - asoc-platform-names: This property contains list of platform names. The order of the platform names should match to that of the phandle order given in "asoc-platform". - asoc-cpu: This is phandle list containing the references to cpu dai device nodes that are used as part of the sound card dai-links. - asoc-cpu-names: This property contains list of cpu dai names. The order of the cpu dai names should match to that of the phandle order given in "asoc-cpu". The cpu names are in the form of "%s.%d" form, where the id (%d) field represents the back-end AFE port id that this CPU dai is associated with. - asoc-codec: This is phandle list containing the references to codec dai device nodes that are used as part of the sound card dai-links. - asoc-codec-names: This property contains list of codec dai names. The order of the codec dai names should match to that of the phandle order given in "asoc-codec". Optional properties: - clock-names : clock name defined for external clock. - clocks : external clock defined for codec clock. - qcom,hph-en1-gpio : GPIO to enable HiFi amplifiers. - qcom,hph-en0-gpio : GPIO to enable HiFi audio route to headset. Example: sound { compatible = "qcom,mdm-audio-tasha"; qcom,model = "mdm-tasha-i2s-snd-card"; qcom,audio-routing = "RX_BIAS", "MCLK", "LDO_H", "MCLK", "AIF4 MAD", "MCLK", "ultrasound amp", "LINEOUT1", "ultrasound amp", "LINEOUT3", "AMIC1", "MIC BIAS1 Internal1", "MIC BIAS1 Internal1", "Handset Mic", "AMIC2", "MIC BIAS2 External", "MIC BIAS2 External", "Headset Mic", "AMIC3", "MIC BIAS2 External", "MIC BIAS2 External", "ANCRight Headset Mic", "AMIC4", "MIC BIAS2 External", "MIC BIAS2 External", "ANCLeft Headset Mic", "DMIC1", "MIC BIAS1 External", "MIC BIAS1 External", "Digital Mic1", "DMIC2", "MIC BIAS1 External", "MIC BIAS1 External", "Digital Mic2", "DMIC3", "MIC BIAS3 External", "MIC BIAS3 External", "Digital Mic3", "DMIC4", "MIC BIAS3 External", "MIC BIAS3 External", "Digital Mic4", "DMIC5", "MIC BIAS4 External", "MIC BIAS4 External", "Digital Mic5", "DMIC6", "MIC BIAS4 External", "MIC BIAS4 External", "Digital Mic6"; qcom,tasha-mclk-clk-freq = <12288000>; asoc-platform = <&pcm0>, <&pcm1>, <&voip>, <&voice>, <&loopback>, <&hostless>, <&afe>, <&routing>, <&pcm_dtmf>, <&host_pcm>; asoc-platform-names = "msm-pcm-dsp.0", "msm-pcm-dsp.1", "msm-voip-dsp", "msm-pcm-voice", "msm-pcm-loopback", "msm-pcm-hostless", "msm-pcm-afe", "msm-pcm-routing", "msm-pcm-dtmf", "msm-voice-host-pcm"; asoc-cpu = <&dai_pri_auxpcm>, <&mi2s_prim>, <&dtmf_tx>, <&rx_capture_tx>, <&rx_playback_rx>, <&tx_capture_tx>, <&tx_playback_rx>, <&afe_pcm_rx>, <&afe_pcm_tx>, <&afe_proxy_rx>, <&afe_proxy_tx>, <&incall_record_rx>, <&incall_record_tx>, <&incall_music_rx>; asoc-cpu-names = "msm-dai-q6-auxpcm.1", "msm-dai-q6-mi2s.0", "msm-dai-stub-dev.4", "msm-dai-stub-dev.5", "msm-dai-stub-dev.6", "msm-dai-stub-dev.7", "msm-dai-stub-dev.8", "msm-dai-q6-dev.224", "msm-dai-q6-dev.225", "msm-dai-q6-dev.241", "msm-dai-q6-dev.240", "msm-dai-q6-dev.32771", "msm-dai-q6-dev.32772", "msm-dai-q6-dev.32773"; asoc-codec = <&stub_codec>; asoc-codec-names = "msm-stub-codec.1"; qcom,aux-codec = <&stub_codec>; };
arch/arm/configs/mdm_defconfig +5 −0 Original line number Diff line number Diff line Loading @@ -222,6 +222,8 @@ CONFIG_MSM_SMD_PKT=y CONFIG_I2C=y CONFIG_I2C_CHARDEV=y CONFIG_I2C_MSM_V2=y CONFIG_SLIMBUS=y CONFIG_SOUNDWIRE=y CONFIG_SPI=y CONFIG_SPI_QUP=y CONFIG_SPI_SPIDEV=m Loading @@ -241,6 +243,7 @@ CONFIG_SENSORS_QPNP_ADC_VOLTAGE=y CONFIG_THERMAL=y CONFIG_THERMAL_TSENS8974=y CONFIG_THERMAL_QPNP_ADC_TM=y CONFIG_WCD9335_CODEC=y CONFIG_REGULATOR_FIXED_VOLTAGE=y CONFIG_REGULATOR_STUB=y CONFIG_REGULATOR_MEM_ACC=y Loading @@ -249,6 +252,7 @@ CONFIG_REGULATOR_CPR=y CONFIG_SOUND=y CONFIG_SND=y CONFIG_SND_SOC=y CONFIG_SND_SOC_MDMCALIFORNIUM=y CONFIG_USB=y CONFIG_USB_ANNOUNCE_NEW_DEVICES=y CONFIG_USB_XHCI_HCD=y Loading Loading @@ -308,6 +312,7 @@ CONFIG_RMNET_IPA3=y CONFIG_MSM_SPMI=y CONFIG_MSM_SPMI_PMIC_ARB=y CONFIG_MSM_QPNP_INT=y CONFIG_MSM_ADSP_LOADER=y CONFIG_MSM_MEMORY_DUMP_V2=y CONFIG_MSM_BOOT_STATS=y CONFIG_MSM_COMMON_LOG=y Loading
sound/soc/msm/Kconfig +18 −0 Original line number Diff line number Diff line Loading @@ -184,4 +184,22 @@ config SND_SOC_MSM8X16 the machine driver and the corresponding DAI-links config SND_SOC_MDMCALIFORNIUM tristate "SoC Machine driver for MDMCALIFORNIUM boards" depends on ARCH_MDMCALIFORNIUM select SND_SOC_QDSP6V2 select SND_SOC_MSM_STUB select SND_SOC_MSM_HOSTLESS_PCM select SND_DYNAMIC_MINORS select MSM_QDSP6_APRV3 select MSM_QDSP6V2_CODECS select SND_SOC_WCD9335 select SND_SOC_WSA881X select SND_HWDEP help To add support for SoC audio on MDMCALIFORNIUM. This will enable sound soc drivers which interfaces with DSP, also it will enable the machine driver and the corresponding DAI-links endmenu
sound/soc/msm/Makefile +3 −0 Original line number Diff line number Diff line Loading @@ -29,3 +29,6 @@ snd-soc-msm8x16-objs := msm8952.o msm-audio-pinctrl.o snd-soc-msm8x16-objs += msm8952-slimbus.o msm8952-dai-links.o obj-$(CONFIG_SND_SOC_MSM8X16) += snd-soc-msm8x16.o # for MDM Californium sound card driver snd-soc-mdmcalifornium-objs := mdmcalifornium.o obj-$(CONFIG_SND_SOC_MDMCALIFORNIUM) += snd-soc-mdmcalifornium.o