Contribute
Register

[Guide] Patching LAPTOP DSDT/SSDTs

Thanks for the quick fix, guess I'll ignore the warnings for now and compile. I'll try to build iasl from sources as well later.

As per post #1, nothing to do for warnings. Only errors matter.
 
...
Also, due to (my) bug in Clover, AutoMerge=true is not working correctly when SSDTs have a unique OEM table ID.
Try attached Clover.
This build of Clover now updated to fix a problem if AutoMerge=true, patched SSDTs, and SSDTs dropped with DropTables also used.
The attached build is just an interim testing/beta build. Official build to follow on bitbucket after more cleanup/testing.

Both of these interim builds now deprecated.
The current build on bitbucket has all these fixes.

Uploaded as Clover_v2.4k_r4318.RM-4429.43710d68.pkg
 
All other needed SSDTs compiled flawlessly but I'm having these errors in SSDT-5. I've never tried applying any patch as per guide. Screen Shot 2017-11-25 at 11.10.48 PM.png
 

Attachments

  • SSDT-5.dsl
    6.1 KB · Views: 146
All other needed SSDTs compiled flawlessly but I'm having these errors in SSDT-5. I've never tried applying any patch as per guide. View attachment 294704

The errors are in a _DSM method.
After you apply "Remove _DSM methods" (as per guide), the errors will go away.
But there is also no reason to patch this file, therefore no reason to put it in ACPI/patched (assuming AutoMerge=true).
And your profile indicates only single GPU (Intel only), so generally there is no reason to patch any SSDTs, as all renames are easily done with config.plist/ACPI/DSDT/Patches.
 
And your profile indicates only single GPU (Intel only), so generally there is no reason to patch any SSDTs, as all renames are easily done with config.plist/ACPI/DSDT/Patches.
Sorry for not indicating that my laptop has a discrete Nvidia GPU and I'm trying to disable it is all.
 
Hi and good morning, I would use the method with linux.
I formatted a 32-bit key and copied it
/sys/firmware/acpi/tables in the usb key
but in the directory i have:
APIC 'ASF!' BGRT DMAR DSDT dynamic FACP FACS FPDT HPET MCFG MSDM NHLT SLIC SSDT1 SSDT10 SSDT2 SSDT3 SSDT4 SSDT5 SSDT6 SSDT7 SSDT8 SSDT9 TCPA UEFI WSMT
so when I run iasl -da -dl DSDT.aml SSDT * .aml
I get
Could not open input file: DSDT.aml
I try with only
iasl -da -dl DSDT
and this is the output:
[francesco@Arch tables]$ iasl -da -dl DSDT

Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20170929
Copyright (c) 2000 - 2017 Intel Corporation

Input file DSDT, Length 0x25D29 (154921) bytes
ACPI: DSDT 0x0000000000000000 025D29 (v02 HPQOEM 80D5 00000000 INTL 20121018)
Pass 1 parse of [DSDT]
Pass 2 parse of [DSDT]
Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

Parsing completed

Found 29 external control methods, reparsing with new information
Pass 1 parse of [DSDT]
Pass 2 parse of [DSDT]
Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

Parsing completed
Disassembly completed
ASL Output: DSDT.dsl - 1159641 bytes

iASL Warning: There were 29 external control methods found during
disassembly, but only 0 were resolved (29 unresolved). Additional
ACPI tables may be required to properly disassemble the code. This
resulting disassembler output file may not compile because the
disassembler did not know how many arguments to assign to the
unresolved methods. Note: SSDTs can be dynamically loaded at
runtime and may or may not be available via the host OS.

In addition, the -fe option can be used to specify a file containing
control method external declarations with the associated method
argument counts. Each line of the file must be of the form:
External (<method pathname>, MethodObj, <argument count>)
Invocation:
iasl -fe refs.txt -d dsdt.aml
 
Hi and good morning, I would use the method with linux.
I formatted a 32-bit key and copied it
/sys/firmware/acpi/tables in the usb key
but in the directory i have:
APIC 'ASF!' BGRT DMAR DSDT dynamic FACP FACS FPDT HPET MCFG MSDM NHLT SLIC SSDT1 SSDT10 SSDT2 SSDT3 SSDT4 SSDT5 SSDT6 SSDT7 SSDT8 SSDT9 TCPA UEFI WSMT
so when I run iasl -da -dl DSDT.aml SSDT * .aml
I get
Could not open input file: DSDT.aml
I try with only
iasl -da -dl DSDT
and this is the output:
[francesco@Arch tables]$ iasl -da -dl DSDT

Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20170929
Copyright (c) 2000 - 2017 Intel Corporation

Input file DSDT, Length 0x25D29 (154921) bytes
ACPI: DSDT 0x0000000000000000 025D29 (v02 HPQOEM 80D5 00000000 INTL 20121018)
Pass 1 parse of [DSDT]
Pass 2 parse of [DSDT]
Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

Parsing completed

Found 29 external control methods, reparsing with new information
Pass 1 parse of [DSDT]
Pass 2 parse of [DSDT]
Parsing Deferred Opcodes (Methods/Buffers/Packages/Regions)

Parsing completed
Disassembly completed
ASL Output: DSDT.dsl - 1159641 bytes

iASL Warning: There were 29 external control methods found during
disassembly, but only 0 were resolved (29 unresolved). Additional
ACPI tables may be required to properly disassemble the code. This
resulting disassembler output file may not compile because the
disassembler did not know how many arguments to assign to the
unresolved methods. Note: SSDTs can be dynamically loaded at
runtime and may or may not be available via the host OS.

In addition, the -fe option can be used to specify a file containing
control method external declarations with the associated method
argument counts. Each line of the file must be of the form:
External (<method pathname>, MethodObj, <argument count>)
Invocation:
iasl -fe refs.txt -d dsdt.aml

Use F4 to extract with Clover. Then use the files from ACPI/origin. As recommended by post #1.
 
thanks RehabMan,
I clicked F4 but did not understand where the files were saved
 
thanks RehabMan,
I clicked F4 but did not understand where the files were saved

EFI/CLOVER/ACPI/origin on the EFI partition from which you booted Clover.
 
Back
Top