What is a DSDT ?
DSDT for noobs
The Differentiated System Description Table is the main table in the ACPI part of a computer’s BIOS.Advanced Configuration and Power Interface(ACPI) specification provides an open standard for device configuration and power management by the operating system.& Hackintosh is incomplete without ACPI implementation It supplies information about supported power events in a given system. ACPI tables are provided in firmware from the manufacturer It allows the user to better support their hardware. For example, fixing Time Machine and the UUID 35 error is possible after modifying the DSD & it will help in proper injection of hardware in OS X Basically a DSDT table is the code run on ACPI (Power Management) events.
How to Extract DSDT tables?
From windows :- Install Aida64 right click on status bar at bottom of Aida64 screen
and you will see this menu.Select ACPI tool and a new screen
with Save DSDT button will open.Save dsdt file and Boot OS X
& rename that file with aml extension
From Linux:-Extract ACPI tables (as root): #cat/sys/firmware/acpi/tables/DSDT >dsdt.dat
Download DSDT editor make sure install Latest Java Update before using this editor
Does DSDT common for all ?
DSDT is different for each computer / Laptos’s You cannot use DSDT from one
computer in another
How to make DSDT ?
3.Extact DSDT from windows or linux
4.Open extracted DSDT with following editor
5. On the menu bar, press ‘Patch’ and then ‘Open’. A file browser window will open. Navigate to your desktop and select the motherboard specific patch we just downloaded. Click ‘Open’.
6.A little window will open. Press ‘Apply’. Wait a few seconds while it does its thing, once its complete press ‘Close‘.
7. On the menu bar, press ‘IASL’, then ‘Compile’. A box will open, inside which there may be some messages. Press ‘Fix Errors’. After a second or two, as long as there are 0 errors listed, close the box.
8. On the menu bar, press ‘IASL’, then ‘Save AML As’. A box will open. Navigate to the Desktop, and in the ‘Save As’ bar, type ”DSDT.AML” (without the quotation marks). Press ‘Save’.
9. On your desktop, you should now have a ready to go patched DSDT file.
This thread is a guide on how to prepare a DSDT, for example for use with UserDSDT in multi beast. If error is not recoverable see following syntax for editing
into [ … ] begin [action_argument] end
(will be applied to the first occurrence)
into_all [ … ] begin [action_argument] end
(will be applied to all occurrences)
where to add patches
type: Definition Block, Scope, Method, Device, Processor, Thermal Zone, All
label — first argument for the constructor of selected type
name_adr — Name (_ADR) value
name_hid — Name (_HID) value
code_regex — regular expression to match the code of the selected type
(not other types inside of it)
code_regex_not — regular expression NOT to match the code of the selected type
(not other types inside of it)
parent_label — parent label
parent_type — parent type
parent_adr — parent _ADR value
parent_hid — parent _HID value
-- inserts the provided code to the type
set_label — sets the label
-- replaces the matched code for the property with the provided code.
Regex groups are inserted with %1, %2, … up to %9
-- same as replace_matched but will affect all matches
remove_matched — removes the matched code
removeall_matched — removes all the ocurrencies of the matched code
remove_entry — removes the entry and all children nodes
replace_content — replaces the content of the object (everything inside its main brackets)
store_%8 — stores the matched group 1 into %8
store_%9 — stores the matched group 1 into %9
Note: replacer will always consider the last provided value