Bug#1058576: Acknowledgement (linux-image-6.5.0-0.deb12.4-amd64: Kernel module for AMD Raphael ACP missing)
I managed to successfully compile and boot a kernel with CONFIG_SND_SOC_ACPI=m CONFIG_SND_SOC_AMD_ACP=m CONFIG_SND_SOC_AMD_ACP3x=m CONFIG_SND_SOC_AMD_ACP5x=m CONFIG_SND_SOC_AMD_ACP6x=m CONFIG_SND_AMD_ACP_CONFIG=m CONFIG_SND_SOC_AMD_ACP_COMMON=m CONFIG_SND_SOC_AMD_ACP_PDM=m CONFIG_SND_SOC_AMD_ACP_LEGACY_COMMON=m CONFIG_SND_SOC_AMD_ACP_I2S=m CONFIG_SND_SOC_AMD_ACP_PCM=m CONFIG_SND_SOC_AMD_ACP_PCI=m CONFIG_SND_SOC_AMD_RPL_ACP6x=m The built-in microphone of the laptop is working perfectly with the corresponding modules for AMD Raphael / RPL compiled as modules. The following modules are in use with working microphone: $ lsmod | grep snd snd_seq_dummy 12288 0 snd_hrtimer12288 1 snd_seq 114688 7 snd_seq_dummy snd_seq_device 16384 1 snd_seq snd_soc_dmic 12288 1 snd_ps_pdm_dma 12288 1 snd_soc_ps_mach12288 1 snd_ctl_led24576 0 snd_soc_core 421888 3 snd_soc_ps_mach,snd_ps_pdm_dma,snd_soc_dmic snd_hda_codec_realtek 192512 1 snd_compress 28672 1 snd_soc_core snd_hda_codec_generic 114688 1 snd_hda_codec_realtek snd_hda_codec_hdmi 94208 1 ledtrig_audio 12288 3 snd_ctl_led,snd_hda_codec_generic,thinkpad_acpi snd_pci_ps 24576 0 snd_hda_intel 61440 2 snd_intel_dspcfg 36864 1 snd_hda_intel snd_rpl_pci_acp6x 16384 0 snd_intel_sdw_acpi 16384 1 snd_intel_dspcfg snd_acp_pci12288 0 snd_hda_codec 225280 4 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek snd_acp_legacy_common16384 1 snd_acp_pci snd_hda_core 147456 5 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek snd_pci_acp6x 16384 0 snd_hwdep 20480 1 snd_hda_codec snd_pcm 192512 9 snd_hda_codec_hdmi,snd_pci_acp6x,snd_hda_intel,snd_hda_codec,snd_ps_pdm_dma,snd_compress,snd_soc_core,snd_hda_core,snd_pci_ps snd_pci_acp5x 16384 0 snd_rn_pci_acp3x 20480 0 snd_timer 53248 3 snd_seq,snd_hrtimer,snd_pcm snd_acp_config 16384 5 snd_rn_pci_acp3x,snd_pci_acp6x,snd_pci_acp5x,snd_acp_pci,snd_pci_ps snd 155648 22 snd_ctl_led,snd_hda_codec_generic,snd_seq,snd_seq_device,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_compress,thinkpad_acpi,snd_soc_core,snd_pcm snd_soc_acpi 16384 1 snd_acp_config soundcore 16384 2 snd_ctl_led,snd snd_pci_acp3x 16384 0 So I can confirm compiling the kernel with the kconfig switches CONFIG_SND_SOC_AMD_RPL_ACP6x=m and CONFIG_SND_SOC_AMD_ACP_PCI=m (which is required according to the help text of the other switch) enables my hardware. Please include these modules in future Debian Linux kernel packages.
Bug#1058576: linux-image-6.5.0-0.deb12.4-amd64: Kernel module for AMD Raphael ACP missing
Package: src:linux Version: 6.5.10-1~bpo12+1 Severity: normal X-Debbugs-Cc: peter.ganzh...@gmail.com Dear Maintainer, the built-in microphone of my Lenovo ThinkPad P16s Gen 2, model 21K9... laptop is not working. The laptop has an AMD Ryzen 7 Pro 7840U CPU ('Raphael' / RPL) with an Audio Coprocessor: 64:00.5 Multimedia controller: Advanced Micro Devices, Inc. [AMD] ACP/ACP3X/ACP6x Audio Coprocessor (rev 63) Subsystem: Lenovo ACP/ACP3X/ACP6x Audio Coprocessor Flags: fast devsel, IRQ 255, IOMMU group 21 Memory at 7858 (32-bit, non-prefetchable) [disabled] [size=256K] Memory at 1c1000 (64-bit, prefetchable) [disabled] [size=8M] Capabilities: [48] Vendor Specific Information: Len=08 Capabilities: [50] Power Management version 3 Capabilities: [64] Express Endpoint, MSI 00 Capabilities: [a0] MSI: Enable- Count=1/1 Maskable- 64bit+ Capabilities: [100] Vendor Specific Information: ID=0001 Rev=1 Len=010 Capabilities: [2a0] Access Control Services Kernel modules: snd_pci_acp3x, snd_rn_pci_acp3x, snd_pci_acp5x, snd_pci_acp6x The default Debian 12 kernel has the KCONFIG switch # CONFIG_SND_SOC_AMD_RPL_ACP6x is not set disabled. Even in the kernel available from bookworm-backports the module is not enabled. The module is most likely required to get the built-in microphone working. A very similar situation was reported on the Arch Linux BBS affecting Ryzen 6000 'Yellow Carp': https://bbs.archlinux.org/viewtopic.php?id=278886 In this case, the Audio Coprocessor was also the culprit for a non-working microphone on a Lenovo laptop. I tried building the kernel based on the config file located in /boot, but ended up with a ~500MB initrd image and booting failed with a message like "initrd too large". Sadly I was unable to find any documentation about how to build a kernel based on the default Debian configuration that enabled me to successfully build resp. boot a kernel with the module enabled. I would very much appreciate if you could enable CONFIG_SND_SOC_AMD_RPL_ACP6x=m for the kernels available in bookworm-backports. If you can hint me at why the initrd of my self-built kernel was way larger than what is generated for the prebuilt kernel images I can confirm if loading the module enables the laptop microphone. I copied /boot/config-6.5.0-0.deb12.4-amd64 to .config in the extracted kernel sources and ran make oldconfig make make modules make modules_install cp ./arch/x86_64/boot/bzImage /boot/vmlinux-6.5.13 update-initramfs -c -k 6.5.13 update-grub I did use vanilla sources from kernel.org for this test, there were no compilation errors but as I already stated the generated initrd image was almost 500MB in size and booting failed. -- Package-specific info: ** Version: Linux version 6.5.0-0.deb12.4-amd64 (debian-kernel@lists.debian.org) (gcc-12 (Debian 12.2.0-14) 12.2.0, GNU ld (GNU Binutils for Debian) 2.40) #1 SMP PREEMPT_DYNAMIC Debian 6.5.10-1~bpo12+1 (2023-11-23) ** Command line: BOOT_IMAGE=/boot/vmlinuz-6.5.0-0.deb12.4-amd64 root=UUID=a8c9220c-f0c2-45ed-ac7f-f3f540540747 ro quiet ** Not tainted ** Kernel log: [4.708949] snd_hda_codec_realtek hdaudioC1D0: autoconfig for ALC257: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker [4.708954] snd_hda_codec_realtek hdaudioC1D0:speaker_outs=0 (0x0/0x0/0x0/0x0/0x0) [4.708955] snd_hda_codec_realtek hdaudioC1D0:hp_outs=1 (0x21/0x0/0x0/0x0/0x0) [4.708956] snd_hda_codec_realtek hdaudioC1D0:mono: mono_out=0x0 [4.708957] snd_hda_codec_realtek hdaudioC1D0:inputs: [4.708958] snd_hda_codec_realtek hdaudioC1D0: Mic=0x19 [4.712747] input: HD-Audio Generic HDMI/DP,pcm=7 as /devices/pci:00/:00:08.1/:64:00.1/sound/card0/input16 [4.712811] input: HD-Audio Generic HDMI/DP,pcm=8 as /devices/pci:00/:00:08.1/:64:00.1/sound/card0/input17 [4.722703] input: SYNA801A:00 06CB:CEC6 Mouse as /devices/platform/AMDI0010:01/i2c-1/i2c-SYNA801A:00/0018:06CB:CEC6.0001/input/input19 [4.722830] input: SYNA801A:00 06CB:CEC6 Touchpad as /devices/platform/AMDI0010:01/i2c-1/i2c-SYNA801A:00/0018:06CB:CEC6.0001/input/input20 [4.722942] hid-multitouch 0018:06CB:CEC6.0001: input,hidraw0: I2C HID v1.00 Mouse [SYNA801A:00 06CB:CEC6] on i2c-SYNA801A:00 [4.754892] thinkpad_acpi: ThinkPad ACPI Extras v0.26 [4.754897] thinkpad_acpi: http://ibm-acpi.sf.net/ [4.754900] thinkpad_acpi: ThinkPad BIOS R2FET33W (1.13 ), EC R2FHT27W [4.754903] thinkpad_acpi: Lenovo ThinkPad P16s Gen 2, model 21K9CTO1WW [4.788525] Bluetooth: Core ver 2.22 [4.788548] NET: Registered PF_BLUETOOTH protocol family [4.788550] Bluetooth: HCI device and connection manager initialized [4.788553] Bluetooth: HCI socket layer initialized [4.788556] Bluetooth: L2CAP socket layer initialized [4.788560] Bluetooth: SCO socket layer initialized [4.789733] kvm_amd: TSC scaling supported [4.789736] kvm_amd: