Original Link

@아이뱅크 님께서 링크를 남겨주신 게시물을 따라.. 야밤에 토니맥을 마실 갔다가-
잠도 안오고 해서 한 번 간략하게나마 정리를 해볼까 합니다.

정보 제공해주신 @아이뱅크님, @D'Artagnan 님 감사합니다.

 

첨부 파일
SSDT-1.aml.zip

 

1) DSDT.aml의 GFX포트를 참조해서
2) SSDT-1.aml에서 인젝션 시키는 방식입니다
3) SSDT-1.aml에서 인젝션이 안되면
4) 클로버 부트로더의 ACPI / Drop SSDT table을 선택한 다음 SSDT-1.aml에 선언된
테이블 이름을 입력해주면 됩니다

스크린샷 2016-10-08 오후 12.55.06.png

 

* 주의 *

가) 가장 중요한 점은 최소한 Error 수정을 끝낸 DSDT.aml을 첨부 했을 때 빛을 발휘 합니다!
나) 커스텀 맥을 재부팅하고 부트로더 GUI에서 F4를 누르고 5초 정도 기다려 주세요
다) EFI/Clover/ACPI/origin 폴더에 다량의 aml이 추출됩니다
라) 그 중 OEM으로 추출된 DSDT.aml을 바탕화면으로 복사합니다
마) SSDT-1.aml은 첨부 파일을 참고해서 수정 하도록 합니다
바) 완성된 SSDT-1.aml은 EFI/Clover/ACPI/patched에 넣어 줍니다
사) 완성된 Config.plist는 EFI/Clover/에 넣어 줍니다


이 방법은 4포트가 장착된 그래픽 카드에서 유효합니다.

하지만 패치 이후에는
- 최초 설치 모드에서 nv_disable=1등의 옵션없이 설치 가능합니다.
- 리커버리 모드 진입시 기존 nv_disable=1옵션 없이 진입 가능합니다.

 

A. GPU 로케이션 확인

IOResistryExplorer을 실행하고 display로 검색합니다.
여기에서 중요한건 바로 NPE1 또는 2 또는 3@2로 된 키워드 하단의 IOPP에 속해있는 키워드가
Display@0으로 되어 있다면 그것은 SSDT-1.aml에 그래픽 카드 관련된 문구가 없다는 것입니다.
설령 있다손쳐도  출력 포트에 대응하지 않은 코딩이 되어있을 수 있습니다
IOReg-FindDisplay.jpg
위 스샷에서 AppleACPIPCI는 장치 이름이 아닙니다.
IOPP는 슬롯의 PCI  브릿지  역할을 하는 것이지 추가 장비를 나타내는것이 아닙니다.

우선 NPE3@2라고 표시된 곳에서 여러분의 시스템에선 어떤 문구가 나오는지 보시고 잘 메모해두세요
HP Z420 / Z620 에선 NPE2@2라고 나옵니다. 
 

 

B. DSDT에서 GPU 함수 이름 확인

MaciASL-FindDevice.jpg
바탕화면에 복사해둔 DSDT.aml을 MaciASL로 불러와서 B) 항목에서 메모한 키워드를 검색합니다.
위 스샷은 토니맥에 올라온 스샷입니다만, Z420, Z620의 DSDT에선  NPE2로 나옵니다.
하지만  DSDT.aml을 열어보면 NPE2에 종속된 SLT2이 GPU정보를 로드하는 것을 확인할 수 있습니다.

그래서 그 곳의 정보를 보면 Name (_ADR, Zero)로 표기 됨으로 인해, GPU정보가 네이티브로 구동되지 않는 것을
확인할 수 있습니다. 따라서 아래의 SSDT-1.aml을 그대로 복사하셔서 현재 사용중인 SSDT-1.aml에 넣으시면
Nvidia  GTX 660 / 670 / 760 / 770은 그대로 진행될겁니다.

 

 

C. SSDT-1.aml 수정

 HP Z420 / Z620 유저분 중 Kepler / Maxwell 아키텍처를 사용하는 분을 위한 패치입니다

FF0F842D
/*
 * Intel ACPI Component Architecture
 * AML Disassembler version 20100331
 *
 * Disassembly of iASLlsbxUV.aml, Sat Oct  8 12:41:53 2016
 *
 *
 * Original Table Header:
 *     Signature        "SSDT"
 *     Length           0x00000206 (518)
 *     Revision         0x01
 *     Checksum         0x4B
 *     OEM ID           "APPLE "
 *     OEM Table ID     "Devicein"
 *     OEM Revision     0x00015601 (87553)
 *     Compiler ID      "INTL"
 *     Compiler Version 0x20100331 (537920305)
 */
DefinitionBlock ("iASLlsbxUV.aml", "SSDT", 1, "APPLE ", "Devicein", 0x00015601)
{
    External (\_SB_.PCI0, DeviceObj)
    External (\_SB_.PCI0.NPE2, DeviceObj)
    External (\_SB_.PCI0.NPE2.SLT2, DeviceObj)

    Method (XOSI, 1, NotSerialized)
    {
        Name (WINV, Package (0x06)
        {
            "Windows", 
            "Windows 2001", 
            "Windows 2001 SP2", 
            "Windows 2006", 
            "Windows 2006 SP1", 
            "Windows 2009"
        })
        Return (LNotEqual (Match (WINV, MEQ, Arg0, MTR, Zero, Zero), 
            Ones))
    }

    Scope (\_SB.PCI0)
    {
        Device (HDEF)
        {
            Name (_ADR, 0x001B0000)
            Name (_PRW, Package (0x02)
            {
                0x08, 
                0x04
            })
            Method (_DSM, 4, NotSerialized)
            {
                If (LEqual (Arg2, Zero))
                {
                    Return (Buffer (One)
                    {
                        0x03
                    })
                }

                Return (Package (0x02)
                {
                    "hda-gfx", 
                    Buffer (0x0A)
                    {
                        "onboard-1"
                    }
                })
            }
        }
    }

    Scope (\_SB.PCI0.NPE2.SLT2)
    {
        Name (_STA, Zero)
    }

    Scope (\_SB.PCI0.NPE2)
    {
        Device (GFX1)
        {
            Name (_ADR, Zero)
            Name (_SUN, 0x05)
            Method (_DSM, 4, NotSerialized)
            {
                If (LEqual (Arg2, Zero))
                {
                    Return (Buffer (One)
                    {
                        0x03
                    })
                }

                Return (Package (0x0A)
                {
                    "@0,connector-type", 
                    Buffer (0x04)
                    {
                        0x00, 0x04, 0x00, 0x00    /* DP */
                    }, 

                    "@1,connector-type", 
                    Buffer (0x04)
                    {
                        0x00, 0x08, 0x00, 0x00    /* HDMI */
                    }, 

                    "@2,connector-type", 
                    Buffer (0x04)
                    {
                        0x00, 0x02, 0x00, 0x00    /* DVI-SL */
                    }, 

                    "@3,connector-type", 
                    Buffer (0x04)
                    {
                        0x04, 0x00, 0x00, 0x00    /* DVI-DL */
                    }, 

                    "hda-gfx", 
                    Buffer (0x0A)
                    {
                        "onboard-1"
                    }
                })
            }
        }

        Device (HDAU)
        {
            Name (_ADR, One)
            Method (_DSM, 4, NotSerialized)
            {
                If (LEqual (Arg2, Zero))
                {
                    Return (Buffer (One)
                    {
                        0x03
                    })
                }

                Return (Package (0x02)
                {
                    "hda-gfx", 
                    Buffer (0x0A)
                    {
                        "onboard-1"
                    }
                })
            }
        }
    }
}



위 코드를 SSDT-1.aml에 그대로 저장하고 컴파일 하신다음,
EFI/Clover/ACPI/patched/에 저장 하시고 리부팅 하시면 됩니다.
 

D. 동작 확인

Screen Shot 2016-01-27 at 8.16.17 PM.png
올바르게 되었다면 GFX1@0으로 표시되는게 정상입니다.
물론 HP Z420과 Z620에서 GTX760은 GFX1@0으로 표시되지만
제 경우처럼 nv_disable=1을 추가해야만 리커버리 / 클린 설치 모드 진입이 가능 했던 것을
SSDT-1.aml의 String을 Devicein이라 만들고 Config.plist에서 Drop해서 부팅시마다 로딩 시킵니다

스크린샷 2016-10-08 오후 1.43.18.png

스샷 상단 우측 두 번 째 Devicein이 Config.plst의 SSDT Drop table에서 로딩할 String입니다.

 

아무쪼록 다시 한 번 재부팅 한 다음, Recovery mode를  npci=0x3000 부트 플래그를 주고 진입해보세요.
정상적이라면 nv_disable=1을 지정했던 옵션을 더이상 필요하지 않은 장점이 있습니다.
장치 관리자에서 보면 HDMI 사운드가 설치도 되어 있고 말이죠? 심지어 VoodooHDA같은 패치 안해도 그래픽카드의 오디오가 설치됩니다.  다만 HP Z420, Z620의 경우 Voodoo Slice를 설치 해주시면 됩니다.

 

토니맥 주소를 처음에 보았지만, 오전에 뉴해킨님의 소스를 토대로 Z420/Z620에 GPU인젝트 글타래를 남겨 봅니다.
 

클럽 : 당주

See the Unseen

★ 글쓴이에게 고마우시면 커피한잔 후원(클릭) ★ 후원 정보를 입력하지 않았습니다.

"HP Z420/620 GPU inject를 통해 nv_disable=1을 벗어나 봅니다"글의 댓글은 현재 3개 있습니다.
비회원은 55분 17초 후에 댓글을 열람할수 있습니다.
로그인 하시면 바로 확인 하실수 있습니다.



No 제목 조회 닉네임 추천
846 macOS팁| 씨에라용 Nvidia 드라이버 4 1105 마음의창 0 - 0
» 팁/안정화| HOT HP Z420/620 GPU inject를 통해 nv_disable=1을 벗어나 봅니다 3 939 zisqo 4 - 0
844 팁/안정화| HOT HP Z420 / Z620 디스플레이 블랙아웃 회피 방법입니다. 7 1116 zisqo 3 - 0
843 macOS팁| HOT 106키 한국어키보드에서 한영키 인식시키기 11 2148 안녕하세요 11 - 0
842 팁/안정화| HOT 퓨리온님의 시에라&엘캐피탄 16GB 용량초과문제 & dd명령 더 빠르게 2 675 안녕하세요 4 - 0
841 팁/안정화| 키보드 언어변경 1 382 아이뱅크 0 - 0
840 팁/안정화| HOT 디스플레이 EDID 정보 편집 방법입니다. 5 1157 zisqo 4 - 0
839 팁/안정화| HOT rx480 관련 글타래 6 1171 KsJ 4 - 0
838 팁/안정화| 스피드스텝 이후 잠자기에서 깨어나지 않을 때 조치 방법중 하나입니다. 1 846 zisqo 1 - 0
837 macOS팁| HOT 맥의 키보드 및 디스플레이 설정 초기화 5 855 XEXEX 4 - 0
836 팁/안정화| [시에라 성공]b150-ds3h 사운드 잡기 alc887 2 1310 SeungHanKim 1 - 0
835 팁/안정화| VGA -> DVI 컨버터 쓰지 마세요! 2 583 SangHoMetHackin 1 - 0
834 macOS팁| macOS 또는 OS X에서 Caps lock 키 지연시간 제거방법 (Elimination of Caps lock key delay on 10.11 +) 466 D'Artagnan 1 - 0
833 팁/안정화| [임시 글타래] RX 480으로 1순위 부팅 이슈 66 1187 D'Artagnan 2 - 0
832 macOS팁| macOS에서 블루투스 이어폰 사용 시 aptX 코덱을 강제로 활성화하는 방법 3 273 Mactopia 0 - 0
831 팁/안정화| HOT AGDPfix.app 사용할 필요 없이 바로 그래픽 활성화  5 2417 아이뱅크 4 - 0
830 팁/안정화| rx480 모니터 케이블 분리 안해도 되는 팁 17 735 comed78 0 - 0
829 팁/안정화| HOT 시에라 전용 최신 버전 웹드라이버에 문제가 있습니다. (잠자기 이슈, 디스플레이 연결 유실 등) 36 2761 D'Artagnan 4 - 0
828 팁/안정화| 10.12.1 베타2 에서 AmdRadeonX4100.kext 안정화 작업이 있었네요 4 605 comed78 0 - 0
827 팁/안정화| HOT 썬더볼트3 지원설정 13 1114 아이뱅크 5 - 0
826 팁/안정화| HOT rx480 깊은 잠자기 테스트 10 783 comed78 4 - 0
825 팁/안정화| HOT 시에라(Sierra)에서 잠재우기 및 깨우기 설정 2 1558 terminator 7 - 0
824 팁/안정화| HOT 디스플레이 인치 및 아이콘 변경 방법 (10.12:16A323) 2 718 김찬 5 - 0
823 팁/안정화| HOT [Solved]HD5200 HDMI Audio+ApplHDA Patcher 1.5 5 640 작은거인 3 - 0
822 macOS팁| 시에라 알려진 와이파이 버그 해결방법 9 1259 Mactopia 1 - 0
821 팁/안정화| HOT 폴라리스RX470 (480?) 씨에라 10.12.1 PB 에서 정상가속됩니다. 23 2100 봄날 8 - 0
820 팁/안정화| HOT 클로버 최신(+r3751 이상) 엔당 드라이버 활성화 방법 8 2116 Mactopia 8 - 0
819 강좌/연재| 커스텀맥 설치/안정화/사용 관련 팁을 공유하는 게시판 입니다. 395 Mactopia 0 - 0
818 팁/안정화| HOT 멀티 OS 간 불루투스 페어링 공유하기 5 441 작은거인 4 - 0
817 팁/안정화| 16A323 GM 버전 바로 올렸습니다. 6 620 IanMinchangShin 2 - 0
816 팁/안정화| Gigabyte Z97X-UD3H 시에라 GM 업데이트 6 657 제러스 1 - 0
815 팁/안정화| macOS sierra GM 으로 무사히 옮겼습니다 10 1117 XEXEX 2 - 0
814 팁/안정화| 하스웰, Z97, R9 270 Sierra GM 설치 3 534 봄날 2 - 0
813 macOS팁| HOT 시에라 기기 등록 공개 베타 소프트웨어를 얻으세요 12 542 아이뱅크 4 - 0
812 팁/안정화| HOT 잠자기 후 블루투스 장비 페어링이 안될 때 388 작은거인 3 - 0
811 팁/안정화| HOT 이번 보안업데이트 엔비디아 쓰시는 분들은 잠시웨잇! 4 373 soullees 3 - 0
810 팁/안정화| USB 카드리더기를 애플 카드리더기로 인식시키기 1 550 leejo0531 2 - 0
809 팁/안정화| BU-4096 블투동글 구입시 참고할 점 10 816 faananan 1 - 0
808 macOS팁| 맥에서 삼성 프린터기 스캐너 사용하기 2 302 아이뱅크 0 - 0
807 팁/안정화| RX470 시에라에서 Kext 수정해서 사용가능하다는군요 4 428 SCENT_APPLE 0 - 0
서버에 요청 중입니다. 잠시만 기다려 주십시오...