From: "Cássio Gabriel" <cassiogabrielcontato@gmail.com>
To: Takashi Iwai <tiwai@suse.com>,
Thierry Reding <thierry.reding@kernel.org>,
Jonathan Hunter <jonathanh@nvidia.com>,
Jaroslav Kysela <perex@perex.cz>
Cc: linux-sound@vger.kernel.org, linux-kernel@vger.kernel.org,
linux-tegra@vger.kernel.org, notify@kernel.org,
"Cássio Gabriel" <cassiogabrielcontato@gmail.com>
Subject: [PATCH RFC 0/4] ALSA: Consolidate CEA channel allocation data
Date: Fri, 12 Jun 2026 01:53:22 -0300 [thread overview]
Message-ID: <20260612-alsa-cea-channel-allocation-v1-0-b1bcbb6b1051@gmail.com> (raw)
HDA HDMI and Intel HDMI LPE maintain separate copies of the ordered
CEA-861 channel allocation descriptors, ELD speaker expansion, and
allocation selection logic. The Intel implementation originated from
the HDA code, but the copies now differ in supported allocation ranges
and fallback behavior.
Move the common data and transformations alongside the PCM DRM ELD
helpers, then migrate both users while preserving their established
behavior. HDA retains the complete CA range and channel-count fallback.
Intel HDMI LPE retains its CA 0x1f limit, ELD speaker bits 0 through 6,
and lack of fallback for incompatible ELD data.
The descriptors and their derived channel counts and speaker masks
become compile-time constants. This removes duplicated mutable
initialization and provides one authoritative allocation table without
changing the existing allocation-selection policy.
No hardware was available to test this patch series.
Signed-off-by: Cássio Gabriel <cassiogabrielcontato@gmail.com>
---
Cássio Gabriel (4):
ALSA: pcm: Add common CEA channel allocation helpers
ALSA: hda: Make CEA channel allocation interfaces const
ALSA: hda: Use common CEA channel allocations
ALSA: x86: Use common CEA channel allocations
include/sound/hda_chmap.h | 15 +--
include/sound/pcm_drm_eld.h | 16 +++
sound/core/pcm_drm_eld.c | 181 +++++++++++++++++++++++++++
sound/hda/codecs/hdmi/atihdmi.c | 6 +-
sound/hda/codecs/hdmi/nvhdmi.c | 2 +-
sound/hda/codecs/hdmi/tegrahdmi.c | 2 +-
sound/hda/core/Kconfig | 1 +
sound/hda/core/hdmi_chmap.c | 252 +++++++-------------------------------
sound/x86/Kconfig | 1 +
sound/x86/intel_hdmi_audio.c | 158 +++---------------------
sound/x86/intel_hdmi_audio.h | 9 --
11 files changed, 271 insertions(+), 372 deletions(-)
---
base-commit: 0f6f60115bfc536c1935d3d0da66cf1d5c7d6055
next reply other threads:[~2026-06-12 4:53 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-06-12 4:53 Cássio Gabriel [this message]
2026-06-12 4:53 ` [PATCH RFC 1/4] ALSA: pcm: Add common CEA channel allocation helpers Cássio Gabriel
2026-06-12 4:53 ` [PATCH RFC 2/4] ALSA: hda: Make CEA channel allocation interfaces const Cássio Gabriel
2026-06-12 4:53 ` [PATCH RFC 3/4] ALSA: hda: Use common CEA channel allocations Cássio Gabriel
2026-06-12 4:53 ` [PATCH RFC 4/4] ALSA: x86: " Cássio Gabriel
2026-06-12 9:13 ` [PATCH RFC 0/4] ALSA: Consolidate CEA channel allocation data Takashi Iwai
2026-06-12 11:44 ` Cássio Gabriel
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260612-alsa-cea-channel-allocation-v1-0-b1bcbb6b1051@gmail.com \
--to=cassiogabrielcontato@gmail.com \
--cc=jonathanh@nvidia.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-sound@vger.kernel.org \
--cc=linux-tegra@vger.kernel.org \
--cc=notify@kernel.org \
--cc=perex@perex.cz \
--cc=thierry.reding@kernel.org \
--cc=tiwai@suse.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox
all inboxes | Powered by JetHome®