1 // SPDX-License-Identifier: GPL-2.0 2 /* 3 * soc-apci-intel-kbl-match.c - tables and support for KBL ACPI enumeration. 4 * 5 * Copyright (c) 2018, Intel Corporation. 6 * 7 */ 8 9 #include <sound/soc-acpi.h> 10 #include <sound/soc-acpi-intel-match.h> 11 #include "../skylake/skl.h" 12 13 static struct skl_machine_pdata skl_dmic_data; 14 15 static struct snd_soc_acpi_codecs kbl_codecs = { 16 .num_codecs = 1, 17 .codecs = {"10508825"} 18 }; 19 20 static struct snd_soc_acpi_codecs kbl_poppy_codecs = { 21 .num_codecs = 1, 22 .codecs = {"10EC5663"} 23 }; 24 25 static struct snd_soc_acpi_codecs kbl_5663_5514_codecs = { 26 .num_codecs = 2, 27 .codecs = {"10EC5663", "10EC5514"} 28 }; 29 30 static struct snd_soc_acpi_codecs kbl_7219_98357_codecs = { 31 .num_codecs = 1, 32 .codecs = {"MX98357A"} 33 }; 34 35 static struct snd_soc_acpi_codecs kbl_7219_98927_codecs = { 36 .num_codecs = 1, 37 .codecs = {"MX98927"} 38 }; 39 40 struct snd_soc_acpi_mach snd_soc_acpi_intel_kbl_machines[] = { 41 { 42 .id = "INT343A", 43 .drv_name = "kbl_alc286s_i2s", 44 .fw_filename = "intel/dsp_fw_kbl.bin", 45 }, 46 { 47 .id = "INT343B", 48 .drv_name = "kbl_n88l25_s4567", 49 .fw_filename = "intel/dsp_fw_kbl.bin", 50 .machine_quirk = snd_soc_acpi_codec_list, 51 .quirk_data = &kbl_codecs, 52 .pdata = &skl_dmic_data, 53 }, 54 { 55 .id = "MX98357A", 56 .drv_name = "kbl_n88l25_m98357a", 57 .fw_filename = "intel/dsp_fw_kbl.bin", 58 .machine_quirk = snd_soc_acpi_codec_list, 59 .quirk_data = &kbl_codecs, 60 .pdata = &skl_dmic_data, 61 }, 62 { 63 .id = "MX98927", 64 .drv_name = "kbl_r5514_5663_max", 65 .fw_filename = "intel/dsp_fw_kbl.bin", 66 .machine_quirk = snd_soc_acpi_codec_list, 67 .quirk_data = &kbl_5663_5514_codecs, 68 .pdata = &skl_dmic_data, 69 }, 70 { 71 .id = "MX98927", 72 .drv_name = "kbl_rt5663_m98927", 73 .fw_filename = "intel/dsp_fw_kbl.bin", 74 .machine_quirk = snd_soc_acpi_codec_list, 75 .quirk_data = &kbl_poppy_codecs, 76 .pdata = &skl_dmic_data, 77 }, 78 { 79 .id = "10EC5663", 80 .drv_name = "kbl_rt5663", 81 .fw_filename = "intel/dsp_fw_kbl.bin", 82 }, 83 { 84 .id = "DLGS7219", 85 .drv_name = "kbl_da7219_max98357a", 86 .fw_filename = "intel/dsp_fw_kbl.bin", 87 .machine_quirk = snd_soc_acpi_codec_list, 88 .quirk_data = &kbl_7219_98357_codecs, 89 .pdata = &skl_dmic_data, 90 }, 91 { 92 .id = "DLGS7219", 93 .drv_name = "kbl_da7219_max98927", 94 .fw_filename = "intel/dsp_fw_kbl.bin", 95 .machine_quirk = snd_soc_acpi_codec_list, 96 .quirk_data = &kbl_7219_98927_codecs, 97 .pdata = &skl_dmic_data 98 }, 99 { 100 .id = "10EC5660", 101 .drv_name = "kbl_rt5660", 102 .fw_filename = "intel/dsp_fw_kbl.bin", 103 }, 104 { 105 .id = "10EC3277", 106 .drv_name = "kbl_rt5660", 107 .fw_filename = "intel/dsp_fw_kbl.bin", 108 }, 109 {}, 110 }; 111 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_kbl_machines); 112 113 MODULE_LICENSE("GPL v2"); 114 MODULE_DESCRIPTION("Intel Common ACPI Match module"); 115