# SPDX-License-Identifier: GPL-2.0-only
config SND_SOC_MEDIATEK
	tristate
	select REGMAP_MMIO

config SND_SOC_MT2701
	tristate "ASoC support for Mediatek MT2701 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC driver for Mediatek MT2701 boards
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT2701_CS42448
	tristate "ASoc Audio driver for MT2701 with CS42448 codec"
	depends on SND_SOC_MT2701 && I2C
	select SND_SOC_CS42XX8_I2C
	select SND_SOC_BT_SCO
	help
	  This adds ASoC driver for Mediatek MT2701 boards
	  with the CS42448 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT2701_WM8960
	tristate "ASoc Audio driver for MT2701 with WM8960 codec"
	depends on SND_SOC_MT2701 && I2C
	select SND_SOC_WM8960
	help
	  This adds ASoC driver for Mediatek MT2701 boards
	  with the WM8960 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT6797
	tristate "ASoC support for Mediatek MT6797 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC driver for Mediatek MT6797 boards
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT6797_MT6351
	tristate "ASoc Audio driver for MT6797 with MT6351 codec"
	depends on SND_SOC_MT6797 && MTK_PMIC_WRAP
	select SND_SOC_MT6351
	help
	  This adds ASoC driver for Mediatek MT6797 boards
	  with the MT6351 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT7986
	tristate "ASoC support for Mediatek MT7986 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC platform driver support for MediaTek MT7986 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT7986_WM8960
	tristate "ASoc Audio driver for MT7986 with WM8960 codec"
	depends on SND_SOC_MT7986 && I2C
	select SND_SOC_WM8960
	help
	  This adds support for ASoC machine driver for MediaTek MT7986
	  boards with the WM8960 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8173
	tristate "ASoC support for Mediatek MT8173 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC platform driver support for Mediatek MT8173 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  Ex: MT8173

config SND_SOC_MT8173_MAX98090
	tristate "ASoC Audio driver for MT8173 with MAX98090 codec"
	depends on SND_SOC_MT8173 && I2C
	select SND_SOC_MAX98090
	help
	  This adds ASoC driver for Mediatek MT8173 boards
	  with the MAX98090 audio codec.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8173_RT5650
	tristate "ASoC Audio driver for MT8173 with RT5650 codec"
	depends on SND_SOC_MT8173 && I2C
	select SND_SOC_RT5645
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8173 boards
	  with the RT5650 audio codec.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8173_RT5650_RT5514
	tristate "ASoC Audio driver for MT8173 with RT5650 RT5514 codecs"
	depends on SND_SOC_MT8173 && I2C
	select SND_SOC_RT5645
	select SND_SOC_RT5514
	help
	  This adds ASoC driver for Mediatek MT8173 boards
	  with the RT5650 and RT5514 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8173_RT5650_RT5676
	tristate "ASoC Audio driver for MT8173 with RT5650 RT5676 codecs"
	depends on SND_SOC_MT8173 && I2C
	select SND_SOC_RT5645
	select SND_SOC_RT5677
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8173 boards
	  with the RT5650 and RT5676 codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8183
	tristate "ASoC support for Mediatek MT8183 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC platform driver support for Mediatek MT8183 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8183_MT6358_TS3A227E_MAX98357A
	tristate "ASoC Audio driver for MT8183 with MT6358 TS3A227E MAX98357A RT1015 codec"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8183
	select SND_SOC_MT6358
	select SND_SOC_MAX98357A
	select SND_SOC_RT1015
	select SND_SOC_RT1015P
	select SND_SOC_BT_SCO
	select SND_SOC_TS3A227E
	select SND_SOC_CROS_EC_CODEC if CROS_EC
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8183 boards
	  with the MT6358 TS3A227E MAX98357A RT1015 audio codec.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8183_DA7219_MAX98357A
	tristate "ASoC Audio driver for MT8183 with DA7219 MAX98357A RT1015 codec"
	depends on SND_SOC_MT8183 && I2C && GPIOLIB
	select SND_SOC_MT6358
	select SND_SOC_MAX98357A
	select SND_SOC_RT1015
	select SND_SOC_RT1015P
	select SND_SOC_DA7219
	select SND_SOC_BT_SCO
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8183 boards
	  with the DA7219 MAX98357A RT1015 audio codec.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8186
	tristate "ASoC support for Mediatek MT8186 chip"
	depends on ARCH_MEDIATEK || COMPILE_TEST
	depends on COMMON_CLK
	select SND_SOC_MEDIATEK
	select SND_SOC_MT6358
	select MFD_SYSCON if SND_SOC_MT6358
	help
	  This adds ASoC driver for Mediatek MT8186 boards
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8186_MT6366_DA7219_MAX98357
	tristate "ASoC Audio driver for MT8186 with DA7219 MAX98357A codec"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8186 && MTK_PMIC_WRAP
	select SND_SOC_MT6358
	select SND_SOC_MAX98357A
	select SND_SOC_DA7219
	select SND_SOC_BT_SCO
	select SND_SOC_DMIC
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8186 boards
	  with the MT6366(MT6358) DA7219 MAX98357A codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8186_MT6366_RT1019_RT5682S
	tristate "ASoC Audio driver for MT8186 with RT1019 RT5682S MAX98357A/MAX98360 codec"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8186 && MTK_PMIC_WRAP
	select SND_SOC_MAX98357A
	select SND_SOC_MT6358
	select SND_SOC_MAX98357A
	select SND_SOC_RT1015P
	select SND_SOC_RT5682S
	select SND_SOC_BT_SCO
	select SND_SOC_DMIC
	select SND_SOC_HDMI_CODEC
	help
	  This adds ASoC driver for Mediatek MT8186 boards
	  with the MT6366(MT6358) RT1019 RT5682S codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MTK_BTCVSD
	tristate "ALSA BT SCO CVSD/MSBC Driver"
	help
	  This is for software BTCVSD. This enable
	  the function for transferring/receiving
	  BT encoded data to/from BT firmware.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8188
	tristate "ASoC support for MediaTek MT8188 chip"
	depends on ARCH_MEDIATEK || COMPILE_TEST
	depends on COMMON_CLK
	select SND_SOC_MEDIATEK
	select MFD_SYSCON if SND_SOC_MT6359
	help
	  This adds ASoC platform driver support for MediaTek MT8188 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8188_MT6359
	tristate "ASoC Audio driver for MT8188 with MT6359 and I2S codecs"
	depends on SND_SOC_MT8188 && MTK_PMIC_WRAP
	depends on I2C
	select SND_SOC_MT6359
	select SND_SOC_HDMI_CODEC
	select SND_SOC_DMIC
	select SND_SOC_MAX98390
	select SND_SOC_NAU8315
	select SND_SOC_NAU8825
	help
	  This adds support for ASoC machine driver for MediaTek MT8188
	  boards with the MT6359 and other I2S audio codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8192
	tristate "ASoC support for Mediatek MT8192 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC platform driver support for Mediatek MT8192 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8192_MT6359_RT1015_RT5682
	tristate "ASoC Audio driver for MT8192 with MT6359 RT1015 RT5682 codec"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8192 && MTK_PMIC_WRAP
	select SND_SOC_MT6359
	select SND_SOC_RT1015
	select SND_SOC_RT1015P
	select SND_SOC_RT5682_I2C
	select SND_SOC_RT5682S
	select SND_SOC_DMIC
	help
	  This adds ASoC driver for Mediatek MT8192 boards
	  with the MT6359 RT1015 RT5682 audio codec.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8195
	tristate "ASoC support for Mediatek MT8195 chip"
	depends on ARCH_MEDIATEK || COMPILE_TEST
	depends on COMMON_CLK
	select SND_SOC_MEDIATEK
	select MFD_SYSCON if SND_SOC_MT6359
	help
	  This adds ASoC platform driver support for Mediatek MT8195 chip
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8195_MT6359
	tristate "ASoC Audio driver for MT8195 with MT6359 and I2S codecs"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8195 && MTK_PMIC_WRAP
	select SND_SOC_MT6359
	select SND_SOC_RT1011
	select SND_SOC_RT1015P
	select SND_SOC_RT5682_I2C
	select SND_SOC_RT5682S
	select SND_SOC_MAX98390
	select SND_SOC_DMIC
	select SND_SOC_HDMI_CODEC
	help
	  This adds support for ASoC machine driver for Mediatek MT8195
	  boards with the MT6359 and other I2S audio codecs.
	  Select Y if you have such device.
	  If unsure select "N".