질문 몇일동안 해결안되서 질문드려봅니다.
- 토우야
- 3329
- 24
토우야님의 기기정보
질문용 시스템 사양 | 1번 |
---|---|
추가사양 및 설치(할)OS | Mac OS Bigsur |
공지숙지/증상설명 | 숙지 |
안녕하세요.
해킨에 대해서 공부하게 되다보니 본체도 전용으로 하나 중고로 맞추면서 배우는 뉴비입니다.
제가 해결하고싶은 문제는 로그파일생성과 시스템 종료후 본체 파워가 종료 안되는 현상입니다.
설치까지는 문제없었습니다
하지만 맥 부팅이후로 로그파일이 하나씩 생기는것을 보고 문제가 있다고 판단하여 다시 만들어보고 비교해보고 구글에 영어로 검색해봐도 제 능력이 부족한지 전혀 해결이 되지 않습니다.
config파일을 수정하고 수정해봐도 동일한 로그파일 생성
그리고 시스템 종료하면 본체까지 종료가 안되기에 usb맵핑문제라는글 보고 처음에 만든것들을 다 폐기하고 다시 만들다보니 결국 hackintool으로도 만들었는데 포트는 전부 정상적으로 작동되었으나 동일한 현상이 발생되네요
열심히 찾아봐도 더이상 해결방법이 나오질 않아 죄송한 마음으로 글을 작성하여 도움을 받아보려고 합니다.
하루에 6시간이상 잡아도 해결안되니 정말 답답합니다. 힌트라도 알려주시면 감사하겠습니다.
토우야
댓글 24
본문의 첨부 파일이 오류로 내려받기가 안 됩니다. (로그 파일은 안 올리셔도 됩니다.)
용량 등의 문제로 제대로 업로드가 되지 않을 시 구글이나 아래 링크와 같은 사이트를 이용해주세요.
로그 파일은 오류와 상관 없이 config.plist에 설정한 값 때문에 부팅 시마다 발생합니다. 로그 파일 생성이 안 되게 하는 방법은 'config.plist - Misc - Debug - Target' 항목값을 '0'으로 변경하시면 됩니다.
부팅에 필수적이지 않은 요소들을 제거하고 최소한의 구성을 적용해서 부팅해보세요
그런뒤에 다른 요소들을 하나하나 추가해가면서 동일한 문제가 발생하는 구간을 찾아보세요
그럴려면 부트영역을 처음부터 하나하나 구성하는 방법을 찾아 보심될꺼에요
'config.plist - ACPI'의 하위 항목인 'Add'와 'Delete'의 순서가 바뀌었습니다.
SSDT-UIAC.aml과 SSDT-USBX.aml은 불필요합니다.
'config.plist - DeviceProperties'에 내장 그래픽 관련 설정이 없습니다. 아래 링크 참고해주세요.
Desktop Haswell and Broadwell | OpenCore Install Guide (dortania.github.io)
켁스트는 'Lilu, VirtualSMC, WhateverGreen, ApplALC, SMC Plugins 그리고 나머지' 순서로 정렬해주세요.
USB는 2.0 포트만 사용하시는 건가요? Hackintool을 사용한 USB 매핑 방법 관련 내용은 링크 참고해주세요.
[필독] - [ USB 포트매핑] - Hackintool / 최종 정리. ( macOS 모든 버전에서 가능 ) (x86.co.kr)
'config.plist - PlatformInfo - Generic'에 SMBIOS를 넣어주세요.
답변으로 알려주신대로 다 확인하고 넣었습니다.
SMBIOS는 혹시나해서 비워둔걸 대체한것이라서 실제론 iMac19,1으로 적용해서 사용하고 있습니다.
답변 감사합니다.
시스템 종료가 완전히 되지 않는 문제는 USB Port Mapping 보다는
ACPI 의 _PTS Method 와 XHC Controller 의 PMEE 라는 FieldUnitObject 관련 문제일 확률이 높습니다.
아래의 사이트를 참고하여 SSDT-ZPTS.aml 과 _PTS to ZPTS Rename 패치를 적용하고 다시 부팅해보세요.
https://dortania.github.io/OpenCore-Post-Install/usb/misc/shutdown.html
답변덕분에 대부분 해결되었지만 직접 찾기 위해 열심히 검색중인 hdmi audio 같은 기능은 머리 아프네요 ㅠㅠ
혹시, Intel 내장 그래픽의 HDMI 디지털 사운드 출력과 관련하여 도움이 필요하시다면 도와 드리겠습니다. :)
혹시, Intel HD Graphics 4600 내장 그래픽의 Device Properties 와
내장 사운드 장치인 HDEF 의 Device Properties,
HDMI Audio 장치인 HDAU 의 Properties 를 입력하셨다면 어떻게 입력하였는지 확인해 볼 수 있을까요?
오늘 새벽에 PCI 장치 입력으로 사운드 카드 소리 출력까지는 성공했으나 HDMI는 어디서 손을 대야할지는 진행을 못하는 상태입니다.
혹시, Config.plist 첨부하여 보내주실 수 있을까요?
Intel 4th Gen Haswell & 5th Gen Broadwell 의 경우에는 B0D3 Device 를 HDAU 로 Rename 하고
HDEF 대신 HDAU Device 에 hda-gfx 속성을 인젝션해야 하며 HDEF 와 HDAU 의 Layout ID 를 맞춰주어야 합니다.
현재 최신 버전의 WhateverGreen 은 B0D3 를 HDAU 로 Rename 패치를 자동으로 적용합니다.
즉, Intel 4th Gen Haswell 시스템은 3개의 장치에 Properties 를 입력해야 합니다.
PciRoot(0x0)/Pci(0x2,0x0) - IGPU
hda-gfx = onboard-1 (String)
PciRoot(0x0)/Pci(0x1B,0x0) - HDEF
layout-id = (질문자님께서 사용하고 계신 Layout ID 입력) (Number)
만약, Number 가 아닌 Data 형식으로 입력할 것이라면 Layout ID 를 16진수(Hex) 로 변환하고 Reverse Byte Order 형식으로 입력해야 합니다.
PciRoot(0x0)/Pci(0x3,0x0) - HDAU (Rename 전에는 B0D3)
hda-gfx = onboard-1 (String)
layout-id = (질문자님께서 사용하고 계신 Layout ID 입력) (Number)
아래의 사이트를 참고해보세요.
1. alcid=1 부트 옵션이 적용되어 있는데 PciRoot(0x0)/Pci(0x1B,0x0) 항목에는 layout-id = 61000000 (Data) 속성이 적용되어 있습니다.
Layout ID 를 1 로 사용하고 있다면 layout-id = 01000000 (Data) 으로 수정하고 alcid=1 부트 옵션은 제거해주세요.
2. PciRoot(0x0)/Pci(0x1B,0x0) 항목의 hda-gfx 속성의 값은 onboard-2 가 아닌 onboard-1 로 입력해야 합니다.
3. 전에 위의 댓글에서 말씀드린 시스템 종료 패치와 관련된 SSDT 가 .dsl 로 ACPI 폴더에만 넣어져 있습니다.
ACPI 폴더에는 DSDT, SSDT 등의 ACPI Tables 를 넣을 때 MaciASL 등의 앱을 사용하여 .aml 로 컴파일하여 저장하고 넣어야 합니다.
.dsl 형태의 파일은 디컴파일(디어셈블)된 ACPI 소스 코드 파일이며, 이는 macOS 가 부팅될 때 로드되지 않습니다.
.aml 형태의 파일은 기계어로 컴파일되어 저장된 ACPI Machine Language 파일입니다.
또한, ACPI 폴더에 DSDT, SSDT 등의 ACPI Tables 를 추가하고 나서 Config.plist - ACPI - Add 에도 추가해줘야 합니다.
ACPI 폴더에 SSDT 를 넣어도 Config.plist - ACPI - Add 에 추가하지 않으면 로드되지 않습니다.
제가 위의 내용을 수정한 EFI 폴더를 업로드합니다.
Config.plist 는 OpenCore 부트로더 r0.9.6 & r0.9.7 버전 기준으로 수정하였습니다.
지금 비교하면서 보는데 정말 죄송스러울정도로 너무 많은 도움을 주셔서 감사합니다.
적용해서 확인해보겠습니다. 감사합니다. (_ _)
추가 답변 늦어서 죄송합니다. hdmi 사운드가 잡히지 않아 layout-id 값을 변경하면서 확인해보았으나 hdmi 사운드가 안잡혔습니다. 그러다보니 일일이 변경(값을 10진수 그대로 넣는건지 몰라서 우선 16진수로 변경)하면서 테스트 해보니 동일한 결과로 인해 hdmi sound는 따로 직접 찾아보면서 해결해보겠습니다
추가로, 위의 댓글에서 말씀드리지 못한 내용이 있어서 댓글 드립니다. :)
Intel 5th Gen Broadwell 이하의 시스템에서 Lilu + AppleALC 를 사용하여 사운드 출력을 하려는 경우
HPET Device 와 RTC, TIMR, IPIC 등의 장치의 IRQ 충돌이 있을 경우에는 소리가 나오지 않습니다.
SSDTTime 에서 FixHPET 메뉴를 사용하여 HPET Device 의 IRQ 충돌 패치를 생성하고 적용해보세요.
https://github.com/corpnewt/SSDTTime
그리고, HDEF 의 Device ID 에 Fake ID (Spoof) 적용이 필요한 경우일 수도 있습니다.
Config.plist 의 HDEF 에 device-id = 0C0A0000 (Data) 속성을 직접 입력하거나
FakePCIID.kext & FakePCIID_Intel_HDMI_Audio.kext 두 개의 Kext 를 추가하고 다시 부팅해보세요.
https://github.com/RehabMan/OS-X-Fake-PCI-ID
https://bitbucket.org/RehabMan/os-x-fake-pci-id/downloads/
또한, Azul Framebuffer 의 Platform ID 0x0D220003 은 3개의 커넥터가 모두 기본적으로 DP 타입입니다.
Device Properties 에서 IGPU 장치 항목에 framebuffer-conX~ 속성을 사용하여
커넥터 타입을 HDMI (00080000) 로 변경하는 패치도 적용해주세요.
https://github.com/acidanthera/WhateverGreen/blob/master/Manual/FAQ.IntelHD.en.md
https://dortania.github.io/OpenCore-Post-Install/gpu-patching/intel-patching/connector.html
제가 이해력이 안좋아서 당장은 쉬운것부터 해보고있긴한데 어렵네요 ㅠㅠ 좋은 정보 감사합니다.
천천히 해보면서 성공할때까지 숙지하고 도전하겠습니다!