1*4882a593Smuzhiyun // SPDX-License-Identifier: GPL-2.0-only 2*4882a593Smuzhiyun /* 3*4882a593Smuzhiyun * soc-acpi-intel-cnl-match.c - tables and support for CNL ACPI enumeration. 4*4882a593Smuzhiyun * 5*4882a593Smuzhiyun * Copyright (c) 2018, Intel Corporation. 6*4882a593Smuzhiyun * 7*4882a593Smuzhiyun */ 8*4882a593Smuzhiyun 9*4882a593Smuzhiyun #include <sound/soc-acpi.h> 10*4882a593Smuzhiyun #include <sound/soc-acpi-intel-match.h> 11*4882a593Smuzhiyun #include "../skylake/skl.h" 12*4882a593Smuzhiyun 13*4882a593Smuzhiyun static struct skl_machine_pdata cnl_pdata = { 14*4882a593Smuzhiyun .use_tplg_pcm = true, 15*4882a593Smuzhiyun }; 16*4882a593Smuzhiyun 17*4882a593Smuzhiyun struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_machines[] = { 18*4882a593Smuzhiyun { 19*4882a593Smuzhiyun .id = "INT34C2", 20*4882a593Smuzhiyun .drv_name = "cnl_rt274", 21*4882a593Smuzhiyun .fw_filename = "intel/dsp_fw_cnl.bin", 22*4882a593Smuzhiyun .pdata = &cnl_pdata, 23*4882a593Smuzhiyun .sof_fw_filename = "sof-cnl.ri", 24*4882a593Smuzhiyun .sof_tplg_filename = "sof-cnl-rt274.tplg", 25*4882a593Smuzhiyun }, 26*4882a593Smuzhiyun {}, 27*4882a593Smuzhiyun }; 28*4882a593Smuzhiyun EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_cnl_machines); 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun static const struct snd_soc_acpi_endpoint single_endpoint = { 31*4882a593Smuzhiyun .num = 0, 32*4882a593Smuzhiyun .aggregated = 0, 33*4882a593Smuzhiyun .group_position = 0, 34*4882a593Smuzhiyun .group_id = 0, 35*4882a593Smuzhiyun }; 36*4882a593Smuzhiyun 37*4882a593Smuzhiyun static const struct snd_soc_acpi_adr_device rt5682_2_adr[] = { 38*4882a593Smuzhiyun { 39*4882a593Smuzhiyun .adr = 0x000220025D568200, 40*4882a593Smuzhiyun .num_endpoints = 1, 41*4882a593Smuzhiyun .endpoints = &single_endpoint, 42*4882a593Smuzhiyun .name_prefix = "rt5682" 43*4882a593Smuzhiyun } 44*4882a593Smuzhiyun }; 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun static const struct snd_soc_acpi_link_adr up_extreme_rt5682_2[] = { 47*4882a593Smuzhiyun { 48*4882a593Smuzhiyun .mask = BIT(2), 49*4882a593Smuzhiyun .num_adr = ARRAY_SIZE(rt5682_2_adr), 50*4882a593Smuzhiyun .adr_d = rt5682_2_adr, 51*4882a593Smuzhiyun }, 52*4882a593Smuzhiyun {} 53*4882a593Smuzhiyun }; 54*4882a593Smuzhiyun 55*4882a593Smuzhiyun struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_sdw_machines[] = { 56*4882a593Smuzhiyun { 57*4882a593Smuzhiyun .link_mask = BIT(2), 58*4882a593Smuzhiyun .links = up_extreme_rt5682_2, 59*4882a593Smuzhiyun .drv_name = "sof_sdw", 60*4882a593Smuzhiyun .sof_fw_filename = "sof-cnl.ri", 61*4882a593Smuzhiyun .sof_tplg_filename = "sof-cnl-rt5682-sdw2.tplg" 62*4882a593Smuzhiyun }, 63*4882a593Smuzhiyun {} 64*4882a593Smuzhiyun }; 65*4882a593Smuzhiyun EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_cnl_sdw_machines); 66*4882a593Smuzhiyun 67*4882a593Smuzhiyun MODULE_LICENSE("GPL v2"); 68*4882a593Smuzhiyun MODULE_DESCRIPTION("Intel Common ACPI Match module"); 69