후니님의 요청으로 dsdt패치 강좌를 생각하다가 이왕이면 후니님의 마더보드로 하는것이 좋을것 같아 X299 칩셋을 골랐습니다. 쉽지는 않겠지만 ssdt로 dsdt를 over-ride하는 방법을 많이 설명 하겠습니다.
클로버 부트로더가 쓰이기 전 카멜레온 부트로더를 사용하시던 유저들은 dsdt를 직접 패치하여 사용을 하였습니다. 저도 그렇게 사용을 하였구요. 이제는 자주 접하지 않다 보니 많이 잊었는데 제가 사용했던 자료도 찾기 힘들고 너무 오래된 방식이라 요즈음은 dsdt를 추출하여 에러 수정만 하고 ssdt와 클로버 부트로더의 config.plist를 이용하여 패치 하는 방식으로 사용하고 있습니다.
dsdt의 에러 수정은 구글에 많이 나와 있어서 여기에는 GA X299 Ultra Gaming 에 국한해서 설명을 하겠습니다.
컴파일은 MaciASL RM-1.31 ACPI 6.1버전으로 하였습니다. MaciASL의 버전에 따라 에러가 다르게 나올수 있습니다.
1. Compile DSDT
컴파일을 하면 아래와 같이 에러가 나옵니다.
빨간색으로 표시 되어 있는 에러가 가장 문제지요. 이에러들은 중복으로 정의 되어 있어서 인데 아래 부분을 보면 쉽게 알수 있습니다.
2. 에러수정
에러 모두 두군데에 정의 되어 있습니다. External 과 OperationRegion (PSYS, SystemMemory, 0x36743000, 0x0400) 에 나와 있지요.. 한곳에서만 object가 존재 해야 합니다. 제 생각으로는 내부에 정의 되어 있으니까 외부에서 불러오는것이 아니라 OperationRegion에 있는것이 맞을것 같군요. WSIC 부터 WSTS이렇게 6개를 주석처리 해 줍니다.
컴파일을 하면 아래와 같이 에러가 하나로 줄어 듭니다.
이제 NITR 에러 하나만 남았습니다. MaciASL의 Finder를 열어 NITR을 찾으면 6개가 나오고 그중 2군데에 정의 되어 있고 4군데는 사용이 되어 있습니다. External (NITR, FieldUnitObj) 와 위에 언급한 OperationRegion (PSYS, SystemMemory, 0x36743000, 0x0400)의 제일 마지막에 8비트로 할당이 되어 있습니다. 이제 사용된 부분을 보겠습니다.
LEqual과 LoadTable 이렇게 두군데에서 사용이 되었습니다. LEqual에서는 변수로 1바이트를 비교하고 LoadTable에서는 string으로 Data table의 signature로 불러 졌네요. 그렇다면 두군데 정의 된곳에서 External은 주석처리해서 사용을 안해도 되겠다는 생각이 듭니다.
에러 수정부분입니다.
컴파일 결과 입니다.
에러가 모두 사라졌습니다. dsdt를 넣고 부팅하여 정상적으로 사용되는지 확인합니다. 정상적인 사용이 가능하다면 warning을 없앨수 있습니다. 모두 없애지는 못하고 문법적으로 없앨수 있는부분만 수정할수 있습니다.
3. Warning 수정
Not all control paths return a value(_E17)워닝은 해당 method제일 마지막 Release (OSUM) 다음에 Return (Zero)를 넣어주면 아래처럼 사라집니다.
다음워닝은 아래입니다.
문제점은 간단한데 12039라인의 //Length가 0 이 될수 없으므로 0x00000001로 수정해 줍니다.
워닝이 사라집니다.
다음은 유명한 워닝이지요.
이는 13452라인를 아래와 같이 고쳐주면 워닝이 사라집니다.
다음은 duplicate 워닝인데 다음과 같습니다.
같은변수에 같은 값을 store하니까 별 의미가 없어 보여 주석처리해도 될듯합니다. 약간의 딜레이를 주는 효과일지도 모르겠습니다.
워닝이 사라지는군요..
같은 형태의 워닝은 위와 같이 수정하면 없앨수 있습니다. 그러면 Localx를 포함하는 워닝이 남는데 각각의 Method에서 어떻게 쓰여지는지 정확히 알지 못하면 수정을안하는것이 나을둣 합니다. 이제 dsdt를 넣고 부팅해 봅니다...
위에 한 방법은 문법에 의한 것이므로 실제로 적용을 해서 부팅이 안될수도 있습니다.
Try this at your own risks...
도움이 되었으면 합니다.
"님의 댓글"
이 댓글을 신고 하시겠습니까?
제목 | 조회 수 | 날짜 | 글쓴이 |
---|---|---|---|
macOS Sequoia 15.0.1 24A348 정식버젼 고스트 이미지 OC 1.0.2 ft: 전체공개 +30 | 954 | 24.10.1121:10 | 좌절금지 |
오픈코어 1.0.2 +23 | 587 | 24.10.0900:22 | 줌바이퍼 |
[중급편] 노트북 해킨 +16 | 1417 | 24.07.1219:19 | Stultus |
macOS Ventura 13.7 22H123 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체 공개 +17 | 581 | 24.09.1917:09 | 좌절금지 |
macOS Sonoma 14.7 23H124 정식버젼 고스트 이미지 OC 1.0.1 ft: 전체공개 +31 | 912 | 24.09.1723:58 | 좌절금지 |
[초급편] 문제 스스로 해결하기 +20 | 4011 | 24.03.2920:07 | Stultus |
[입문편] 첫 해킨 길라잡이 +40 | 5106 | 24.01.1218:54 | Stultus |
[필독 - 안정화] macOS 해킨토시 설치 후 안정화 작업 목록 및 글타래 모음 총정리 📋 +67 | 5.1만 | 23.01.0913:39 | shl628 |
118 | 24.10.2322:26 | 뿌엥 | |
137 | 24.10.2321:29 | 해킨도전자 | |
120 | 24.10.2319:04 | 사노라맨 | |
806 | 24.10.1412:27 | shl628 | |
706 | 24.10.1316:00 | 수박 | |
349 | 24.10.1222:56 | Stultus | |
954 | 24.10.1121:10 | 좌절금지 | |
741 | 24.10.1115:53 | 수박 | |
587 | 24.10.0900:22 | 줌바이퍼 | |
1417 | 24.07.1219:19 | Stultus | |
1229 | 24.10.0500:31 | 줌바이퍼 | |
569 | 24.10.0410:49 | Tamy | |
754 | 24.09.2923:48 | 머트 | |
629 | 24.09.2822:28 | 머트 | |
465 | 24.09.2808:22 | Tamy | |
896 | 24.09.2321:32 | Stultus | |
995 | 24.09.2210:59 | 좌절금지 | |
648 | 24.09.2203:23 | 누림어멈 | |
1197 | 24.09.1919:17 | 좌절금지 | |
581 | 24.09.1917:09 | 좌절금지 | |
498 | 24.09.1813:37 | Stultus | |
912 | 24.09.1723:58 | 좌절금지 | |
603 | 24.09.1722:40 | 좌절금지 | |
455 | 24.09.1717:13 | 맥가즈아 | |
563 | 24.09.1708:13 | 김경석 | |
234 | 24.09.1617:47 | Panictosh | |
770 | 24.09.1504:35 | Tamy | |
584 | 24.09.1319:18 | Stultus | |
707 | 24.09.1019:44 | 치토 | |
484 | 24.09.0118:13 | 머핀X | |
463 | 24.09.0112:54 | 해킨도전자 | |
547 | 24.08.3115:34 | 머핀X | |
307 | 24.08.2601:42 | 화정큐삼 | |
306 | 24.08.2422:59 | 하나브 | |
321 | 24.08.2316:25 | 화정큐삼 | |
416 | 24.08.1810:56 | CanBe | |
363 | 24.08.1800:04 | 화정큐삼 | |
301 | 24.08.1722:03 | 화정큐삼 | |
201 | 24.08.1710:14 | jbhlyk | |
314 | 24.08.1622:06 | Stultus | |
220 | 24.08.1511:16 | hackillious | |
169 | 24.08.1421:30 | 세유니 | |
419 | 24.08.1419:58 | Stultus | |
377 | 24.08.1311:26 | 오디세이 | |
273 | 24.08.1115:46 | 좌절금지 | |
186 | 24.08.1111:21 | 티타보르 | |
233 | 24.08.1022:46 | Stultus | |
542 | 24.08.1022:10 | 오디세이 | |
168 | 24.08.1019:05 | jbhlyk | |
200 | 24.08.0923:20 | RogerT |
좋은 글 감사합니다.