vrolife/modern_laptop

Help with TM2309-Redmi_Book_Pro_16_2024

uselessfire opened this issue · 11 comments

Hello. Can you please help with TM2309-Redmi_Book_Pro_16_2024?
BIOS version RMAMT6B0P0808
It has the same exception with dmic (sound works only with dmic_detect=0, but not microphone).

I tried to patch my ACPI table like your script do (part with AcpDmicConnected), but faced into problems.

I dumped my ACPI tables with acpidump -b (acpi_dump.zip)

Then tried to disassemble sorted ssdt*.dat files like your script do, but it fails with error:

Firmware Error (ACPI): Failure creating named object [\_SB.PC00.XHCI.RHUB.HS03._UPC], AE_ALREADY_EXISTS (20230628/dswload-495)
ACPI Error: AE_ALREADY_EXISTS, During name lookup/catalog (20230628/psobject-372)
Could not parse ACPI tables, AE_ALREADY_EXISTS

After disassembling each file apart, i found that _SB_.PC00.XHCI.RHUB.HS03 device can be found in ssdt24.dat, and tried to disassemble all ssdt*.dat files without ssdt24.dat.
It works, i received dsdt.dsl.zip file which not contains ssdt24.dat.

Then i patched it by myself with various patches from your repository
More specifically i done:
-DefinitionBlock ("", "DSDT", 1, "XMCC ", "XMCC2019", 0x00000002)
+DefinitionBlock ("", "DSDT", 1, "XMCC ", "XMCC2019", 0x00000003)
And added
+ Name (_DSD, Package (0x02) // _DSD: Device-Specific Data
+ {
+ ToUUID ("5025030f-842f-4ab4-a561-99a5189762d0") /* Unknown UUID */,
+ Package (0x01)
+ {
+ Package (0x02)
+ {
+ "AcpDmicConnected",
+ One
+ }
+ }
+ })
to two HS05 device blocks (i can't found ACP device, but HS05 device has the same address by Name (_ADR, 0x05) // _ADR: Address, like in your patches)

Then i tried to compile resulted dsdt.dsl with iasl -ve dsdt.dsl, but it fails with error:
dsdt.dsl 743: External (_SB_.PC00.XHCI._PS0.PS0X, MethodObj) // 0 Arguments
Error 6163 - ^ Object is created temporarily in another method and cannot be accessed (_SB_.PC00.XHCI._PS0.PS0X)

dsdt.dsl 744: External (_SB_.PC00.XHCI._PS3.PS3X, MethodObj) // 0 Arguments
Error 6163 - ^ Object is created temporarily in another method and cannot be accessed (_SB_.PC00.XHCI._PS3.PS3X)

dsdt.dsl 1072: External (_SB_.PC02.XHCI._PS0.PS0X, MethodObj) // 0 Arguments
Error 6163 - ^ Object is created temporarily in another method and cannot be accessed (_SB_.PC02.XHCI._PS0.PS0X)

dsdt.dsl 1073: External (_SB_.PC02.XHCI._PS3.PS3X, MethodObj) // 0 Arguments
Error 6163 - ^ Object is created temporarily in another method and cannot be accessed (_SB_.PC02.XHCI._PS3.PS3X)

ASL Input: dsdt.dsl - 3274817 bytes 56426 keywords 0 source lines

Compilation failed. 4 Errors, 88 Warnings, 1135 Remarks
No AML files were generated due to compiler error(s)

Also tried iasl -va dsdt.dsl, the same error.

Can you please help with this laptop? I ready to provide all information that you need. Also can pay for it if needed (email me by uselessfire@gmail.com).

Laptop also has issue with multimedia keys on F7, F8, F9, and "settings" button on the top right edge of the keyboard, it all provides the same ACPI event wmi PNP0C14:00 00000020 00000000.

Desktop (please complete the following information):

** Log **
dmesg.log

AcpDmicConnected should only be effective on AMD's acp6x platforms, whereas your CPU is from Intel.

Okay, so can you help me? Issue seems to be similar. I tried many snd-hda-intel model= and other module parameters, various kernels and versions, various distributives, none of them worked. It be very helpful for community of Redmibook Pro users on Linux.

I might not be able to assist much without the hardware to reproduce this issue.

I can provide all information you need. Or could you tell me which direction to go to resolve this issue? What could be causing this?

Just booted Windows and installed all updated, including BIOS firmware. Now it's version is RMAMT6B0P0909, but the issue is still here

It's for ALC245, but i have 8086:7e28 ALC256.

Also i tried Pop_OS! by System76, microphone doesn't work with or without snd-hda-intel dmic_detect=0 and snd-intel-dspcfg dsp_driver=1