New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 911025 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Jan 3
Cc:
Components:
EstimatedDays: ----
NextAction: ----
OS: Chrome
Pri: 1
Type: Bug



Sign in to add a comment

Take upstream soc-core change to 4.19

Project Member Reported by cychiang@google.com, Dec 3

Issue description

We need to take handy macro from upstream in order to make taking upstream CL easier:

git log --oneline linux/master sound/soc/soc-core.c

2c7b696a7589a ASoC: soc-core: fix trivial checkpatch issues
15a0c64572463 ASoC: add for_each_component_dais() macro
368dee9459472 ASoC: add for_each_component() macro
1a1035a9854fd ASoC: add for_each_comp_order() macro
f70f18f7d459b ASoC: add for_each_card_components() macro
bcb1fd1fcd650 ASoC: add for_each_card_rtds() macro
98061fdbfccc0 ASoC: add for_each_card_links() macro
7fe072b4df5d0 ASoC: add for_each_card_prelinks() macro
be6ac0a9ced99 ASoC: soc-core: add snd_soc_is_matching_component()
4a9ed39477bd1 ASoC: soc-core: manage platform name under snd_soc_init_platform()
a7c439d6128de ASoC: soc-core: remove dai->driver NULL check
e894efef9ac7c ASoC: core: add support to card rebind
4f1b327e65a95 ASoC: soc-core: remove unused num_dai_links
2eda3cb108b69 ASoC: soc-core: avoid nested code on soc_remove_dai()
778ff5bb8689e ASoC: dapm: Move connection of CODEC to CODEC DAIs
0b7990e38971d ASoC: add for_each_rtd_codec_dai() macro
3db769f17714a ASoC: add for_each_link_codecs() macro
63a886f38dd96 ASoC: fix soc-core.c kernel-doc warning
daecf46ee0e5f ASoC: soc-core: use snd_soc_dai_link_component for platform

 
Components: OS>Kernel>Audio
More patches are needed in order to apply the patches in #0 cleanly:

6bae5ea949892 ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers
00deadb5d86a3 ASoC: Intel: Skylake: use hda_bus instead of hdac_bus
3d17871349d5c ASoC: Intel: Skylake: add HDA BE DAIs
9cdae4352cba3 ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails
7c33b5f16915a ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs
8dce1d026da45 ASoC: Intel: common: add table for HDA-based platforms
b4af16d617add ALSA: hda: move hda_codec.h to include/sound

Cc: diand...@chromium.org
Looking through your series, I see some other commits we should have.  These seem to fix problems introduced by commits in your series.  When I pick from upstream I always look through linuxnext for the short git hash of the commits I'm picking so I can catch this stuff:

 UPSTREAM: ASoC: tidyup for_each_card_prelinks() dai_link
 FROMGIT: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new()
 UPSTREAM: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai
 UPSTREAM: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro
 UPSTREAM: ASoC: rename for_each_rtd_codec_dai_reverse to rollback
 UPSTREAM: ASoC: convert for_each_rtd_codec_dai() for missing part

---

I've added these to your series:

remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361604 UPSTREAM: ASoC: convert for_each_rtd_codec_dai() for missing part        
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361605 UPSTREAM: ASoC: rename for_each_rtd_codec_dai_reverse to rollback        
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361606 UPSTREAM: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro        
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361607 UPSTREAM: ASoC: dapm: Add missing return value check for snd_soc_dapm_new_dai        
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361608 FROMGIT: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new()        
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361609 UPSTREAM: ASoC: tidyup for_each_card_prelinks() dai_link        

Hi Doug,
Thanks a lot for checking on the patches.
I think I should

1. Drop changes specific to Intel https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360962.

2. Take a better look at the dapm series and see if we should apply 
 them https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360954

My intention was to take those macro changes because later patches depends on them.
I will upload another series.

And thanks a lot for the tip of checking patches.





It seems that we can safely drop patch series of dapm without introducing conflict.

https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360954

Now I am inclined to drop them for now.
Cc: tzungbi@chromium.org
For Intel patch, the patch series is at https://patchwork.kernel.org/cover/10547815/

There are 8 patches , the first one is already merged so I will take 7 of them.
The last one is not merged https://patchwork.kernel.org/patch/10547829/
But we need another one to fix issue related to that patch series.
8c4e7c2ee8096 ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional
I changed the order of the series:

These 8 are for Intel and they can be merged first.

remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360961 UPSTREAM: ALSA: hda: move hda_codec.h to include/sound
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360962 UPSTREAM: ASoC: Intel: common: add table for HDA-based platforms
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360963 BACKPORT: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360964 UPSTREAM: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360965 UPSTREAM: ASoC: Intel: Skylake: add HDA BE DAIs
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360966 UPSTREAM: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360967 UPSTREAM: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers
remote:   https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1361906 BACKPORT: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional

The change which involves a major changes in dapm is dropped because we don't need codec to codec DAI.

https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/1360954

Luckily, it does not affect our cherry-picking of later patches.


And the 6 CLs by Doug in #3 are included.
Cc: cujomalainey@chromium.org
+curtis to double check the intel changes.
Looks good, most of those were backported to 4.14 as well for SOF
Project Member

Comment 12 by bugdroid1@chromium.org, Dec 6

Labels: merge-merged-chromeos-4.19
The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/6e1ace143f7a503306ddea141674b6eb931d75c0

commit 6e1ace143f7a503306ddea141674b6eb931d75c0
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:32 2018

UPSTREAM: ASoC: soc-core: use snd_soc_dai_link_component for platform

Current struct snd_soc_dai_link is supporting multicodec,
and it is supporting legacy style of
	codec_name
	codec_of_node
	code_dai_name
This is handled as single entry of multicodec.

We don't have multicpu support yet, but in the future we will.
In such case, we can use snd_soc_dai_link_component for both
cpu/codec. Then the code will be more simple and readble.

As next step, we want to use it for platform, too.
This patch adds snd_soc_dai_link_component style for platform.
We might have multiplatform support in the future, but we
don't know yet. To avoid un-known issue / complex code,
this patch supports just single-platform as 1st step.

If we could use snd_soc_dai_link_component for all CPU/Codec/Platform,
we will switch to new style, and remove legacy code.
This is prepare for it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit daecf46ee0e5f0fb2349e20af53c4653e2afc440)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I7b8ebbe7e4f0fa568ba5ccc7064f74af852de5a1
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360950
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/6e1ace143f7a503306ddea141674b6eb931d75c0/sound/soc/soc-core.c
[modify] https://crrev.com/6e1ace143f7a503306ddea141674b6eb931d75c0/include/sound/soc.h

Project Member

Comment 13 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/b6aabda95037c56151b503a112ba4896a54b5b4f

commit b6aabda95037c56151b503a112ba4896a54b5b4f
Author: Randy Dunlap <rdunlap@infradead.org>
Date: Thu Dec 06 22:34:33 2018

UPSTREAM: ASoC: fix soc-core.c kernel-doc warning

Fix kernel-doc warning:

../sound/soc/soc-core.c:2918: warning: Excess function parameter 'legacy_dai_naming' description in 'snd_soc_register_dais'

Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 63a886f38dd96868e33488eccee8ed427144d397)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ia2b38018d1425e3058a62ab466c8a4a28e161623
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360951
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/b6aabda95037c56151b503a112ba4896a54b5b4f/sound/soc/soc-core.c

Project Member

Comment 14 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9de319b1b59f3f18ee78640e712cac44816b8e8f

commit 9de319b1b59f3f18ee78640e712cac44816b8e8f
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:35 2018

UPSTREAM: ASoC: add for_each_link_codecs() macro

ALSA SoC snd_soc_dai_link has snd_soc_dai_link_component array
for codecs.
To be more readable code, this patch adds
new for_each_link_codecs() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 3db769f17714ae65f2faf44ff2bae9d52f4bd46b)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I5e127a06f983cdc5d7889773204aed76965bb6fe
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360952
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/9de319b1b59f3f18ee78640e712cac44816b8e8f/sound/soc/soc-core.c
[modify] https://crrev.com/9de319b1b59f3f18ee78640e712cac44816b8e8f/include/sound/soc.h
[modify] https://crrev.com/9de319b1b59f3f18ee78640e712cac44816b8e8f/sound/soc/meson/axg-card.c

Project Member

Comment 15 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0875f40161989681ef19347c286fe62bcb2709de

commit 0875f40161989681ef19347c286fe62bcb2709de
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:37 2018

UPSTREAM: ASoC: add for_each_rtd_codec_dai() macro

ALSA SoC snd_soc_pcm_runtime has snd_soc_dai array for codec_dai.
To be more readable code, this patch adds
new for_each_rtd_codec_dai() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 0b7990e38971da403ce223d8bdc758a817eb72f8)

CQ-DEPEND=CL:I34750b12787d4005c477f2fa81f7b7989e5b46d8
BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I796edfc2ce7fc76e00af239bdcbec194b86f975a
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360953
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/soc-pcm.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/intel/boards/kbl_rt5663_max98927.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/soc-dapm.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/mediatek/mt8173/mt8173-rt5650-rt5514.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/mediatek/mt8173/mt8173-rt5650.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/intel/boards/kbl_rt5663_rt5514_max98927.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/mediatek/mt8173/mt8173-rt5650-rt5676.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/meson/axg-card.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/sound/soc/soc-core.c
[modify] https://crrev.com/0875f40161989681ef19347c286fe62bcb2709de/include/sound/soc.h

Project Member

Comment 16 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/a8b6f9d8ce4b63e99c4ac1b060c0e95fd6b59feb

commit a8b6f9d8ce4b63e99c4ac1b060c0e95fd6b59feb
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:43 2018

UPSTREAM: ASoC: soc-core: avoid nested code on soc_remove_dai()

Nested code is not readable.
This patch avoid it on soc_remove_dai().

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 2eda3cb108b699a6ff78a87e25143c153bc88e41)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I93f2672bc097a3e260c13db3c9adca525301bb46
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360955
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/a8b6f9d8ce4b63e99c4ac1b060c0e95fd6b59feb/sound/soc/soc-core.c

Project Member

Comment 17 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/638ecd524e1ea654145270234e498890d9186863

commit 638ecd524e1ea654145270234e498890d9186863
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:45 2018

UPSTREAM: ASoC: soc-core: remove unused num_dai_links

ALSA SoC is counting card->dai_link_list user,
but no-one is using it.
Let's remove it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 4f1b327e65a9516a46ea491ce72a5161be176af8)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I791a4635e87bac755ad49392c307f34777316d7c
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360956
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/638ecd524e1ea654145270234e498890d9186863/sound/soc/soc-core.c
[modify] https://crrev.com/638ecd524e1ea654145270234e498890d9186863/include/sound/soc.h

Project Member

Comment 18 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/eb58c6a71c84bb1c9e806d3b0bcad469d78d09e5

commit eb58c6a71c84bb1c9e806d3b0bcad469d78d09e5
Author: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Date: Thu Dec 06 22:34:46 2018

UPSTREAM: ASoC: core: add support to card rebind

Current behaviour of ASoC core w.r.t to component removal is that it
unregisters dependent sound card totally. There is no support to
rebind the card if the component comes back.
Typical use case is DSP restart or kernel modules itself.

With this patch, core now maintains list of cards that are unbind due to
any of its depended components are removed and card not unregistered yet.
This list is cleared when the card is rebind successfully or when the
card is unregistered from machine driver.

This list of unbind cards are tried to bind once again after every new
component is successfully added, giving a fair chance for card bind
to be successful.

Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit e894efef9ac7c10b7727798dcc711cccf07569f9)

CQ-DEPEND=CL:I954b8444dfbd7c1aee26f12189b2ebf9c80d73a7
BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I4af31a72f82f889ebdcb19a53a73b4b96140bb6b
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360957
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/eb58c6a71c84bb1c9e806d3b0bcad469d78d09e5/sound/soc/soc-core.c
[modify] https://crrev.com/eb58c6a71c84bb1c9e806d3b0bcad469d78d09e5/include/sound/soc.h

Project Member

Comment 19 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/6ee0066e42956b35691181e4c581ca113205eca4

commit 6ee0066e42956b35691181e4c581ca113205eca4
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:50 2018

UPSTREAM: ASoC: soc-core: remove dai->driver NULL check

It is strange if it has "dai" but doesn't have "dai->driver".
And more over "dai->driver->xxx" is used everywhere without
"dai->driver" pointer NULL checking.
It got Oops already if "dai->driver" was NULL.
Let's remove un-needed "dai->driver" NULL check.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit a7c439d6128de2cbc087ae7524b47f613ff8bc6c)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I13b46084ee5c456c9acde391fd8343c7d8d83d21
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360958
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/6ee0066e42956b35691181e4c581ca113205eca4/sound/soc/soc-core.c

Project Member

Comment 20 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/f61ae2f756ff92c85ff26d46c3d7bc602aa4a011

commit f61ae2f756ff92c85ff26d46c3d7bc602aa4a011
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:51 2018

UPSTREAM: ASoC: soc-core: manage platform name under snd_soc_init_platform()

Now "platform" is controlled by snd_soc_dai_link_component,
thus its "name" can be initialized in snd_soc_init_platform(),
instead of soc_bind_dai_link() local.
This patch do it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 4a9ed39477bd1635cf23b49e10f9e364329bbe46)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I3717c60081d5ad4d52373b6d3633b125e4306b47
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360959
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/f61ae2f756ff92c85ff26d46c3d7bc602aa4a011/sound/soc/soc-core.c

Project Member

Comment 21 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0ac843115ad85275278e49708d98b31180804a61

commit 0ac843115ad85275278e49708d98b31180804a61
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:53 2018

UPSTREAM: ASoC: soc-core: add snd_soc_is_matching_component()

To find (CPU/)Codec/Platform, we need to find component first
(= on CPU/Codec/Platform), and find DAI from it (= CPU/Codec).
These are similar operation but difficult to be simple,
and has many duplicate code to finding component.
This patch adds new snd_soc_is_matching_component(),
and reduce duplicate codes.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit be6ac0a9ced99403c435b2b2fe9ac4bd55749823)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I6fbbebcf133dc62aafa0464009dfb50c85698283
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360960
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/0ac843115ad85275278e49708d98b31180804a61/sound/soc/soc-core.c

Project Member

Comment 22 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9c01bfbf4f0c045caaa90cf502aba384787da125

commit 9c01bfbf4f0c045caaa90cf502aba384787da125
Author: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Date: Thu Dec 06 22:34:20 2018

UPSTREAM: ALSA: hda: move hda_codec.h to include/sound

As suggested by Takashi, move this header file to make it easier
to include from e.g. the Intel Skylake driver in follow-up patches

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit b4af16d617add4f6380d6651473b8efba13ca8ca)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ia8bf56d5f97f77ba24a5e5571e1bc698c8132bf5
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360961
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[rename] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/include/sound/hda_codec.h
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_beep.h
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_sigmatel.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_cirrus.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_sysfs.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_conexant.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_auto_parser.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_si3054.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_controller.h
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_cmedia.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_generic.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_bind.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_tegra.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_analog.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_intel.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_ca0110.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_hdmi.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_hwdep.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_eld.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_codec.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_realtek.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_proc.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_ca0132.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/patch_via.c
[modify] https://crrev.com/9c01bfbf4f0c045caaa90cf502aba384787da125/sound/pci/hda/hda_jack.c

Project Member

Comment 23 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/8e9f5e5a39db52bfe2a127f67d54772e7b3f5001

commit 8e9f5e5a39db52bfe2a127f67d54772e7b3f5001
Author: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Date: Thu Dec 06 22:34:21 2018

UPSTREAM: ASoC: Intel: common: add table for HDA-based platforms

Expose a table containing machine driver information for HDAudio-based
platforms handled by ASoC on Intel hardware.

We only set constant values that are valid across multiple
platforms. The firmware name used by the DSP will be set dynamically
for each platform.

The table is made of a single entry for now, if we need more
complicated set-up where HDAudio is mixed with ACPI-enumerated devices
(I2C, SoundWire) then we'd expect the differentiation to be handled
through information provided by the BIOS (as done for KBL
Chromebooks).

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 8dce1d026da4588382ed8c03e791c7c9b37b22e8)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I51461d4cc88a1962afd9443904b2974c52329694
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360962
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/8e9f5e5a39db52bfe2a127f67d54772e7b3f5001/include/sound/soc-acpi-intel-match.h
[modify] https://crrev.com/8e9f5e5a39db52bfe2a127f67d54772e7b3f5001/sound/soc/intel/common/Makefile
[add] https://crrev.com/8e9f5e5a39db52bfe2a127f67d54772e7b3f5001/sound/soc/intel/common/soc-acpi-intel-hda-match.c

Project Member

Comment 24 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/fe8e63691f0550ea67513516c05232f609e54fd5

commit fe8e63691f0550ea67513516c05232f609e54fd5
Author: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Date: Thu Dec 06 22:34:23 2018

BACKPORT: ASoC: Intel: Boards: Machine driver for SKL+ w/ HDAudio codecs

Add machine driver for Intel platforms (SKL/KBL/BXT/APL) with
HDA and iDisp codecs. This patch adds support for only iDisp (HDMI/DP)
codec. In the following patches support for HDA codecs will be added.

This should work for other Intel platforms as well e.g. GLK,CNL
however this series is not tested on all the platforms.

Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 7c33b5f16915a7bc3d3b81a9a041bdc562f71dfb)

Conflicts:
   sound/soc/intel/boards/Makefile

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ic924f0f90e87c189047547b292b42a15d859431f
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360963
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/skylake/skl.h
[modify] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/boards/Kconfig
[modify] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/boards/Makefile
[add] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/boards/skl_hda_dsp_common.c
[add] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/boards/skl_hda_dsp_generic.c
[add] https://crrev.com/fe8e63691f0550ea67513516c05232f609e54fd5/sound/soc/intel/boards/skl_hda_dsp_common.h

Project Member

Comment 25 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/869cf68b803ca38bdd9ef6129cb39b554dba68b4

commit 869cf68b803ca38bdd9ef6129cb39b554dba68b4
Author: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Date: Thu Dec 06 22:34:24 2018

UPSTREAM: ASoC: Intel: Skylake: use HDAudio if ACPI enumeration fails

When no I2S based codec entries are found in the BIOS, check if there are
any HDA codecs detected on the bus. Based on the number of codecs found
take appropriate action in machine driver. If there are two HDA codecs
i.e. iDisp + HDA found on the bus, register DAIs and DAI links for both.
If only one codec i.e. iDisp is found then load only iDisp machine driver.

Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 9cdae4352cba3f66d39a4ef78bb726940ae1e513)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I056bc67c79116805732009724c22e3ff5405f570
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360964
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/869cf68b803ca38bdd9ef6129cb39b554dba68b4/sound/soc/intel/skylake/skl.c

Project Member

Comment 26 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/f28abbc28f24dacac1d8212a32c6a824003a0796

commit f28abbc28f24dacac1d8212a32c6a824003a0796
Author: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Date: Thu Dec 06 22:34:26 2018

UPSTREAM: ASoC: Intel: Skylake: add HDA BE DAIs

Add support for HDA BE DAIs in SKL platform driver.

Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 3d17871349d5cec0a37ce9407ba72fdbf8572cfd)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I8b35ed2cdb162fd8f9d254b94aa6139595ac3e26
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360965
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/f28abbc28f24dacac1d8212a32c6a824003a0796/sound/soc/intel/skylake/skl-pcm.c

Project Member

Comment 27 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/9f00fd7a6d1b0ceb22a049fd30d7685d0a1fa312

commit 9f00fd7a6d1b0ceb22a049fd30d7685d0a1fa312
Author: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Date: Thu Dec 06 22:34:27 2018

UPSTREAM: ASoC: Intel: Skylake: use hda_bus instead of hdac_bus

Use hda_bus instead of hdac_bus in the SKL ASoC platform driver to enable
reuse of legacy HDA codec drivers.

Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 00deadb5d86a3c1e691aaa073a8852a198595099)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ideb82a930cabc9cc2ca0c66a8141137bbeb3abf3
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360966
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/9f00fd7a6d1b0ceb22a049fd30d7685d0a1fa312/sound/soc/intel/skylake/skl.c
[modify] https://crrev.com/9f00fd7a6d1b0ceb22a049fd30d7685d0a1fa312/sound/soc/intel/skylake/skl.h

Project Member

Comment 28 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/ff84d736ac384f7d79f33290d6638207f5ae495c

commit ff84d736ac384f7d79f33290d6638207f5ae495c
Author: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Date: Thu Dec 06 22:34:29 2018

UPSTREAM: ASoC: hdac_hda: add asoc extension for legacy HDA codec drivers

This patch adds a kernel module which is used by the legacy HDA
codec drivers as library. This implements hdac_ext_bus_ops to enable
the reuse of legacy HDA codec drivers with ASoC platform drivers.

Signed-off-by: Rakesh Ughreja <rakesh.a.ughreja@intel.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 6bae5ea9498926440ffc883f3dbceb0adc65e492)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I342fad2adab6fe2724422472676229b4ba30311a
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360967
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/intel/skylake/skl.c
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/pci/hda/hda_bind.c
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/intel/boards/Kconfig
[add] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/codecs/hdac_hda.h
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/intel/boards/skl_hda_dsp_common.c
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/intel/boards/skl_hda_dsp_generic.c
[add] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/codecs/hdac_hda.c
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/intel/boards/skl_hda_dsp_common.h
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/codecs/Kconfig
[modify] https://crrev.com/ff84d736ac384f7d79f33290d6638207f5ae495c/sound/soc/codecs/Makefile

Project Member

Comment 29 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/40dd2e6b92f79c8342f52c12ae821925a3226985

commit 40dd2e6b92f79c8342f52c12ae821925a3226985
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:55 2018

UPSTREAM: ASoC: add for_each_card_prelinks() macro

To be more readable code, this patch adds
new for_each_card_prelinks() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 7fe072b4df5d0cc832eb758c1eed243c145a2dfc)

CQ-DEPEND=CL:Ia0dd5013c8688cda6f1b289bd39805b6668a7355
BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ie43a0adb5318284069d73b5dc5d111b8ae253d4a
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360968
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/samsung/tm2_wm5110.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt2701/mt2701-cs42448.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt8173/mt8173-max98090.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt8173/mt8173-rt5650-rt5514.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/generic/simple-card-utils.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt2701/mt2701-wm8960.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt8173/mt8173-rt5650.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt6797/mt6797-mt6351.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/intel/boards/skl_hda_dsp_generic.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/mediatek/mt8173/mt8173-rt5650-rt5676.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/qcom/sdm845.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/meson/axg-card.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/qcom/apq8096.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/fsl/pcm030-audio-fabric.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/sound/soc/soc-core.c
[modify] https://crrev.com/40dd2e6b92f79c8342f52c12ae821925a3226985/include/sound/soc.h

Project Member

Comment 30 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/0a72e2d7f7cc0a762020c651ed8fd07ea51b5712

commit 0a72e2d7f7cc0a762020c651ed8fd07ea51b5712
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:58 2018

UPSTREAM: ASoC: add for_each_card_links() macro

To be more readable code, this patch adds
new for_each_card_links() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 98061fdbfccc02aa0fd6637c67a0524aab385b8d)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I2347797018fe2fee399288db288aa5879bbbf94e
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360969
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/0a72e2d7f7cc0a762020c651ed8fd07ea51b5712/sound/soc/soc-core.c
[modify] https://crrev.com/0a72e2d7f7cc0a762020c651ed8fd07ea51b5712/include/sound/soc.h

Project Member

Comment 31 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/419178c6ea31932ab0f5fea59cf8bcf438f6bfee

commit 419178c6ea31932ab0f5fea59cf8bcf438f6bfee
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:35:00 2018

UPSTREAM: ASoC: add for_each_card_rtds() macro

To be more readable code, this patch adds
new for_each_card_rtds() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit bcb1fd1fcd6507ba5a1f8610550135dc367aedb7)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I9d51ff3730a92fc232a3756ad8214d5422d72ebd
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360970
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/sound/soc/soc-pcm.c
[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/sound/soc/soc-dapm.c
[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/sound/soc/soc-core.c
[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/sound/soc/codecs/hdac_hdmi.c
[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/sound/soc/intel/atom/sst-mfld-platform-pcm.c
[modify] https://crrev.com/419178c6ea31932ab0f5fea59cf8bcf438f6bfee/include/sound/soc.h

Project Member

Comment 32 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/1e34b94313f4652f674c15f414e615f96f5b1396

commit 1e34b94313f4652f674c15f414e615f96f5b1396
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:35:01 2018

UPSTREAM: ASoC: add for_each_card_components() macro

To be more readable code, this patch adds
new for_each_card_components() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit f70f18f7d459b7958a4d3944396e2bc4a9f7ed72)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I0a4175f2426879473b5a1541602d70d477c73fa6
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360971
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/sound/soc/intel/boards/broadwell.c
[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/sound/soc/soc-core.c
[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/sound/soc/intel/boards/bytcr_rt5651.c
[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/sound/soc/intel/boards/cht_bsw_rt5672.c
[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/sound/soc/intel/boards/bytcr_rt5640.c
[modify] https://crrev.com/1e34b94313f4652f674c15f414e615f96f5b1396/include/sound/soc.h

Project Member

Comment 33 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/7d807316bbcc2a31dfd037ec4c7faca1c0db6957

commit 7d807316bbcc2a31dfd037ec4c7faca1c0db6957
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:35:03 2018

UPSTREAM: ASoC: add for_each_comp_order() macro

To be more readable code, this patch adds
new for_each_comp_order() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 1a1035a9854fd893d487a84edccc1d5804e1d716)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I19b65d32061eae5df9dab264c0df2cd23b273e24
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360972
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/7d807316bbcc2a31dfd037ec4c7faca1c0db6957/sound/soc/soc-core.c
[modify] https://crrev.com/7d807316bbcc2a31dfd037ec4c7faca1c0db6957/include/sound/soc.h

Project Member

Comment 34 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/22609583bf393e040f36430e8f80a66b31211b3e

commit 22609583bf393e040f36430e8f80a66b31211b3e
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:35:05 2018

UPSTREAM: ASoC: add for_each_component() macro

To be more readable code, this patch adds
new for_each_component() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 368dee9459472b44f760a35cd07a6f3b90b3e549)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I74d7e4e63ad110749c0f4c71fac696b88667ba82
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360973
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/22609583bf393e040f36430e8f80a66b31211b3e/sound/soc/soc-core.c

Project Member

Comment 35 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/811662eafa2ae4e918a4737c34c9be500d1b14df

commit 811662eafa2ae4e918a4737c34c9be500d1b14df
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:35:07 2018

UPSTREAM: ASoC: add for_each_component_dais() macro

To be more readable code, this patch adds
new for_each_component_dais() macro, and replace existing code to it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 15a0c64572463eddf59e80aa643d3a87809a7d9b)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I4a535b00b7ea1e7bf4700a342ada68bebcce465e
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360974
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/811662eafa2ae4e918a4737c34c9be500d1b14df/sound/soc/soc-core.c
[modify] https://crrev.com/811662eafa2ae4e918a4737c34c9be500d1b14df/include/sound/soc.h

Project Member

Comment 36 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/befd500c4aabf78a0924d696e5ce2aefc72d257b

commit befd500c4aabf78a0924d696e5ce2aefc72d257b
Author: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Date: Thu Dec 06 22:35:08 2018

UPSTREAM: ASoC: soc-core: fix trivial checkpatch issues

Fix a few trivial aka cosmetic only checkpatch issues like long lines,
wrong indentations, spurious blanks and newlines, missing newlines,
multi-line comments etc.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 2c7b696a7589ab14854c132dc732973fbd498d5a)

CQ-DEPEND=CL:I7b8ebbe7e4f0fa568ba5ccc7064f74af852de5a1
BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I02e0c3b958677356b1fb85328d93f7b10f6c9f80
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1360975
Commit-Ready: Douglas Anderson <dianders@chromium.org>

[modify] https://crrev.com/befd500c4aabf78a0924d696e5ce2aefc72d257b/sound/soc/soc-core.c

Project Member

Comment 37 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/68fa5584a7e9c89e7ea909547ba0021432d8c707

commit 68fa5584a7e9c89e7ea909547ba0021432d8c707
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:38 2018

UPSTREAM: ASoC: convert for_each_rtd_codec_dai() for missing part

commit 0b7990e38971 ("ASoC: add for_each_rtd_codec_dai() macro")
added for_each_rtd_codec_dai(), but it didn't convert few loop
which is not using "rtd". This patch fixup it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 7afecb3073e357ebfe4087e4ab8bb493c32bb652)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I97cd8af889ea324abb3e7b7a8d0b0ed7fee8a290
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361604
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/68fa5584a7e9c89e7ea909547ba0021432d8c707/sound/soc/soc-pcm.c

Project Member

Comment 38 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/c7610676f0e7dc671fc1269032f54b7f58c82173

commit c7610676f0e7dc671fc1269032f54b7f58c82173
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:40 2018

UPSTREAM: ASoC: rename for_each_rtd_codec_dai_reverse to rollback

commit 0b7990e38971 ("ASoC: add for_each_rtd_codec_dai() macro")
added for_each_rtd_codec_dai_reverse(). but _rollback() is better
naming than _reverse(). This patch rename it.

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 6d11b12879144da5f5aa08071a8a7f95f3b5a4e8)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ia5e1a52cb3bcc4b5f5f5d7f7b54ca6a9b82d7f9f
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361605
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/c7610676f0e7dc671fc1269032f54b7f58c82173/sound/soc/soc-pcm.c
[modify] https://crrev.com/c7610676f0e7dc671fc1269032f54b7f58c82173/include/sound/soc.h

Project Member

Comment 39 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/e585c1b4e9c57ca61bc5ab26c6f0496e7c02ef75

commit e585c1b4e9c57ca61bc5ab26c6f0496e7c02ef75
Author: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Date: Thu Dec 06 22:34:41 2018

UPSTREAM: ASoC: fix oops w/ for_each_rtd_codec_dai_rollback() macro

A kernel oops happens on an error case (usual missing BE mixer
configuration required by Intel SST driver). Git bisect points to this
macro and an operator precedence issue.

	for (; ((i--) >= 0) && ((dai) = rtd->codec_dais[i]);)

The initial code replaced by this macro was
	while (--i >= 0) {
		codec_dai = rtd->codec_dais[i];

Fix the C operator precedence difference by reverting to pre-decrement

Fixes: 0b7990e3897 ('ASoC: add for_each_rtd_codec_dai() macro')
Cc: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 23cb2d04db54535df65edbbebbca89f2590f08bd)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I34750b12787d4005c477f2fa81f7b7989e5b46d8
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361606
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/e585c1b4e9c57ca61bc5ab26c6f0496e7c02ef75/include/sound/soc.h

Project Member

Comment 40 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/f0c4e830bac97e89a08ab36e27c38c75ec7865c7

commit f0c4e830bac97e89a08ab36e27c38c75ec7865c7
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:48 2018

FROMGIT: ASoC: rsnd: tidyup registering method for rsnd_kctrl_new()

Current rsnd dvc.c is using flags to avoid duplicating register for
MIXer case. OTOH, commit e894efef9ac7 ("ASoC: core: add support to card
rebind") allows to rebind sound card without rebinding all drivers.

Because of above patch and dvc.c flags, it can't re-register kctrl if
only sound card was rebinded, because dvc is keeping old flags.
(Of course it will be no problem if rsnd driver also be rebinded,
but it is not purpose of above patch).

This patch checks current card registered kctrl when registering.
In MIXer case, it can avoid duplicate register if card already has same
kctrl. In rebind case, it can re-register kctrl because card registered
kctl had been removed when unbinding.

This patch is updated version of commit b918f1bc7f1ce ("ASoC: rsnd: DVC
kctrl sets once")

Reported-by: Nguyen Viet Dung <dung.nguyen.aj@renesas.com>
Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Tested-by: Nguyen Viet Dung <dung.nguyen.aj@renesas.com>
Cc: Hiroyuki Yokoyama <hiroyuki.yokoyama.vx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 9c698e8481a15237a5b1db5f8391dd66d59e42a4
 https://git.kernel.org/pub/scm/linux/kernel/git/broonie/sound.git for-next)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I954b8444dfbd7c1aee26f12189b2ebf9c80d73a7
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361608
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/f0c4e830bac97e89a08ab36e27c38c75ec7865c7/sound/soc/sh/rcar/dvc.c
[modify] https://crrev.com/f0c4e830bac97e89a08ab36e27c38c75ec7865c7/sound/soc/sh/rcar/core.c

Project Member

Comment 41 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/1525fee1b6aab35db0dfa398420c082f4077ea5e

commit 1525fee1b6aab35db0dfa398420c082f4077ea5e
Author: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Date: Thu Dec 06 22:34:56 2018

UPSTREAM: ASoC: tidyup for_each_card_prelinks() dai_link

commit 7fe072b4df5d0 ("ASoC: add for_each_card_prelinks() macro")
added new for_each_card_prelinks() macro, but it had typo.
This patch fixup it

Signed-off-by: Kuninori Morimoto <kuninori.morimoto.gx@renesas.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 0310820c2738e92003d9dd8cabee77ff958a16dc)

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ia0dd5013c8688cda6f1b289bd39805b6668a7355
Signed-off-by: Douglas Anderson <dianders@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361609
Tested-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/1525fee1b6aab35db0dfa398420c082f4077ea5e/sound/soc/mediatek/mt6797/mt6797-mt6351.c
[modify] https://crrev.com/1525fee1b6aab35db0dfa398420c082f4077ea5e/sound/soc/mediatek/mt2701/mt2701-cs42448.c
[modify] https://crrev.com/1525fee1b6aab35db0dfa398420c082f4077ea5e/sound/soc/mediatek/mt2701/mt2701-wm8960.c

Project Member

Comment 42 by bugdroid1@chromium.org, Dec 6

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/f991dcd9195538cc3b5a0d8c56f7adf164ba4c28

commit f991dcd9195538cc3b5a0d8c56f7adf164ba4c28
Author: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Date: Thu Dec 06 22:34:30 2018

BACKPORT: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional

The Skylake driver currently has a set of problems supporting
load/unload modules. We need to make the HDaudio codec support
optional to help narrow down the issues.

Support for HDaudio codecs also leads to a Kconfig issue. We want the
hdac_hda codec to be compilable independently of Skylake (e.g. with
ALL_CODECS) but when Skylake is selected as built-in the hdac_hda
codec needs to use the same option due a a code dependency

Solve both problems by adding a user-selectable boolean Kconfig,
select HDAC_HDA as needed and make the HDaudio codec support in the
Skylake driver optional. Tests on a Chell Chromebook device without
HDaudio show no regression for speaker and HDMI playback.

This is submitted as an RFC to allow for comments and more validation.

Signed-off-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
(cherry picked from commit 8c4e7c2ee8096b5ca8214418f287b3878d578cc0)

Conflicts:
   sound/soc/intel/boards/Kconfig

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: Ia0ebf859c627e67666aa3e54584d6526c8631aa0
Signed-off-by: Cheng-Yi Chiang <cychiang@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1361906
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Curtis Malainey <cujomalainey@chromium.org>

[modify] https://crrev.com/f991dcd9195538cc3b5a0d8c56f7adf164ba4c28/sound/soc/intel/skylake/skl.c
[modify] https://crrev.com/f991dcd9195538cc3b5a0d8c56f7adf164ba4c28/sound/soc/intel/boards/Kconfig
[modify] https://crrev.com/f991dcd9195538cc3b5a0d8c56f7adf164ba4c28/sound/soc/intel/Kconfig

Project Member

Comment 43 by bugdroid1@chromium.org, Dec 19

The following revision refers to this bug:
  https://chromium.googlesource.com/chromiumos/third_party/kernel/+/402feb70395ba74173db99a39cdba2e821264bed

commit 402feb70395ba74173db99a39cdba2e821264bed
Author: Nicolas Boichat <drinkcat@chromium.org>
Date: Wed Dec 19 05:33:32 2018

CHROMIUM: config: Renormalize CONFIG_SND_SOC_INTEL_SKYLAKE_COMMON/HDAUDIO_CODEC

These options were added in f991dcd9195538cc3b5a0d8c56f7adf164ba4c28
("BACKPORT: ASoC: Intel: Skylake: fix Kconfigs, make HDaudio codec optional")

BUG= chromium:911025 
TEST=Build and boot on cheza

Change-Id: I8805a9bc64c0b56518ed61eb7b3ecdcce2fac48d
Signed-off-by: Nicolas Boichat <drinkcat@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/1382065
Commit-Ready: Douglas Anderson <dianders@chromium.org>
Tested-by: Douglas Anderson <dianders@chromium.org>
Reviewed-by: Cheng-Yi Chiang <cychiang@chromium.org>

[modify] https://crrev.com/402feb70395ba74173db99a39cdba2e821264bed/chromeos/config/x86_64/chromeos-intel-pineview.flavour.config
[modify] https://crrev.com/402feb70395ba74173db99a39cdba2e821264bed/chromeos/config/x86_64/chromiumos-x86_64.flavour.config

Just an FYI, I am merging a lot of those features already as part of the SOF v0.6 merge.
Status: Fixed (was: Untriaged)

Sign in to add a comment