All of lore.kernel.org
 help / color / mirror / Atom feed
From: Takashi Iwai <tiwai@suse.de>
To: 周建宇 <997536907@qq.com>
Cc: linux-sound@vger.kernel.org, tiwai@suse.com, perex@perex.cz
Subject: Re: [PATCH] ALSA: hda/realtek: Add quirk for IPASON SmartBook S1 (ALC256, SSID 0x2782:0x0206)
Date: Mon, 14 Sep 2026 18:06:51 +0200	[thread overview]
Message-ID: <878q53om04.wl-tiwai@suse.de> (raw)
In-Reply-To: <tencent_A89516B196B5F3484ADDB96992501D676B09@qq.com>

On Wed, 09 Sep 2026 09:05:41 +0200,
周建宇 wrote:
> 
> Hi,
> 
> The internal speaker on the IPASON SmartBook S1 (an Emdoor ODM laptop)
> is completely silent under Linux. Bluetooth audio works, and the same
> machine's speaker works fine under Windows 11 / Windows PE with the
> vendor Realtek driver, so the hardware and amplifier are all good.
> 
> Root cause (found):
> -------------------
> The BIOS reports the real internal speaker pin, NID 0x1b, with
> Pin Default 0x411111f0 (DefAssociation = 0xf, i.e. "unconnected").
> ALSA's pin parser therefore drops that node at pin-config time: no
> mixer control is ever created and the pin is never driven, no matter
> how 0x14 is configured. Enabling 0x1b produces sound immediately.
> 
> The existing model=alc256-honor-mrb-xxx-m1020-audio makes the speaker
> work because it is an HDA_FIXUP_PINS that also rewrites 0x1b to
> 0x90170110, but it additionally rewrites 0x19 and 0x1a with Honor-
> specific values that add a bogus "Dock Mic" device that does not exist
> on this hardware. A minimal two-pin override is preferable.
> 
> Hardware:
> - Codec: Realtek ALC256 (0x10ec0256), SSID 0x2782:0x0206
> - Controller: Intel Tiger Lake-LP SST 8086:a0c8
> - BIOS init pin configs:
>   0x12 0x90a60130  0x13 0x40000000  0x14 0x90170110  0x18 0x411111f0
>   0x19 0x02a19040  0x1a 0x411111f0  0x1b 0x411111f0  0x1d 0x4067b945
>   0x1e 0x411111f0  0x21 0x02214020
> 
> Proposed fix:
> -------------
> I do not have a kernel git tree at hand to produce a proper unified
> diff; the two hunks below are the exact entries to add. Please let me
> know if you need a formal patch.
> 
>     SND_PCI_QUIRK(0x2782, 0x0206, "IPASON SmartBook S1",
>                   ALC256_FIXUP_IPASON_SMARTBOOK_S1),
> 
>     [ALC256_FIXUP_IPASON_SMARTBOOK_S1] = {
>         .type = HDA_FIXUP_PINS,
>         .v.pins = (const struct hda_pintbl[]) {
>             { 0x14, 0x90170111 },
>             { 0x1b, 0x90170110 },   /* the real internal speaker */
>             { }
>         },
>     },
> 
> Verified on kernel 7.2.0-1-MANJARO (also reproduced on 6.18.45-1-MANJARO),
> in both the SOF and legacy HDA driver paths.
> 
> alsa-info output:
> https://alsa-project.org/db/?f=4c555d942f5cef14cac55e34b2236238ae909af3
> 
> Happy to test any patch and provide further hda-verb dumps on request.
> 
> Signed-off-by: 周建宇 <997536907@qq.com>

Could you send a proper patch for upstreaming?


thanks,

Takashi


      reply	other threads:[~2026-09-14 16:07 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-09-09  7:05 [PATCH] ALSA: hda/realtek: Add quirk for IPASON SmartBook S1 (ALC256, SSID 0x2782:0x0206) 周建宇
2026-09-14 16:06 ` Takashi Iwai [this message]

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=878q53om04.wl-tiwai@suse.de \
    --to=tiwai@suse.de \
    --cc=997536907@qq.com \
    --cc=linux-sound@vger.kernel.org \
    --cc=perex@perex.cz \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.