menuconfig SND_SOC_INTEL_MACH
	bool "Intel Machine drivers"
	depends on SND_SOC_INTEL_SST_TOPLEVEL || SND_SOC_SOF_INTEL
	help
         Intel ASoC Machine Drivers. If you have a Intel machine that
         has an audio controller with a DSP and I2S or DMIC port, then
         enable this option by saying Y

         Note that the answer to this question doesn't directly affect the
         kernel: saying N will just cause the configurator to skip all
         the questions about Intel ASoC machine drivers.

if SND_SOC_INTEL_MACH

if SND_SOC_INTEL_HASWELL || SND_SOC_SOF_HASWELL

config SND_SOC_INTEL_HASWELL_MACH
	tristate "Haswell Lynxpoint"
	depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
	select SND_SOC_RT5640
	help
	  This adds support for the Lynxpoint Audio DSP on Intel(R) Haswell
	  Ultrabook platforms. This is a recommended option.
	  Say Y or m if you have such a device.
	  If unsure select "N".

endif ## SND_SOC_INTEL_HASWELL || SND_SOC_SOF_HASWELL

if SND_SOC_INTEL_HASWELL || SND_SOC_SOF_BROADWELL

config SND_SOC_INTEL_BDW_RT5677_MACH
	tristate "Broadwell with RT5677 codec"
	depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM && GPIOLIB
	select SND_SOC_RT5677
	help
	  This adds support for Intel Broadwell platform based boards with
	  the RT5677 audio codec. This is a recommended option.
	  Say Y or m if you have such a device.
	  If unsure select "N".

config SND_SOC_INTEL_BROADWELL_MACH
	tristate "Broadwell Wildcatpoint"
	depends on X86_INTEL_LPSS && I2C && I2C_DESIGNWARE_PLATFORM
	select SND_SOC_RT286
	help
	  This adds support for the Wilcatpoint Audio DSP on Intel(R) Broadwell
	  Ultrabook platforms.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".
endif ## SND_SOC_INTEL_HASWELL || SND_SOC_SOF_BROADWELL

if SND_SOC_INTEL_BAYTRAIL

config SND_SOC_INTEL_BYT_MAX98090_MACH
	tristate "Baytrail with MAX98090 codec"
	depends on X86_INTEL_LPSS && I2C
	select SND_SOC_MAX98090
	help
	  This adds audio driver for Intel Baytrail platform based boards
	  with the MAX98090 audio codec. This driver is deprecated, use
	  SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH instead for better
	  functionality.

config SND_SOC_INTEL_BYT_RT5640_MACH
	tristate "Baytrail with RT5640 codec"
	depends on X86_INTEL_LPSS && I2C
	select SND_SOC_RT5640
	help
	  This adds audio driver for Intel Baytrail platform based boards
	  with the RT5640 audio codec. This driver is deprecated, use
	  SND_SOC_INTEL_BYTCR_RT5640_MACH instead for better functionality.

endif ## SND_SOC_INTEL_BAYTRAIL

if SND_SST_ATOM_HIFI2_PLATFORM || SND_SOC_SOF_BAYTRAIL

config SND_SOC_INTEL_BYTCR_RT5640_MACH
	tristate "Baytrail and Baytrail-CR with RT5640 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_RT5640
	help
	  This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
	  platforms with RT5640 audio codec.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_BYTCR_RT5651_MACH
	tristate "Baytrail and Baytrail-CR with RT5651 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_RT5651
	help
	  This adds support for ASoC machine driver for Intel(R) Baytrail and Baytrail-CR
	  platforms with RT5651 audio codec.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_CHT_BSW_RT5672_MACH
	tristate "Cherrytrail & Braswell with RT5672 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_RT5670
        help
          This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
          platforms with RT5672 audio codec.
          Say Y or m if you have such a device. This is a recommended option.
          If unsure select "N".

config SND_SOC_INTEL_CHT_BSW_RT5645_MACH
	tristate "Cherrytrail & Braswell with RT5645/5650 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_RT5645
	help
	  This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
	  platforms with RT5645/5650 audio codec.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_CHT_BSW_MAX98090_TI_MACH
	tristate "Cherrytrail & Braswell with MAX98090 & TI codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_MAX98090
	select SND_SOC_TS3A227E
	help
	  This adds support for ASoC machine driver for Intel(R) Cherrytrail & Braswell
	  platforms with MAX98090 audio codec it also can support TI jack chip as aux device.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_BYT_CHT_DA7213_MACH
	tristate "Baytrail & Cherrytrail with DA7212/7213 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_DA7213
	help
	  This adds support for ASoC machine driver for Intel(R) Baytrail & CherryTrail
	  platforms with DA7212/7213 audio codec.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_BYT_CHT_ES8316_MACH
	tristate "Baytrail & Cherrytrail with ES8316 codec"
	depends on X86_INTEL_LPSS && I2C && ACPI
	select SND_SOC_ACPI
	select SND_SOC_ES8316
	help
	  This adds support for ASoC machine driver for Intel(R) Baytrail &
	  Cherrytrail platforms with ES8316 audio codec.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

endif ## SND_SST_ATOM_HIFI2_PLATFORM || SND_SOC_SOF_BAYTRAIL

if SND_SST_ATOM_HIFI2_PLATFORM

config SND_SOC_INTEL_BYT_CHT_NOCODEC_MACH
	tristate "Baytrail & Cherrytrail platform with no codec (MinnowBoard MAX, Up)"
	depends on X86_INTEL_LPSS && I2C && ACPI
	help
	  This adds support for ASoC machine driver for the MinnowBoard Max or
	  Up boards and provides access to I2S signals on the Low-Speed
	  connector. This is not a recommended option outside of these cases.
	  It is not intended to be enabled by distros by default.
	  Say Y or m if you have such a device.

	  If unsure select "N".

endif ## SND_SST_ATOM_HIFI2_PLATFORM

if SND_SOC_INTEL_SKYLAKE

config SND_SOC_INTEL_SKL_RT286_MACH
	tristate "SKL with RT286 I2S mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_RT286
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	help
	   This adds support for ASoC machine driver for Skylake platforms
	   with RT286 I2S audio codec.
	   Say Y or m if you have such a device.
	   If unsure select "N".

config SND_SOC_INTEL_SKL_NAU88L25_SSM4567_MACH
	tristate "SKL with NAU88L25 and SSM4567 in I2S Mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_NAU8825
	select SND_SOC_SSM4567
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	help
	  This adds support for ASoC Onboard Codec I2S machine driver. This will
	  create an alsa sound card for NAU88L25 + SSM4567.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_SKL_NAU88L25_MAX98357A_MACH
	tristate "SKL with NAU88L25 and MAX98357A in I2S Mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_NAU8825
	select SND_SOC_MAX98357A
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	help
	  This adds support for ASoC Onboard Codec I2S machine driver. This will
	  create an alsa sound card for NAU88L25 + MAX98357A.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

endif ## SND_SOC_INTEL_SKYLAKE

if SND_SOC_INTEL_SKYLAKE || SND_SOC_SOF_APOLLOLAKE

config SND_SOC_INTEL_BXT_DA7219_MAX98357A_MACH
	tristate "Broxton with DA7219 and MAX98357A in I2S Mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_DA7219
	select SND_SOC_MAX98357A
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	select SND_HDA_DSP_LOADER
	help
	   This adds support for ASoC machine driver for Broxton-P platforms
	   with DA7219 + MAX98357A I2S audio codec.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

config SND_SOC_INTEL_BXT_RT298_MACH
	tristate "Broxton with RT298 I2S mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_RT298
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	select SND_HDA_DSP_LOADER
	help
	   This adds support for ASoC machine driver for Broxton platforms
	   with RT286 I2S audio codec.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

config SND_SOC_INTEL_BXT_PCM512x_MACH
	tristate "Broxton with TI PCM512x codec"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_PCM512x_I2C
	help
	  This adds support for ASoC machine driver for Broxton platforms
	  with TI PCM512x I2S audio codec.
	  Say Y or m if you have such a device. This is a recommended option.

config SND_SOC_INTEL_BXT_TDF8532_MACH
	tristate "ASoC Audio driver for BXT with TDF8532 in I2S mode"
	depends on X86 && ACPI && I2C
	select SND_SOC_TDF8532
	select SND_SOC_COMPRESS
	help
	  This adds support for ASoC machine driver for Broxton IVI GP MRB platform
	  Say Y if you have such a device.
	  If unsure select "N".

endif ##  SND_SOC_INTEL_SKYLAKE || SND_SOC_SOF_APOLLOLAKE

if  SND_SOC_INTEL_SKYLAKE

config SND_SOC_INTEL_KBL_RT5663_MAX98927_MACH
	tristate "KBL with RT5663 and MAX98927 in I2S Mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_RT5663
	select SND_SOC_MAX98927
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
	help
	  This adds support for ASoC Onboard Codec I2S machine driver. This will
	  create an alsa sound card for RT5663 + MAX98927.
	  Say Y or m if you have such a device. This is a recommended option.
	  If unsure select "N".

config SND_SOC_INTEL_KBL_RT5663_RT5514_MAX98927_MACH
        tristate "KBL with RT5663, RT5514 and MAX98927 in I2S Mode"
        depends on MFD_INTEL_LPSS && I2C && ACPI
        depends on SPI
        select SND_SOC_RT5663
        select SND_SOC_RT5514
        select SND_SOC_RT5514_SPI
        select SND_SOC_MAX98927
        select SND_SOC_HDAC_HDMI
        help
          This adds support for ASoC Onboard Codec I2S machine driver. This will
          create an alsa sound card for RT5663 + RT5514 + MAX98927.
          Say Y or m if you have such a device. This is a recommended option.
          If unsure select "N".

config SND_SOC_INTEL_CNL_FPGA
	tristate "Enable CNL FPGA board settings"
	depends on X86
	help
	  Select Y if you are using FPGA.
	  If unsure select "N".

config SND_SOC_INTEL_CNL_CS42L42_MACH
        tristate "SOC Machine Audio driver for CNL Platform"
	depends on X86 && ACPI && I2C
        select SND_SOC_CS42L42
	select SND_SOC_DMIC
        help
	This adds support for ASoC machine driver for cnl and CS42L42. This
	will create an alsa sound card.  Say Y if you have such a device If
	unsure select "N".

config SND_SOC_INTEL_CNL_RT700_MACH
        tristate "SOC Machine Audio driver for CNL Platform"
	depends on X86 && ACPI && I2C
	select SND_SOC_RT700
	select SND_SOC_DMIC
        help
        This adds support for ASoC machine driver . This will create an alsa
        sound card.
        Say Y if you have such a device
        If unsure select "N".

config SND_SOC_INTEL_CNL_SVFPGA_MACH
        tristate "SND_SOC_INTEL_CNL_SVFPGA_MACH for CNL Platform"
	depends on X86 && ACPI && I2C
	select SND_SOC_SVFPGA
	select SND_SOC_DMIC
        help

config SND_SOC_INTEL_CNL_RT274_MACH
        tristate "ASoC Audio driver for CNL with RT274 in I2S Mode"
	depends on X86 && ACPI && I2C
	select SND_SOC_RT274
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
        help
	This adds support for ASoC machine driver for CNL and codec RT274. This
	will create an alsa sound card.  Say Y if you have such a device If
	unsure select "N".

config SND_SOC_SDW_AGGM1M2
	bool "Enable SoundWire aggregation on Master 1 and Master 2"
	help
	  Say Y to enable SoundWire aggregation on Master1 and Master2.

config SND_SOC_INTEL_BXT_ULL_MACH
        tristate "Reference ASoC Machine driver for BXT ULL machine"
        depends on X86 && ACPI && I2C
        select SND_SOC_COMPRESS
        help
           This adds support for ASoC machine driver for Broxton ULL GP MRB platform
           Say Y if you have such a device
           If unsure select "N".

config SND_SOC_INTEL_BXTP_IVI_RSE_MACH
	tristate "ASoC Audio driver for BXTP IVI RSE with Dummy Codecs"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	help
	   This adds support for ASoC machine driver for Broxton-P platforms
	   with Dummy I2S audio codec for IVI Rear Seat Unit.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

config SND_SOC_INTEL_BXTP_IVI_HU_MACH
	tristate "ASoC Audio driver for BXTP IVI HU with Dummy Codecs"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	help
	   This adds support for ASoC machine driver for Broxton-P platforms
	   with Dummy I2S audio codec for IVI Head Unit.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

config SND_SOC_INTEL_BXTP_IVI_M3_MACH
	tristate "ASoC Audio driver for BXTP IVI M3 with Dummy Codecs"
	depends on MFD_INTEL_LPSS && I2C && ACPI
        help
	   This adds support for ASoC machine driver for Broxton-P platforms
	   with Dummy I2S audio codec for IVI M3 topology.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

config SND_SOC_INTEL_BXTP_IVI_GENERIC_MACH
	tristate "ASoC Audio driver for BXTP IVI GENERIC with Dummy Codecs"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	help
	   This adds support for ASoC machine driver for Broxton-P platforms
	   with Dummy I2S audio codec for IVI generic topology.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

endif ## SND_SOC_INTEL_SKYLAKE

if SND_SOC_INTEL_SKYLAKE || SND_SOC_SOF_CANNONLAKE

config SND_SOC_INTEL_CNL_RT274_MACH
	tristate "Cannonlake with RT274 I2S mode"
	depends on MFD_INTEL_LPSS && I2C && ACPI
	select SND_SOC_RT274
	select SND_SOC_DMIC
	select SND_SOC_HDAC_HDMI
        help
	   This adds support for ASoC machine driver for Cannonlake platform
	   with RT274 I2S audio codec.
	   Say Y or m if you have such a device. This is a recommended option.
	   If unsure select "N".

endif ## SND_SOC_INTEL_SKYLAKE

endif ## SND_SOC_INTEL_MACH
