lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:   Fri, 14 Jul 2023 00:29:53 +0800
From:   David Xu <xuwd1@...mail.com>
To:     James Schulman <james.schulman@...rus.com>,
        David Rhodes <david.rhodes@...rus.com>,
        Richard Fitzgerald <rf@...nsource.cirrus.com>,
        Jaroslav Kysela <perex@...ex.cz>,
        Takashi Iwai <tiwai@...e.com>,
        "Luke D. Jones" <luke@...nes.dev>,
        Stefan Binding <sbinding@...nsource.cirrus.com>,
        Andy Chi <andy.chi@...onical.com>,
        Tim Crawford <tcrawford@...tem76.com>,
        Philipp Jungkamp <p.jungkamp@....net>,
        Kacper Michajłow <kasper93@...il.com>,
        Matthew Anderson <ruinairas1992@...il.com>,
        Yuchi Yang <yangyuchi66@...il.com>,
        Yang Yingliang <yangyingliang@...wei.com>
Cc:     alsa-devel@...a-project.org, patches@...nsource.cirrus.com,
        linux-kernel@...r.kernel.org, David Xu <xuwd1@...mail.com>
Subject: [PATCH 0/2] Fix CSC3551 speaker sound problem for machines without a valid ACPI _DSD


As the comments added in commit 4d4c4bff4f8ed79d95e05 ("ALSA: hda:
cs35l41: Clarify support for CSC3551 without _DSD Properties"), CSC3551
requires a valid _DSD to work and the current implementation just
fails when no _DSD can be found for CSC3551. However it is a fact
that many OEMs hardcoded the configurations needed by CSC3551 into their
proprietary software for various 2022 and later laptop models,
and this makes the Linux installations on these models cannot make
any speaker sound. Meanwhile, at this point of time, we see no hope
that these OEMs would ever fix this problem via a BIOS update. 

To address the problem, this patch series contains two patches: 

Patch 1 for cs35l41 hda driver: a fixup mechanism is introduced that 
when the driver found there is no valid _DSD that contains the 
configurations, a fixup function would try to find a fixup entry that
contains a proper cs35l41 configuration from a pre-defined fixup table
by matching the CSC3551 ACPI _SUB id. If found, the fixup function
would apply the cs35l41 configurations retrived from the entry. 
In this patch the fixup table only contains some entries for three 
Lenovo laptop models: namely 16IAH7, 16IAX7 and 16ARHA7. However 
as is known, several other laptop models from ASUS and HP also suffer
from this no valid _DSD problem and could have it addressed with this 
fixup mechanism when proper fixup entries are inserted.


Patch 2 for realtek hda driver: add quirks for Lenovo 16IAH7, 16IAX7 
and 16ARHA7 so that cs35l41 playback hook could be registered. Please 
note that for these quirks to work patch 1 has to be applied.


David Xu (2):
  ALSA: hda: cs35l41: Add fixups for machines without a valid ACPI _DSD
  ALSA: hda/realtek: Add quirks for Lenovo 16IAH7, 16IAX7 and 16ARHA7

 sound/pci/hda/cs35l41_hda.c   | 160 ++++++++++++++++++++++++++++++++++
 sound/pci/hda/patch_realtek.c |   5 ++
 2 files changed, 165 insertions(+)

-- 
2.41.0

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ