Unverified Commit 58b2e9a1 authored by Mark Brown's avatar Mark Brown
Browse files

ASoC: soc-acpi-intel-arl/ptl-match: use aggregated

Merge series from Bard Liao <yung-chuan.liao@linux.intel.com>:

When rt722 work with other amps, the rt722 amp endpoint is aggregated.
Set .aggregated = 1 to represent the fact and avoid unexpected issue.
parents 965f58e7 4fbd3b2e
Loading
Loading
Loading
Loading
+11 −12
Original line number Diff line number Diff line
@@ -45,23 +45,22 @@ static const struct snd_soc_acpi_endpoint spk_3_endpoint = {
	.group_id = 1,
};

/*
 * RT722 is a multi-function codec, three endpoints are created for
 * its headset, amp and dmic functions.
 */
static const struct snd_soc_acpi_endpoint rt722_endpoints[] = {
static const struct snd_soc_acpi_endpoint jack_amp_g1_dmic_endpoints[] = {
	/* Jack Endpoint */
	{
		.num = 0,
		.aggregated = 0,
		.group_position = 0,
		.group_id = 0,
	},
	/* Amp Endpoint, work as spk_l_endpoint */
	{
		.num = 1,
		.aggregated = 0,
		.aggregated = 1,
		.group_position = 0,
		.group_id = 0,
		.group_id = 1,
	},
	/* DMIC Endpoint */
	{
		.num = 2,
		.aggregated = 0,
@@ -229,11 +228,11 @@ static const struct snd_soc_acpi_adr_device rt711_sdca_0_adr[] = {
	}
};

static const struct snd_soc_acpi_adr_device rt722_0_single_adr[] = {
static const struct snd_soc_acpi_adr_device rt722_0_agg_adr[] = {
	{
		.adr = 0x000030025D072201ull,
		.num_endpoints = ARRAY_SIZE(rt722_endpoints),
		.endpoints = rt722_endpoints,
		.num_endpoints = ARRAY_SIZE(jack_amp_g1_dmic_endpoints),
		.endpoints = jack_amp_g1_dmic_endpoints,
		.name_prefix = "rt722"
	}
};
@@ -394,8 +393,8 @@ static const struct snd_soc_acpi_link_adr arl_rt711_l0_rt1316_l3[] = {
static const struct snd_soc_acpi_link_adr arl_rt722_l0_rt1320_l2[] = {
	{
		.mask = BIT(0),
		.num_adr = ARRAY_SIZE(rt722_0_single_adr),
		.adr_d = rt722_0_single_adr,
		.num_adr = ARRAY_SIZE(rt722_0_agg_adr),
		.adr_d = rt722_0_agg_adr,
	},
	{
		.mask = BIT(2),
+11 −2
Original line number Diff line number Diff line
@@ -383,6 +383,15 @@ static const struct snd_soc_acpi_link_adr ptl_rt721_l3[] = {
	{},
};

static const struct snd_soc_acpi_adr_device rt722_0_agg_adr[] = {
	{
		.adr = 0x000030025d072201ull,
		.num_endpoints = ARRAY_SIZE(jack_amp_g1_dmic_endpoints),
		.endpoints = jack_amp_g1_dmic_endpoints,
		.name_prefix = "rt722"
	}
};

static const struct snd_soc_acpi_adr_device rt722_0_single_adr[] = {
	{
		.adr = 0x000030025d072201ull,
@@ -536,8 +545,8 @@ static const struct snd_soc_acpi_link_adr ptl_rt722_l3[] = {
static const struct snd_soc_acpi_link_adr ptl_rt722_l0_rt1320_l23[] = {
	{
		.mask = BIT(0),
		.num_adr = ARRAY_SIZE(rt722_0_single_adr),
		.adr_d = rt722_0_single_adr,
		.num_adr = ARRAY_SIZE(rt722_0_agg_adr),
		.adr_d = rt722_0_agg_adr,
	},
	{
		.mask = BIT(2),