cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

soc-acpi-intel-cnl-match.c (2209B)


      1// SPDX-License-Identifier: GPL-2.0-only
      2/*
      3 * soc-acpi-intel-cnl-match.c - tables and support for CNL 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#include "soc-acpi-intel-sdw-mockup-match.h"
     13
     14static const struct snd_soc_acpi_codecs essx_83x6 = {
     15	.num_codecs = 3,
     16	.codecs = { "ESSX8316", "ESSX8326", "ESSX8336"},
     17};
     18
     19static struct skl_machine_pdata cnl_pdata = {
     20	.use_tplg_pcm = true,
     21};
     22
     23struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_machines[] = {
     24	{
     25		.id = "INT34C2",
     26		.drv_name = "cnl_rt274",
     27		.fw_filename = "intel/dsp_fw_cnl.bin",
     28		.pdata = &cnl_pdata,
     29		.sof_tplg_filename = "sof-cnl-rt274.tplg",
     30	},
     31	{
     32		.comp_ids = &essx_83x6,
     33		.drv_name = "sof-essx8336",
     34		/* cnl and cml are identical */
     35		.sof_tplg_filename = "sof-cml-es8336", /* the tplg suffix is added at run time */
     36		.tplg_quirk_mask = SND_SOC_ACPI_TPLG_INTEL_SSP_NUMBER |
     37					SND_SOC_ACPI_TPLG_INTEL_SSP_MSB |
     38					SND_SOC_ACPI_TPLG_INTEL_DMIC_NUMBER,
     39	},
     40	{},
     41};
     42EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_cnl_machines);
     43
     44static const struct snd_soc_acpi_endpoint single_endpoint = {
     45	.num = 0,
     46	.aggregated = 0,
     47	.group_position = 0,
     48	.group_id = 0,
     49};
     50
     51static const struct snd_soc_acpi_adr_device rt5682_2_adr[] = {
     52	{
     53		.adr = 0x000220025D568200ull,
     54		.num_endpoints = 1,
     55		.endpoints = &single_endpoint,
     56		.name_prefix = "rt5682"
     57	}
     58};
     59
     60static const struct snd_soc_acpi_link_adr up_extreme_rt5682_2[] = {
     61	{
     62		.mask = BIT(2),
     63		.num_adr = ARRAY_SIZE(rt5682_2_adr),
     64		.adr_d = rt5682_2_adr,
     65	},
     66	{}
     67};
     68
     69struct snd_soc_acpi_mach snd_soc_acpi_intel_cnl_sdw_machines[] = {
     70	{
     71		.link_mask = BIT(2),
     72		.links = up_extreme_rt5682_2,
     73		.drv_name = "sof_sdw",
     74		.sof_tplg_filename = "sof-cnl-rt5682-sdw2.tplg"
     75	},
     76	{
     77		.link_mask = GENMASK(3, 0),
     78		.links = sdw_mockup_headset_2amps_mic,
     79		.drv_name = "sof_sdw",
     80		.sof_tplg_filename = "sof-cml-rt711-rt1308-rt715.tplg",
     81	},
     82	{
     83		.link_mask = BIT(0) | BIT(1) | BIT(3),
     84		.links = sdw_mockup_headset_1amp_mic,
     85		.drv_name = "sof_sdw",
     86		.sof_tplg_filename = "sof-cml-rt711-rt1308-mono-rt715.tplg",
     87	},
     88	{}
     89};
     90EXPORT_SYMBOL_GPL(snd_soc_acpi_intel_cnl_sdw_machines);