질문 아이비 브릿지 팬티엄 2020m 그래픽 가속
- 해킨도전자
- 3947
- 17
해킨도전자님의 기기정보
질문용 시스템 사양 | 2번 |
---|---|
추가사양 및 설치(할)OS | 하이시에라 or 모하비 |
공지숙지/증상설명 | 숙지 |
해킨도전자
댓글 17
제 생각대로 만들어본 EFI인데 모든 과정이 통과된후 애플로고에서 로딩바가 하나도 채워지지 않은 상태로 멈췄습니다.
좀 더 찾아본 자료들 입니다
https://www.insanelymac.com/forum/topic/316981-intel-hd-graphics-ivy-b-hd-2500-qeci-for-osx-1011/
혹시, 부팅 과정의 로그를 동영상을 확인해 볼 수 있을까요?
macOS 부팅 과정의 마지막 부분에서 [IGPU] ~ 관련 로그가 어떻게 출력되는지 확인해보세요.
추가로, EFI 폴더에서 수정할 부분이 조금 있습니다.
1. Config.plist - ACPI - DSDT - Patches 에 있는 모든 항목은 필요하지 않습니다.
Fix RTC Bug 패치는 Intel 300 Series 칩셋 이상의 메인보드에서 사용하는 AWAC / RTC 관련 패치이며 질문자님의 노트북 사양에는 필요하지 않습니다.
또한, Rename EC0 to EC 패치는 SSDT-EC.aml 과 중복되며 질문자님의 노트북의 EC 계열 장치의 이름이 EC0 이 아닌 경우에는 효과가 없습니다.
나머지 Rename 패치는 최신 버전의 Lilu 와 관련 Kext 를 사용하면 자동으로 적용됩니다.
2. Config.plist - ACPI - Drop Tables 에서 xh_rvp10 테이블은 Drop 할 필요가 없을 것 같습니다.
3. Config.plist - Kernel and Kext Patches - KextsToPatch & KernelToPatch 에서 불필요한 패치는 모두 삭제해주세요.
4. AppleIntelFramebufferCapri.kext, AppleIntelHD4000Graphics.kext 를 Kext 폴더에 추가할 필요가 없습니다.
macOS 의 /S/L/E 경로에 기본적으로 내장된 Kext 이며
Info.plist 에 정의되어 있는 Device ID 에 의하여 후킹되어 로드되도록 하는 것입니다.
5. Config.plist - Graphics 에서 ig-platform-id 의 값을 0x1660003 이 아닌 0x01660003 으로 입력해주세요.
동영상을 확인해보니 그래픽 관련 문제입니다.
Config.plist 에서 Device - Properties 부분에 iGPU Properties 를 입력한 경우에는
Graphics 의 Inject Intel, ig-platform-id 항목은 값이 중복되기 때문에 입력하지 않는 것이 좋습니다.
또한, Fake ID - IntelGFX 항목은 0x0166 이 아닌 0x01668086 으로 입력해야 합니다.
0x____8086 과 같은 형식으로 뒷 4자리는 Intel 사의 고유한 Vendor ID 인 8086 으로 고정이며
0x 뒤의 4자리에 Fake ID (Spoof) 하려는 Device ID 를 입력해야 합니다.
1. Graphics 에서 Inject Intel 을 False 로 설정하고 ig-platform-id 항목의 값을 삭제해주세요.
2. AAPL,ig-platform-id 속성의 값을 Reverse Byte Order 형식으로 수정해주세요.
0x12345678 를 Reverse Byte Order 형식으로 변환하면 78563412 입니다.
즉, 위의 사진을 아래의 사진과 같이 수정해주세요.
위의 내용대로 수정한 후에 다시 부팅해보세요.
만약, 안 된다면 Platform ID 를 0x01660004 등의 다른 것으로 수정하고 다시 부팅해보세요.
혹시, 만약 그래도 안 된다면 정확하게는 저도 잘 모르겠지만,
Intel HD 2500 iGPU 는 대부분의 경우에는 그래픽 가속이 작동하지 않고
본문에 링크하신 사례는 무언가가 조금 특이한 케이스(?)인 것 같습니다.
그냥 포기하겠습니다
안되네요 ㅎㅎ 어떻게 하신거지...
일단 그냥 빅서 올릴려고 EFI 파일 수정해서
설치까지 했는데 macOS로 부팅할 수 있는 옵션이 없네요??
Preboot 눌러도 OS로 진입은 안됩니다
혹시, 현재 사용중인 Clover 부트로더의 버전이 무엇인가요?
Clover 부트로더로 macOS Big Sur 11 버전을 설치하려면 적어도 최소 Clover r5123 이상의 버전이어야 합니다.
또한, macOS Monterey 12 버전을 설치하려면 적어도 최소 Clover r5137 이상의 버전이어야 합니다.
그런데, Clover r5120 버전부터는 OpenCore 가 통합되어 있습니다.
즉, Clover 부트로더로 macOS Big Sur 11 이상의 버전을 설치하려면
최신 버전의 Clover 부트로더를 사용하거나 OpenCore 부트로더를 사용하는 것을 추천드립니다.
macOS Big Sur 11 버전이 출시되었을 때 OpenCore 가 통합되지 않은
순수 Clover 부트로더 만으로는 설치한 사례가 거의 없었습니다.
그래서, 그 때 Clover 에서 OpenCore 로 갈아타고 설치하거나
OpenCore 가 통합된 Clover r5123 이상의 버전을 사용하여 설치한 경우가 많았습니다.
EFI - Clover - Drivers - UEFI 폴더를 보면 AptioMemoryFix.efi 가 넣어져 있습니다.
AptioMemoryFix.efi 는 메모리 수정 관련 EFI 드라이버이며 macOS Big Sur 11 이상의 버전부터는 작동하지 않습니다.
macOS 에서 Kernel Address Space Layout Randomization 의 약자인 KASLR 라는 기능 때문에
Memory Map 수정이 필요한데 OpenCore 에서는 OpenRuntime.efi 와 Booter 의 Quirks 옵션 조합으로 설정하고
Clover 는 현재 최신 버전의 경우에는 OpenCore 가 통합되어 있어서 위와 동일하지만
OpenCore 가 통합되기 전인 Clover r5119 이하의 버전은 다음과 같은 Memory Map 수정 관련 EFI 드라이버 파일을 교체해보거나
- AptioMemoryFix.efi
- OsxAptioFixDrv.efi
- OsxAptioFix2Drv.efi
- OsxAptioFix3Drv.efi
- OsxLowMemFix.efi
- OsxAptioFix2Drv-free2000.efi
AptioMemoryFix.efi 를 사용하면서 slide=(값) 부트 옵션을 적용해보면서 직접 부팅을 시도해 보아야 합니다.
추가로, OsxAptioFix2Drv-free2000.efi 파일은 메모리 영역을 2000 만큼 강제로 개방시켜 버리기 때문에
일부 사용자는 하드웨어에 손상이 간 사례가 있어서 주의하여 사용해야 합니다.
하지만, macOS Big Sur 11 버전부터 ARM 기반 Mac 제품이 지원 대상으로 추가되면서
macOS 의 커널 파일 구조가 조금 많이 바뀌었습니다. (Prelinked Kernel -> Kernel Collection [~.kc])
AptioMemoryFix.efi 를 삭제하고 OpenRuntime.efi 를 추가한 후에
Config.plist 의 Quirks 설정을 질문자님의 노트북 사양에 적합하게 수정해주세요.
아래의 사이트를 참고해보세요.
Clover-Crate/Upgrading_Clover at main · 5T33Z0/Clover-Crate (github.com)
저도 Intel 3rd Gen Ivy Bridge CPU 의 Intel HD Graphics 2500 내장 그래픽은
화면을 출력하면서 완전한 QE/CI 그래픽 가속이 불가능하며
Headless 모드 구성에서 IQSV 가속/계산 용도로만 사용할 수 있는 것으로 알고 있었는데,
Intel HD 2500 iGPU 에서 Blur 효과와 그래픽 가속이 작동하는 모습의 스크린샷은 저도 처음 보네요...
macOS Sierra 10.12 버전부터는 Intel 4th Gen Haswell 내장 그래픽(Azul Framebuffer) 이상의 경우
QE/CI 그래픽 가속을 활성화하려면 CPU 가 AVX 고급 벡터 확장이라는 명령어 세트를 지원해야 합니다.
단, Intel HD Graphics 4000 내장 그래픽에 사용되는 아래와 같은 Kext, Bundle 에서도
AVX 명령어 세트를 필요로 하는지는 저도 잘 모르겠지만 질문자님께서 직접 시도해보셔야 할 것 같아요.
- AppleIntelFramebufferCapri.kext
- AppleIntelHD4000Graphics.kext
- AppleIntelHD4000GraphicsGLDriver.bundle
- AppleIntelHD4000GraphicsMTLDriver.bundle
- AppleIntelHD4000GraphicsVADriver.bundle
AVX 등의 명령어를 Emulation 해주는 OPEMU (OpcodeEmulator.kext) 를 추가하고
Capri Framebuffer 의 Platform ID 를 적용해보세요.
OpcodeEmulator.zip
https://www.insanelymac.com/forum/topic/329704-opcode-emulator-opemu-plug-in-project/?do=findComment&comment=2802805
또한, 0x0166 으로 Fake ID (Spoof) 적용도 필요할 수 있습니다.