1 // SPDX-License-Identifier: GPL-2.0-only 2 /* 3 * soc-acpi-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 12 static const struct snd_soc_acpi_codecs kbl_codecs = { 13 .num_codecs = 1, 14 .codecs = {"10508825"} 15 }; 16 17 static const struct snd_soc_acpi_codecs kbl_poppy_codecs = { 18 .num_codecs = 1, 19 .codecs = {"10EC5663"} 20 }; 21 22 static const struct snd_soc_acpi_codecs kbl_5663_5514_codecs = { 23 .num_codecs = 2, 24 .codecs = {"10EC5663", "10EC5514"} 25 }; 26 27 static const struct snd_soc_acpi_codecs kbl_7219_98357_codecs = { 28 .num_codecs = 1, 29 .codecs = {"MX98357A"} 30 }; 31 32 static const struct snd_soc_acpi_codecs kbl_7219_98927_codecs = { 33 .num_codecs = 1, 34 .codecs = {"MX98927"} 35 }; 36 37 static const struct snd_soc_acpi_codecs kbl_7219_98373_codecs = { 38 .num_codecs = 1, 39 .codecs = {"MX98373"} 40 }; 41 42 struct snd_soc_acpi_mach snd_soc_acpi_intel_kbl_machines[] = { 43 { 44 .id = "INT343A", 45 .drv_name = "kbl_alc286s_i2s", 46 .fw_filename = "intel/dsp_fw_kbl.bin", 47 }, 48 { 49 .id = "INT343B", 50 .drv_name = "kbl_n88l25_s4567", 51 .fw_filename = "intel/dsp_fw_kbl.bin", 52 .machine_quirk = snd_soc_acpi_codec_list, 53 .quirk_data = &kbl_codecs, 54 }, 55 { 56 .id = "MX98357A", 57 .drv_name = "kbl_n88l25_m98357a", 58 .fw_filename = "intel/dsp_fw_kbl.bin", 59 .machine_quirk = snd_soc_acpi_codec_list, 60 .quirk_data = &kbl_codecs, 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 }, 69 { 70 .id = "MX98927", 71 .drv_name = "kbl_rt5663_m98927", 72 .fw_filename = "intel/dsp_fw_kbl.bin", 73 .machine_quirk = snd_soc_acpi_codec_list, 74 .quirk_data = &kbl_poppy_codecs, 75 }, 76 { 77 .id = "10EC5663", 78 .drv_name = "kbl_rt5663", 79 .fw_filename = "intel/dsp_fw_kbl.bin", 80 }, 81 { 82 .id = "DLGS7219", 83 .drv_name = "kbl_da7219_mx98357a", 84 .fw_filename = "intel/dsp_fw_kbl.bin", 85 .machine_quirk = snd_soc_acpi_codec_list, 86 .quirk_data = &kbl_7219_98357_codecs, 87 }, 88 { 89 .id = "DLGS7219", 90 .drv_name = "kbl_da7219_max98927", 91 .fw_filename = "intel/dsp_fw_kbl.bin", 92 .machine_quirk = snd_soc_acpi_codec_list, 93 .quirk_data = &kbl_7219_98927_codecs, 94 }, 95 { 96 .id = "10EC5660", 97 .drv_name = "kbl_rt5660", 98 .fw_filename = "intel/dsp_fw_kbl.bin", 99 }, 100 { 101 .id = "10EC3277", 102 .drv_name = "kbl_rt5660", 103 .fw_filename = "intel/dsp_fw_kbl.bin", 104 }, 105 { 106 .id = "DLGS7219", 107 .drv_name = "kbl_da7219_mx98373", 108 .fw_filename = "intel/dsp_fw_kbl.bin", 109 .machine_quirk = snd_soc_acpi_codec_list, 110 .quirk_data = &kbl_7219_98373_codecs, 111 }, 112 { 113 .id = "MX98373", 114 .drv_name = "kbl_max98373", 115 .fw_filename = "intel/dsp_fw_kbl.bin", 116 }, 117 {}, 118 }; 119 EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_kbl_machines); 120