Skip to content

ASoC: Intel: sof_rt5650: fix soundcard registration failure#5101

Closed
brentlu wants to merge 1 commit intothesofproject:topic/sof-devfrom
brentlu:rt5650-spk-ssp-fix
Closed

ASoC: Intel: sof_rt5650: fix soundcard registration failure#5101
brentlu wants to merge 1 commit intothesofproject:topic/sof-devfrom
brentlu:rt5650-spk-ssp-fix

Conversation

@brentlu
Copy link

@brentlu brentlu commented Jul 10, 2024

ALC5650 supports both headphone and speaker paths. When there is no amplifier on the board, machine driver will add an dai link for speaker pipeline. The code does not handle SSP port number properly so the dai link data is invalid and results in soundcard registration failure.

Fixes: 8efcd48 ("ASoC: Intel: sof_rt5682: use common module for sof_card_private initialization")
Reported-by: Curtis Malainey cujomalainey@chromium.org

ctx->amp_type = CODEC_RT5650;
ctx->ssp_amp = (sof_rt5682_quirk & SOF_SSP_PORT_AMP_MASK) >>
SOF_SSP_PORT_AMP_SHIFT;
}
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we move the if (ctx->codec_type == CODEC_RT5650 && ctx->amp_type == CODEC_NONE) test to sof_intel_board_get_ctx() as it is generic for the rt5650 codec?

ALC5650 supports both headphone and speaker paths. When there is no
amplifier on the board, machine driver will add an dai link for
speaker pipeline. The code does not handle SSP port number properly
so the dai link data is invalid and results in soundcard registration
failure.

Fixes: 8efcd48 ("ASoC: Intel: sof_rt5682: use common module for sof_card_private initialization")
Reported-by: Curtis Malainey <cujomalainey@chromium.org>
Signed-off-by: Brent Lu <brent.lu@intel.com>
@cujomalainey
Copy link

Closing as the solution in #5100 is generic

alexelder pushed a commit to alexelder/linux that referenced this pull request Jul 12, 2024
ALC5650 supports both headphone and speaker paths. When there is no
amplifier on the board, machine driver will add an dai link for
speaker pipeline. The code does not handle SSP port number properly
so the dai link data is invalid and results in soundcard registration
failure.

Fixes: 8efcd48 ("ASoC: Intel: sof_rt5682: use common module for sof_card_private initialization")
Reported-by: Curtis Malainey <cujomalainey@chromium.org>
Signed-off-by: Brent Lu <brent.lu@intel.com>
(cherry-picked from thesofproject#5101)

UPSTREAM-TASK=b:352191605
BUG=b:351951500,b:348065123
TEST=deploy kernel and check rt5650 boards soundcard probe

Change-Id: Idddadbf1c68122b5377944b594a87a7b68e77fac
Signed-off-by: Terry Cheong <htcheong@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/5691052
Reviewed-by: Pin-chih Lin <johnylin@google.com>
fadlyas07 pushed a commit to greenforce-project/chromeos-kernel-mirror that referenced this pull request Jul 20, 2024
… failure"

This reverts commit 4d474a1.

Reason for revert: reland with a FROMGIT patch

Original change's description:
> CHROMIUM: ASoC: Intel: sof_rt5650: fix soundcard registration failure
>
> ALC5650 supports both headphone and speaker paths. When there is no
> amplifier on the board, machine driver will add an dai link for
> speaker pipeline. The code does not handle SSP port number properly
> so the dai link data is invalid and results in soundcard registration
> failure.
>
> Fixes: 8efcd4864652 ("ASoC: Intel: sof_rt5682: use common module for sof_card_private initialization")
> Reported-by: Curtis Malainey <cujomalainey@chromium.org>
> Signed-off-by: Brent Lu <brent.lu@intel.com>
> (cherry-picked from thesofproject/linux#5101)
>
> UPSTREAM-TASK=b:352191605
> BUG=b:351951500,b:348065123
> TEST=deploy kernel and check rt5650 boards soundcard probe
>
> Change-Id: Idddadbf1c68122b5377944b594a87a7b68e77fac
> Signed-off-by: Terry Cheong <htcheong@chromium.org>
> Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/5691052
> Reviewed-by: Pin-chih Lin <johnylin@google.com>

BUG=b:351951500,b:348065123

Cq-Depend: chromium:5715756
Change-Id: I7f7b776d6ede22f0e20b84d39b0a3255296c7a0b
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/5715811
Bot-Commit: Rubber Stamper <rubber-stamper@appspot.gserviceaccount.com>
Reviewed-by: Pin-chih Lin <johnylin@google.com>
Commit-Queue: Terry Cheong <htcheong@chromium.org>
intel-lab-lkp pushed a commit to intel-lab-lkp/linux that referenced this pull request Oct 1, 2024
ALC5650 supports both headphone and speaker paths. When there is no
amplifier on the board, machine driver will add an dai link for
speaker pipeline. The code does not handle SSP port number properly
so the dai link data is invalid and results in soundcard registration
failure.

Fixes: 8efcd48 ("ASoC: Intel: sof_rt5682: use common module for sof_card_private initialization")
Reported-by: Curtis Malainey <cujomalainey@chromium.org>
Signed-off-by: Brent Lu <brent.lu@intel.com>
(cherry-picked from thesofproject#5101)

UPSTREAM-TASK=b:352191605
BUG=b:351951500,b:348065123
TEST=deploy kernel and check rt5650 boards soundcard probe

Change-Id: Idddadbf1c68122b5377944b594a87a7b68e77fac
Signed-off-by: Terry Cheong <htcheong@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/third_party/kernel/+/5691052
Reviewed-by: Pin-chih Lin <johnylin@google.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants