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

Commit ee0bcaff authored by Koro Chen's avatar Koro Chen Committed by Mark Brown
Browse files

ASoC: mediatek: Add AFE platform driver



This is the DPCM based platform driver of AFE (Audio Front End) unit.

Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: default avatarKoro Chen <koro.chen@mediatek.com>
Signed-off-by: default avatarMark Brown <broonie@kernel.org>
parent b787f68c
Loading
Loading
Loading
Loading
+45 −0
Original line number Diff line number Diff line
Mediatek AFE PCM controller

Required properties:
- compatible = "mediatek,mt8173-afe-pcm";
- reg: register location and size
- interrupts: Should contain AFE interrupt
- clock-names: should have these clock names:
		"infra_sys_audio_clk",
		"top_pdn_audio",
		"top_pdn_aud_intbus",
		"bck0",
		"bck1",
		"i2s0_m",
		"i2s1_m",
		"i2s2_m",
		"i2s3_m",
		"i2s3_b";

Example:

	afe: mt8173-afe-pcm@11220000  {
		compatible = "mediatek,mt8173-afe-pcm";
		reg = <0 0x11220000 0 0x1000>;
		interrupts = <GIC_SPI 134 IRQ_TYPE_EDGE_FALLING>;
		clocks = <&infracfg INFRA_AUDIO>,
			<&topckgen TOP_AUDIO_SEL>,
			<&topckgen TOP_AUD_INTBUS_SEL>,
			<&topckgen TOP_APLL1_DIV0>,
			<&topckgen TOP_APLL2_DIV0>,
			<&topckgen TOP_I2S0_M_CK_SEL>,
			<&topckgen TOP_I2S1_M_CK_SEL>,
			<&topckgen TOP_I2S2_M_CK_SEL>,
			<&topckgen TOP_I2S3_M_CK_SEL>,
			<&topckgen TOP_I2S3_B_CK_SEL>;
		clock-names = "infra_sys_audio_clk",
				"top_pdn_audio",
				"top_pdn_aud_intbus",
				"bck0",
				"bck1",
				"i2s0_m",
				"i2s1_m",
				"i2s2_m",
				"i2s3_m",
				"i2s3_b";
	};
+1 −0
Original line number Diff line number Diff line
@@ -45,6 +45,7 @@ source "sound/soc/nuc900/Kconfig"
source "sound/soc/omap/Kconfig"
source "sound/soc/kirkwood/Kconfig"
source "sound/soc/intel/Kconfig"
source "sound/soc/mediatek/Kconfig"
source "sound/soc/mxs/Kconfig"
source "sound/soc/pxa/Kconfig"
source "sound/soc/qcom/Kconfig"
+1 −0
Original line number Diff line number Diff line
@@ -23,6 +23,7 @@ obj-$(CONFIG_SND_SOC) += dwc/
obj-$(CONFIG_SND_SOC)	+= fsl/
obj-$(CONFIG_SND_SOC)	+= jz4740/
obj-$(CONFIG_SND_SOC)	+= intel/
obj-$(CONFIG_SND_SOC)	+= mediatek/
obj-$(CONFIG_SND_SOC)	+= mxs/
obj-$(CONFIG_SND_SOC)	+= nuc900/
obj-$(CONFIG_SND_SOC)	+= omap/
+9 −0
Original line number Diff line number Diff line
config SND_SOC_MEDIATEK
	tristate "ASoC support for Mediatek chip"
	depends on ARCH_MEDIATEK
	help
	  This adds ASoC platform driver support for Mediatek chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  Ex: MT8173
+2 −0
Original line number Diff line number Diff line
# MTK Platform Support
obj-$(CONFIG_SND_SOC_MEDIATEK) += mtk-afe-pcm.o
Loading