# SPDX-License-Identifier: GPL-2.0-only
menu "Mediatek"

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
	tristate "ASoC Audio driver for MT8186 with MT6366 and I2S codecs"
	depends on I2C && GPIOLIB
	depends on SND_SOC_MT8186 && MTK_PMIC_WRAP
	select SND_SOC_DA7219
	select SND_SOC_MT6358
	select SND_SOC_MAX98357A
	select SND_SOC_RT1015P
	select SND_SOC_RT5682S
	select SND_SOC_RT5645
	select SND_SOC_BT_SCO
	select SND_SOC_DMIC
	select SND_SOC_HDMI_CODEC
	help
	  This adds the ASoC machine driver for Mediatek MT8186 boards
	  with the MT6366(MT6358) and other I2S audio 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 SND_SOC_MT6359_ACCDET || !SND_SOC_MT6359_ACCDET
	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
	select SND_SOC_RT5682S
	select SND_SOC_ES8326
	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_MT8189
	tristate "ASoC support for Mediatek MT8189 chip"
	depends on ARCH_MEDIATEK
	select SND_SOC_MEDIATEK
	help
	  This adds ASoC driver for Mediatek MT8189 boards
	  that can be used with other codecs.
	  Select Y if you have such device.
	  If unsure select "N".

config SND_SOC_MT8189_NAU8825
	tristate "ASoc Audio driver for MT8189 with NAU8825 and I2S codec"
	depends on SND_SOC_MT8189
	depends on I2C
	select SND_SOC_DMIC
	select SND_SOC_HDMI_CODEC
	select SND_SOC_NAU8825
	select SND_SOC_RT5645
	select SND_SOC_RT9123P
	select SND_SOC_RT1015P
	select SND_SOC_RT5682S
	select SND_SOC_RT5682_I2C
	select SND_SOC_CS35L41_I2C
	select SND_SOC_AW88081
	select SND_SOC_ES8326
	help
	  This adds support for ASoC machine driver for MediaTek MT8189
	  boards with the NAU8828 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".

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

config SND_SOC_MT8365_MT6357
	tristate "ASoC Audio driver for MT8365 with MT6357 codec"
	depends on SND_SOC_MT8365 && MTK_PMIC_WRAP
	select SND_SOC_MT6357
	help
	  This adds support for ASoC machine driver for MediaTek MT8365
	  boards with the MT6357 PMIC codec.
	  Select Y if you have such device.
	  If unsure select "N".

endmenu
