*적용중인 도장
제가 적었던 글이지만.....역시...날라갔었네요...
쿨럭..요즘은 뭐 다 사용 하실줄 아시는 것 같으니 일일이 캡춰 해서 번역하는건 패스 하겠습니다. 본인 시스템에서 수정해야 할 것 같은 부분은 클릭하여 사용 하시면 되겠습니다.
특히 잠자기 관련 터미널에서 아래와 같은 결과가 나오지 않는 경우에는 아래 fix 항목를 이용하여 수정 하시길 바랍니다.
kextstat | grep SMBus
kextstat | grep HPET
kextstat | grep LPC
This is a main required fix. Apart from device HPET, this fix changes devices RTC and TMR and solves problems involving BIOS setting resets after waking or rebooting. This way, the minimal required DSDT fix mask is 0x0010
.
Changes the DeviceID of the LPC controller to allow the loading of kext AppleLPC. This fix is necessary when the chipset is not recognised by OS X. However, the list of supported Intel and NForce chipsets is so big that the fix is rarely needed. Verify if AppleLPC is loaded and use this fix, if it is not. Moreover, the kext can unload itself even if the chipset is supported.
Adds an SMBusController to the device tree, which fixes a warning about its absence in the system log.
--------------------
Nr. 1 : This is a necessity. Does Mac OS X really need HPET? Not really, but BIOS vendors tend to be slow and they just started writing the correct parameters. Usually a DSDT will still need to be corrected.Why does it need to be fixed at all? DSDT patching was created with the intention to fix device HPET- High Precision Events Timer. The point is that OS X includes a kext named AppleIntelCPUPowerManagement for power management control (SpeedStep), which - by all means - needs interrupts IRQ 0
and 8
. Otherwise it will create a kernel panic. This kext can either be removed or blocker, however you can alternatively correct the DSDT to ensure a normal behaviour of this kext.
For injecting device properties you can - apart from DeviceProperties - use a variant involving method _DSM
(Device Specific Method), which is written into the DSDT table. _DSM is widely used since OS X 10.5. It contains properties for a device and makes use of the method DTGP
, which is universal for all devices. This fix simply adds the DTGP method for later use with other fixes. It has no significance on its own.
Includes a wide range of common fixes collected over time - especially for older ASUS boards, where the DSDTs really are off target. Look in the source code if you want to see the specific patches. This fix is recommended for everyone. It also includes the Darwin fix as described in the last section.
A condition is added to method _PTS
: if the argument is 5
(shutdown), then no other actions shall be performed. Many reports confirmed this option to fix shutdown issues with ASUS boards, maybe even with other vendors. Some DSDT tables already contain such a condition and it is advised to turn the fix off in this case.
The author of the whole DSDT patching method - pcj - used this fix for himself. It creates a device with DeviceID
=0x0044
, which matches Intel Clarkdale. This device has a class of0x060000
and is usually missing. Some chipsets require this device and this is when this fix needs to be enabled to correctly resolve control of PCI rail power. The question if you need it or not cannot be answered, try it for yourself.
This is a main required fix. Apart from device HPET, this fix changes devices RTC and TMR and solves problems involving BIOS setting resets after waking or rebooting. This way, the minimal required DSDT fix mask is 0x0010
.
Changes the DeviceID of the LPC controller to allow the loading of kext AppleLPC. This fix is necessary when the chipset is not recognised by OS X. However, the list of supported Intel and NForce chipsets is so big that the fix is rarely needed. Verify if AppleLPC is loaded and use this fix, if it is not. Moreover, the kext can unload itself even if the chipset is supported.
Removes the interrupt from device IPIC. The designation of is fix is not really clear. Notebooks will rather need this interrupt to be added than removed.
Adds an SMBusController to the device tree, which fixes a warning about its absence in the system log.
Performs a set of fixes and injects video card properties. In general, this method of activateng a video card has more possibilities than using DeviceProperties, as you can not only provide a _DSM method, but also change other ACPI properties related to the display. For example: Dell notebook owners need to remove device CRT from their video card tree.
10.6.1 introduces a kernel panic related to AppleIntelPIIXATA. There are two options to solve the problem: using a patched kext or patching the DSDT. Probably not needed for recent systems.
Fixes several SATA problems and removes yellow hard drive icons by masking the controller as ICH6. The method is controversial but it can fix the DVD drive and simply replacing the hard drive icons is not enough in this case. An alternative is to patch the kext AppleAHCIPort.kext, seeKextsToPatch.
Adds the property fwhub
to the FireWire controller.
Tries fixing USB the countless USB issues. Injecting DeviceProperties currently is the better option.
Injects the property built-in
to the Ethernet card, which is necessary for correct operation. Additionally injects the card's name for a better looking System Profiler.
Same as above for WiFi. Furthermore, the actual device is created and written into DSDT. A DeviceID will automatically written for known cards to enable airport functionality.
Corrects sound card properties to enable the native AppleHDA driver. The name is changed fromAZAL
to HDEF
, layout-id
and PinConfiguration
are injected.
"님의 댓글"
이 댓글을 신고 하시겠습니까?
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +29 | 936 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +23 | 574 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1400 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 574 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 905 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 4002 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5081 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
Hot AMD Sequoia용 AppleALC 1.9.2 +3 | 105 | 24.10.2319:04 | 사노라맨 |
Hot [Sequoia 15.0.1, OC r1.0.2] ASUS TUF B550-PLUS / RYZEN 5 5600X / RX470 +2 | 100 | 24.10.2322:26 | 뿌엥 |
Hot OCLP로 지원되지 않는 기기/dGPU를 사용하는 해킨토시의 사이드카 품질 문제 해결방법 +1 | 113 | 24.10.2321:29 | 해킨도전자 |
100 | 24.10.2322:26 | 뿌엥 | |
113 | 24.10.2321:29 | 해킨도전자 | |
105 | 24.10.2319:04 | 사노라맨 | |
778 | 24.10.1412:27 | shl628 | |
657 | 24.10.1316:00 | 수박 | |
344 | 24.10.1222:56 | Stultus | |
936 | 24.10.1121:10 | 좌절금지 | |
730 | 24.10.1115:53 | 수박 | |
574 | 24.10.0900:22 | 줌바이퍼 | |
1400 | 24.07.1219:19 | Stultus | |
1206 | 24.10.0500:31 | 줌바이퍼 | |
569 | 24.10.0410:49 | Tamy | |
749 | 24.09.2923:48 | 머트 | |
628 | 24.09.2822:28 | 머트 | |
463 | 24.09.2808:22 | Tamy | |
892 | 24.09.2321:32 | Stultus | |
994 | 24.09.2210:59 | 좌절금지 | |
642 | 24.09.2203:23 | 누림어멈 | |
1183 | 24.09.1919:17 | 좌절금지 | |
574 | 24.09.1917:09 | 좌절금지 | |
498 | 24.09.1813:37 | Stultus | |
905 | 24.09.1723:58 | 좌절금지 | |
600 | 24.09.1722:40 | 좌절금지 | |
453 | 24.09.1717:13 | 맥가즈아 | |
562 | 24.09.1708:13 | 김경석 | |
234 | 24.09.1617:47 | Panictosh | |
768 | 24.09.1504:35 | Tamy | |
584 | 24.09.1319:18 | Stultus | |
706 | 24.09.1019:44 | 치토 | |
484 | 24.09.0118:13 | 머핀X | |
460 | 24.09.0112:54 | 해킨도전자 | |
546 | 24.08.3115:34 | 머핀X | |
306 | 24.08.2601:42 | 화정큐삼 | |
305 | 24.08.2422:59 | 하나브 | |
318 | 24.08.2316:25 | 화정큐삼 | |
415 | 24.08.1810:56 | CanBe | |
363 | 24.08.1800:04 | 화정큐삼 | |
300 | 24.08.1722:03 | 화정큐삼 | |
201 | 24.08.1710:14 | jbhlyk | |
312 | 24.08.1622:06 | Stultus | |
218 | 24.08.1511:16 | hackillious | |
169 | 24.08.1421:30 | 세유니 | |
419 | 24.08.1419:58 | Stultus | |
377 | 24.08.1311:26 | 오디세이 | |
270 | 24.08.1115:46 | 좌절금지 | |
186 | 24.08.1111:21 | 티타보르 | |
233 | 24.08.1022:46 | Stultus | |
536 | 24.08.1022:10 | 오디세이 | |
168 | 24.08.1019:05 | jbhlyk | |
200 | 24.08.0923:20 | RogerT |
Rev 2392. Extended DSDT fix mask to 32 bit.
So now full mask is 0xFFFFFFFF.
For backward compatibility I use upper bit as "Fix New Way". If this bit is not set then old mask will work as before.
Let me explain details on all DSDT fixes.
AddDTGP_0001
Insert Method(DTGP) into DSDT. It is needed for set of _DSM methods if you are using some other DSDT fixes to inject device properties. No sense to use this method without other fixes.
FixDarwin_0002
Provide a set of corrections to DSDT to make your system "Darwin" identified as "Windows 2001" like the most ACPI system. More ACPI devices will work in this mode.
Old way this bit also provide fixes: FIX_WAK_200000, DeleteUnused_400000, FIX_ACST_4000000, FIX_S3D_2000000, AddPNLF_1000000, FIX_ADP1_800000
FixShutdown_0004
Add If(arg=5){} to method _PTS. This trick useful for some system (ASUS) to repair shutdown problem.
AddMCHC_0008
Added device MCHC to DSDT. For my board H61M this is obligatory, else KP.
Old way also included AddIMEI_80000.
FixHPET_0010
Add IRQ(0, 8, 11) to device HPET. Obligatory for OSX <=10.8. But I see Mavericks can work without it.
Old way also included FIX_RTC_20000, FIX_TMR_40000.
FakeLPC_0020
Change device-id for LPC chipset device. Needed in very rare cases when you have non-standard (for Apple) chipset. For example ICH9.
FixIPIC_0040
Delete IRQ(2) from device IPIC. Helpful for Power button will work.
FixSBUS_0080
Added Smbus device into DSDT. With some subdevice. I don't know a reason for the patch but there are many advices in forums to do this.
Never see problems with this bit.
FixDisplay_0100
This is very functional patch for Video devices. I recommend it even if you don't want to inject properties to the device. Other config settings like FakeID will be applied only with this bit set.
Old way this patch will affect all video cards, included embedded Intel GFX. New way Intel will be patched separately.
FixIDE_0200
Added initialization for IDE controller (not SATA) to prevent panic with it. https://www.projectosx.com/forum/index.php?showtopic=682
FixSATA_0400
Make DeviceID from ICH6 to prevent orange icons. Nowadays this patch looks to be obsolete. It is better to do kext binary patch.
FixFirewire_0800
Add device Firewire into DSDT if absent and if the device really present. Safe.
FixUSB_1000
Inject devices and set their properties for USB-1, USB-2 and USB-3. See no reason to not use this bit.
FixLAN_2000
Inject devices and set their properties for LAN controller. Also made FakeID for some known substitutions.
FixAirport_4000
Inject devices and set their properties for WiFi controller. Also made FakeID for some known substitutions.
FixHDA_8000
Rename AZAL to HDEF or HDAU. Adding HMDI device if absent. Else AppleHDA will not work.
Adding properties "layout-id", "MaximumBootBeepVolume", "PinConfigurations".
Setting for NewWay patching
NewWay_80000000
If you set this bit then your old bit will work restrictedly for one purpose each.
Without this bit all next bits have no sense.
FIX_DARWIN_10000
With this bit you get patch only for Darwin OS identify.
FIX_RTC_20000
Exclude IRQ(0) from RTC device.
FIX_TMR_40000
Exclude IRQ(8) from TMR device. This is ancient DOS device and nott needed in modern computers. Just wonder it present.
AddIMEI_80000
This device is used for IntelHDxxx graphics. Adding them if very desirable operation. This bit also needed for use FakeID->IMEI.
Do nothing for Core 2 systems.
FIX_INTELGFX_100000
New way IntelGFX device will not be patched without this bit.
FIX_WAK_200000
adding Return(Package(0)) into method _WAK if absent. This patch is for warning elimination. I don't know about working influence.
DeleteUnused_400000
There are not used devices like Floppy drive, LPT port and others that will be good to delete from DSDT.
FIX_ADP1_800000
Rename AC0 device to ADP1 device.
AddPNLF_1000000
Adding device PNLF is very useful: only with it you may have brightness control. This patch is also influence on good Sleep/Wake of the system.
FIX_S3D_2000000
Also resolving some Sleep/Wake problems by correcting _S3D methods.
FIX_ACST_4000000
Name ACST have different use for Apple and for ASUS. For ASUS it is AC adapter state. For Apple it is a replacement for _CST, c-states table.
To not conflict it is needed to rename such names to something else.
As I see many users uses idiotic mask 0x3031. Why? Because of noobs.
For my opinion the best mask for all will be 0xFBB7 old way.
New way mask for the safe booting 0x87E7FBF1
AddMCHC and AddIMEI are not safe masks but I needed them so for my case 0x87EFFBF9.
I will not set FixShutdown because I think HaltEnabler=true is more common solution.
If you think you need no IDE, FixFirewire, Airport, etc. then take into account that these bits will do nothing for you as you have no such devices.