Jump to content
4 posts in this topic

Recommended Posts

Volevo mettere un pochino di ordine nell'uso del DSDT, lo uso poco o niente nelle mie configurazioni molto compatibili.

 

Esiste una patch analoga per il DSDT RehabMan-FakePCIID, io la uso esclusivamente per avere distinzione tra XHCI e EHCI.

 

Il layout per l'audio è sufficiente questo, oppure conviene mettere qualcosa di più elaborato:

# Maintained by: toleda for: github.com/toleda/audio_alc8xx
# File: hdef1-alc8xx_audio-1.txt_v2.0
# Credit: PikeRAlpha
#
# Add_HDEF, for dsdts with no HDEF, set Audio_ID: 1
#
# 1. Enable Audio ID: 1, Add HDEF/layout-id=1
into method label _DSM parent_adr 0x001B0000 remove_entry;
into device name_adr 0x001B0000 insert
begin
    Method (_DSM, 4, NotSerialized)\n
    {\n
	    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
	    Return (Package()\n
	    {\n
                "layout-id", Buffer() { 0x01, 0x00, 0x00, 0x00 },\n
                "PinConfigurations", Buffer(Zero) {},\n
	    })\n
    }\n
end;
into definitionblock code_regex . insert
begin Store ("hdef1-alc8xx_audio-1.txt_v2.0 dsdt edits, github.com/toleda", Debug) end

A questa raccolta di patch cosa manca e cosa conviene mettere per essere completa e le correzioni ACPI ci sono già tutte..? ad esempio se devo mettere un FakeID vedo che devo sempre ricorrere all'ACPI di Clover:

# Maintained by: PJALM (help@pjalm.com) for: http://pjalm.com/repos/

# These patches are the registered property of PJALM.COM and can not be
# redistributed or modified without the written consent of PJALM.COM.
# Links to these patches are allowed. All material is protected under the DMCA.

# Last Updated  : 05/07/2016
# Patch Name    : H97-HD3
# Patch Version : 1.01

#IASL:Check $BUILD = 20131218

#External Fixes
into_all all code_regex \/\*\sExternal\sreference\s\*\/\s+ removeall_matched;
into definitionblock code_regex ,\sUnknownObj removeall_matched;

into definitionblock code_regex External\s\(_SB_.PCI0.PEG0\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG1\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG2\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP.GFX0\)\s+ removeall_matched;

# Add the DTGP method
into method label DTGP remove_entry;
into definitionblock code_regex . insert begin
Method (DTGP, 5, NotSerialized)\n
{\n
    If (LEqual (Arg0, Buffer (0x10)\n
            {\n
                /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,\n
                /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n
            }))\n
    {\n
        If (LEqual (Arg1, One))\n
        {\n
            If (LEqual (Arg2, Zero))\n
            {\n
                Store (Buffer (One) { 0x03 }, Arg4)\n
                Return (One)\n
            }\n
            If (LEqual (Arg2, One))\n
            {\n
                Return (One)\n
            }\n
        }\n
    }\n
	Store (Buffer (One) { 0x00 }, Arg4)\n
    Return (Zero)\n
}
end;

# Add Darwin to the supported operating systems
into method label _INI code_regex (\s+)(If\s\(_OSI\s\("Windows\s2001"\)\)) replace_matched begin  \n
						If (_OSI ("Darwin"))\n
						{\n
							Store (0x2710, OSYS)\n
						}\n
\n
						$2
end;

# Intel 9 Series Fixes
into_all all code_regex _T_([0-6]) replaceall_matched begin T_%1 end;

into_all method label _INI code_regex INIR\n replace_matched begin Store (Zero, INIR)\n end;

into device label PCI0 code_regex (\s+Zero){2,} remove_matched;
into_all method label ADBG code_regex (?<=Return\s\(MDBG\))\s+Arg0 remove_matched;
into_all method label _PS3 code_regex PS3X\n replace_matched begin Store (Zero, PS3X)\n end;
into_all method label _PS2 code_regex PS2X\n replace_matched begin Store (Zero, PS2X)\n end;
into_all method label _PS0 code_regex PS0X\n replace_matched begin Store (Zero, PS0X)\n end;

into_all method label GPEH insert begin Return (Zero) end;

into method label _CRS parent_label PCI0 code_regex DWordField\s\(BUF0,\s\\_SB.PCI0._Y1E._LEN,\sMSLN\) replace_matched begin QWordField (BUF0, \\_SB.PCI0._Y1E._LEN, MSLN) end;

into_all all code_regex Acquire\s\(MUT0,\s0x0FFF\) replace_matched begin Acquire (MUT0, 0xFFFF) end;

into method label _HID parent_label _SB.PCI0.LPCB.TPM code_regex (Return\s\(Zero\)) remove_matched;
into method label _HID parent_label _SB.PCI0.LPCB.TPM insert begin Return (Zero) end;

into method label _PS0 parent_label NVM0 code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label NVM0 insert begin Return (Zero) end;

into method label _PS0 parent_label XHC code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label XHC insert begin Return (Zero) end;

into method label _PS0 parent_label RHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label RHUB insert begin Return (Zero) end;

into method label _PS3 parent_label NVM0 code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS3 parent_label NVM0 insert begin Return (Zero) end;

into method label _PS3 parent_label XHC code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS3 parent_label XHC insert begin Return (Zero) end;

into method label _DSM parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label _DSM parent_label SHUB insert begin Return (Zero) end;

into method label RDCA parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label RDCA insert begin Return (Zero) end;

into method label CNRS parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label CNRS insert begin Return (Zero) end;

into method label SPL1 parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label SPL1 insert begin Return (Zero) end;

into method label OE1X parent_label _GPE code_regex (Return\s\(Zero\)) remove_matched;
into method label OE1X parent_label _GPE insert begin Return (Zero) end;

# into method label TINI parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TINI parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label TWAK parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TWAK parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label TPTS parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TPTS parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label SMSR parent_label _SB code_regex CreateDWordField\s\(Arg0,\s0x04,\sAEBX\)\s+ remove_matched;
into method label SDSP parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\sZero,\sACTN\)\s+ remove_matched;
into method label GDSP parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\sZero,\sACTN\)\s+ remove_matched;
into method label DEVS parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\s0x04,\sCPAR\)\s+ remove_matched;

# Device injection for the Intel 9 Series SATA
into device label SAT0 set_label begin SATA end;
into_all all code_regex SAT0 replaceall_matched begin SATA end;
into device label SAT1 remove_entry;
into_all scope label _SB.PCI0.SAT0.PRT0 set_label begin _SB.PCI0.SATA.PRT0 end;
into_all scope label _SB.PCI0.SAT0.PRT1 set_label begin _SB.PCI0.SATA.PRT1 end;
into_all scope label _SB.PCI0.SAT0.PRT2 set_label begin _SB.PCI0.SATA.PRT2 end;
into_all scope label _SB.PCI0.SAT0.PRT3 set_label begin _SB.PCI0.SATA.PRT3 end;
into method label _DSM parent_label SATA remove_entry;
into device label SATA insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x0A) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Intel AHCI Controller",\n
		"model", Buffer (0x2D) {"Intel 9 Series Chipset Family SATA Controller"},\n
		"device_type", Buffer (0x0F) {"AHCI Controller"},\n
		"device-id", Buffer (0x04) {0x02,0x1E,0x00,0x00}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Add the missing MCHC device
into device label MCHC parent_label PCI0 remove_entry;
into device label PCI0 insert begin
Device (MCHC)\n
{\n
	Name (_ADR, Zero)\n
}
end;

# Fix the LPC Device
into method label _DSM parent_label LPCB remove_entry;
into device label LPCB insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x02) {\n
		"compatible", Buffer () {"pci8086,8c44"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Fix the SMBUS to allow for loading of the AppleSMBusController.kext
into device label BUS0 parent_label SBUS remove_entry;
into device label SBUS insert begin
Device (BUS0)\n
{\n
	Name (_CID, "smbus")\n
	Name (_ADR, Zero)\n
	Device (DVL0)\n
	{\n
		Name (_ADR, 0x57)\n
		Name (_CID, "diagsvault")\n
		Method (_DSM, 4, NotSerialized)\n
		{\n
			Store (Package (0x02) {\n
				"address", 0x57
			}, Local0)\n
			DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
			Return (Local0)\n
		}\n
	}\n
}
end;

# Fix HDEF device for the Realtek ALC887 audio codec
into method label _DSM parent_label HDEF remove_entry;
into device label HDEF insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x10) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Realtek Audio Controller",\n
		"model", Buffer () {"Realtek ALC887 Audio Controller"},\n
		"device_type", Buffer (0x10) {"Audio Controller"},\n
		"layout-id", Buffer (0x04) {0x01,0x00,0x00,0x00},\n
		"PinConfigurations", Buffer (Zero) {},\n
		"MaximumBootBeepVolume", Buffer(One) {0x40},\n
		"hda-gfx", Buffer (0x0A) {"onboard-1"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Fixes 'Built-in' status for Realtek Gigabit Ethernet
into method label _DSM parent_label GLAN remove_entry;
into device label GLAN insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x0C) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Realtek Ethernet Controller",\n
		"model", "Realtek RTL8111F Gigabit Network Controller",\n
		"device_type", Buffer (0x13) {"Ethernet Controller"},\n
		"built-in", Buffer (One) {0x01},\n
		"location", Buffer (0x02) {"1"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Patches the Intel USB3 on Intel 9 Series chipsets
into method label _DSM parent_label XHC remove_entry;
into device label XHC insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x15) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Intel XHCI Controller",\n
		"model", Buffer (0x37) {"Intel 9 Series Chipset Family USB xHCI Host Controller"},\n
		"device_type", Buffer (0x0E) {"USB Controller"},\n
		"AAPL,current-available", 0x0834,\n
		"AAPL,current-extra", 0x0A8C,\n
		"AAPL,current-in-sleep", 0x03E8,\n
		"AAPL,current-extra-in-sleep", 0x0834,\n
		"AAPL,max-port-current-in-sleep", 0x0A8C,\n
		"AAPL,device-internal", 0x02,\n
		Buffer (One) {0x00}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

Ciao Jolly :D

Link to comment
https://www.insanelymac.com/forum/topic/312138-dsdt-pacth/
Share on other sites

Volevo mettere un pochino di ordine nell'uso del DSDT, lo uso poco o niente nelle mie configurazioni molto compatibili.

 

Esiste una patch analoga per il DSDT RehabMan-FakePCIID, io la uso esclusivamente per avere distinzione tra XHCI e EHCI.

 

Il layout per l'audio è sufficiente questo, oppure conviene mettere qualcosa di più elaborato:

# Maintained by: toleda for: github.com/toleda/audio_alc8xx
# File: hdef1-alc8xx_audio-1.txt_v2.0
# Credit: PikeRAlpha
#
# Add_HDEF, for dsdts with no HDEF, set Audio_ID: 1
#
# 1. Enable Audio ID: 1, Add HDEF/layout-id=1
into method label _DSM parent_adr 0x001B0000 remove_entry;
into device name_adr 0x001B0000 insert
begin
    Method (_DSM, 4, NotSerialized)\n
    {\n
	    If (LEqual (Arg2, Zero)) { Return (Buffer() { 0x03 } ) }\n
	    Return (Package()\n
	    {\n
                "layout-id", Buffer() { 0x01, 0x00, 0x00, 0x00 },\n
                "PinConfigurations", Buffer(Zero) {},\n
	    })\n
    }\n
end;
into definitionblock code_regex . insert
begin Store ("hdef1-alc8xx_audio-1.txt_v2.0 dsdt edits, github.com/toleda", Debug) end

A questa raccolta di patch cosa manca e cosa conviene mettere per essere completa e le correzioni ACPI ci sono già tutte..? ad esempio se devo mettere un FakeID vedo che devo sempre ricorrere all'ACPI di Clover:

# Maintained by: PJALM (help@pjalm.com) for: http://pjalm.com/repos/

# These patches are the registered property of PJALM.COM and can not be
# redistributed or modified without the written consent of PJALM.COM.
# Links to these patches are allowed. All material is protected under the DMCA.

# Last Updated  : 05/07/2016
# Patch Name    : H97-HD3
# Patch Version : 1.01

#IASL:Check $BUILD = 20131218

#External Fixes
into_all all code_regex \/\*\sExternal\sreference\s\*\/\s+ removeall_matched;
into definitionblock code_regex ,\sUnknownObj removeall_matched;

into definitionblock code_regex External\s\(_SB_.PCI0.PEG0\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG1\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEG2\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP\)\s+ removeall_matched;
into definitionblock code_regex External\s\(_SB_.PCI0.PEGP.GFX0\)\s+ removeall_matched;

# Add the DTGP method
into method label DTGP remove_entry;
into definitionblock code_regex . insert begin
Method (DTGP, 5, NotSerialized)\n
{\n
    If (LEqual (Arg0, Buffer (0x10)\n
            {\n
                /* 0000 */    0xC6, 0xB7, 0xB5, 0xA0, 0x18, 0x13, 0x1C, 0x44,\n
                /* 0008 */    0xB0, 0xC9, 0xFE, 0x69, 0x5E, 0xAF, 0x94, 0x9B\n
            }))\n
    {\n
        If (LEqual (Arg1, One))\n
        {\n
            If (LEqual (Arg2, Zero))\n
            {\n
                Store (Buffer (One) { 0x03 }, Arg4)\n
                Return (One)\n
            }\n
            If (LEqual (Arg2, One))\n
            {\n
                Return (One)\n
            }\n
        }\n
    }\n
	Store (Buffer (One) { 0x00 }, Arg4)\n
    Return (Zero)\n
}
end;

# Add Darwin to the supported operating systems
into method label _INI code_regex (\s+)(If\s\(_OSI\s\("Windows\s2001"\)\)) replace_matched begin  \n
						If (_OSI ("Darwin"))\n
						{\n
							Store (0x2710, OSYS)\n
						}\n
\n
						$2
end;

# Intel 9 Series Fixes
into_all all code_regex _T_([0-6]) replaceall_matched begin T_%1 end;

into_all method label _INI code_regex INIR\n replace_matched begin Store (Zero, INIR)\n end;

into device label PCI0 code_regex (\s+Zero){2,} remove_matched;
into_all method label ADBG code_regex (?<=Return\s\(MDBG\))\s+Arg0 remove_matched;
into_all method label _PS3 code_regex PS3X\n replace_matched begin Store (Zero, PS3X)\n end;
into_all method label _PS2 code_regex PS2X\n replace_matched begin Store (Zero, PS2X)\n end;
into_all method label _PS0 code_regex PS0X\n replace_matched begin Store (Zero, PS0X)\n end;

into_all method label GPEH insert begin Return (Zero) end;

into method label _CRS parent_label PCI0 code_regex DWordField\s\(BUF0,\s\\_SB.PCI0._Y1E._LEN,\sMSLN\) replace_matched begin QWordField (BUF0, \\_SB.PCI0._Y1E._LEN, MSLN) end;

into_all all code_regex Acquire\s\(MUT0,\s0x0FFF\) replace_matched begin Acquire (MUT0, 0xFFFF) end;

into method label _HID parent_label _SB.PCI0.LPCB.TPM code_regex (Return\s\(Zero\)) remove_matched;
into method label _HID parent_label _SB.PCI0.LPCB.TPM insert begin Return (Zero) end;

into method label _PS0 parent_label NVM0 code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label NVM0 insert begin Return (Zero) end;

into method label _PS0 parent_label XHC code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label XHC insert begin Return (Zero) end;

into method label _PS0 parent_label RHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS0 parent_label RHUB insert begin Return (Zero) end;

into method label _PS3 parent_label NVM0 code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS3 parent_label NVM0 insert begin Return (Zero) end;

into method label _PS3 parent_label XHC code_regex (Return\s\(Zero\)) remove_matched;
into method label _PS3 parent_label XHC insert begin Return (Zero) end;

into method label _DSM parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label _DSM parent_label SHUB insert begin Return (Zero) end;

into method label RDCA parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label RDCA insert begin Return (Zero) end;

into method label CNRS parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label CNRS insert begin Return (Zero) end;

into method label SPL1 parent_label SHUB code_regex (Return\s\(Zero\)) remove_matched;
into method label SPL1 insert begin Return (Zero) end;

into method label OE1X parent_label _GPE code_regex (Return\s\(Zero\)) remove_matched;
into method label OE1X parent_label _GPE insert begin Return (Zero) end;

# into method label TINI parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TINI parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label TWAK parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TWAK parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label TPTS parent_label _SB.PCI0.RP05 code_regex (Return\s\(Zero\)) remove_matched;
into method label TPTS parent_label _SB.PCI0.RP05 insert begin Return (Zero) end;

into method label SMSR parent_label _SB code_regex CreateDWordField\s\(Arg0,\s0x04,\sAEBX\)\s+ remove_matched;
into method label SDSP parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\sZero,\sACTN\)\s+ remove_matched;
into method label GDSP parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\sZero,\sACTN\)\s+ remove_matched;
into method label DEVS parent_label AMW0 code_regex CreateDWordField\s\(Arg0,\s0x04,\sCPAR\)\s+ remove_matched;

# Device injection for the Intel 9 Series SATA
into device label SAT0 set_label begin SATA end;
into_all all code_regex SAT0 replaceall_matched begin SATA end;
into device label SAT1 remove_entry;
into_all scope label _SB.PCI0.SAT0.PRT0 set_label begin _SB.PCI0.SATA.PRT0 end;
into_all scope label _SB.PCI0.SAT0.PRT1 set_label begin _SB.PCI0.SATA.PRT1 end;
into_all scope label _SB.PCI0.SAT0.PRT2 set_label begin _SB.PCI0.SATA.PRT2 end;
into_all scope label _SB.PCI0.SAT0.PRT3 set_label begin _SB.PCI0.SATA.PRT3 end;
into method label _DSM parent_label SATA remove_entry;
into device label SATA insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x0A) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Intel AHCI Controller",\n
		"model", Buffer (0x2D) {"Intel 9 Series Chipset Family SATA Controller"},\n
		"device_type", Buffer (0x0F) {"AHCI Controller"},\n
		"device-id", Buffer (0x04) {0x02,0x1E,0x00,0x00}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Add the missing MCHC device
into device label MCHC parent_label PCI0 remove_entry;
into device label PCI0 insert begin
Device (MCHC)\n
{\n
	Name (_ADR, Zero)\n
}
end;

# Fix the LPC Device
into method label _DSM parent_label LPCB remove_entry;
into device label LPCB insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x02) {\n
		"compatible", Buffer () {"pci8086,8c44"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Fix the SMBUS to allow for loading of the AppleSMBusController.kext
into device label BUS0 parent_label SBUS remove_entry;
into device label SBUS insert begin
Device (BUS0)\n
{\n
	Name (_CID, "smbus")\n
	Name (_ADR, Zero)\n
	Device (DVL0)\n
	{\n
		Name (_ADR, 0x57)\n
		Name (_CID, "diagsvault")\n
		Method (_DSM, 4, NotSerialized)\n
		{\n
			Store (Package (0x02) {\n
				"address", 0x57
			}, Local0)\n
			DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
			Return (Local0)\n
		}\n
	}\n
}
end;

# Fix HDEF device for the Realtek ALC887 audio codec
into method label _DSM parent_label HDEF remove_entry;
into device label HDEF insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x10) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Realtek Audio Controller",\n
		"model", Buffer () {"Realtek ALC887 Audio Controller"},\n
		"device_type", Buffer (0x10) {"Audio Controller"},\n
		"layout-id", Buffer (0x04) {0x01,0x00,0x00,0x00},\n
		"PinConfigurations", Buffer (Zero) {},\n
		"MaximumBootBeepVolume", Buffer(One) {0x40},\n
		"hda-gfx", Buffer (0x0A) {"onboard-1"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Fixes 'Built-in' status for Realtek Gigabit Ethernet
into method label _DSM parent_label GLAN remove_entry;
into device label GLAN insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x0C) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Realtek Ethernet Controller",\n
		"model", "Realtek RTL8111F Gigabit Network Controller",\n
		"device_type", Buffer (0x13) {"Ethernet Controller"},\n
		"built-in", Buffer (One) {0x01},\n
		"location", Buffer (0x02) {"1"}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

# Patches the Intel USB3 on Intel 9 Series chipsets
into method label _DSM parent_label XHC remove_entry;
into device label XHC insert begin
Method (_DSM, 4, NotSerialized)\n
{\n
	Store (Package (0x15) {\n
		"AAPL,slot-name", "Built In",\n
		"name", "Intel XHCI Controller",\n
		"model", Buffer (0x37) {"Intel 9 Series Chipset Family USB xHCI Host Controller"},\n
		"device_type", Buffer (0x0E) {"USB Controller"},\n
		"AAPL,current-available", 0x0834,\n
		"AAPL,current-extra", 0x0A8C,\n
		"AAPL,current-in-sleep", 0x03E8,\n
		"AAPL,current-extra-in-sleep", 0x0834,\n
		"AAPL,max-port-current-in-sleep", 0x0A8C,\n
		"AAPL,device-internal", 0x02,\n
		Buffer (One) {0x00}\n
	}, Local0)\n
	DTGP (Arg0, Arg1, Arg2, Arg3, RefOf (Local0))\n
	Return (Local0)\n
}
end;

Ciao Jolly :D

 

La patch per l'audio è già compresa nella patch All in One di PJALM...

Link to comment
https://www.insanelymac.com/forum/topic/312138-dsdt-pacth/#findComment-2236894
Share on other sites

Non ho capito se ti riferisci ad una build particolare o se il tuo è un discorso in generale. Comunque riguardo FakePCIID dovresti specificare quale stai usando. Il metodo consiste nell'uso di FakePCIID.kext + i kext relativi a quello che interessa. In alcuni casi è possibile ottenere lo stesso obiettivo  tramite DSDT o config.plist.

Per l'iniezione HDEF a livello di funzionamento basta la patch da te descritta. Implementare più informazioni sarebbe una questione puramente estetica.

Riguardo la "raccolta" di patch, tu hai fornito una All in One che è già comprensiva di tutto riguardo alla scheda a cui si riferisce. Mancherebbe solo l'iniezione dell'audio HDMI

Link to comment
https://www.insanelymac.com/forum/topic/312138-dsdt-pacth/#findComment-2236898
Share on other sites

×
×
  • Create New...