RadarURL
Toggle Button
회원 가입 아이디/비밀번호 찾기
네이티브로 인식되는 경우 제목에 "네이티브"라는 문자가 포함되도록 해 주세요.

이번에 dual graphic card를 쓰려고 HIS Radeon HD 6850 D5 1GB IceQ-X를 구입하여 시도 했으나 마더보드가 바쳐주지 않아서 뒤로 미루고 Graphic Enabler = Yes로 했을경우 HDMI모니터가 나오지 않는것을 Hex editing을 통하여 HDMI출력을 해 보았습니다.


ATI framebuffer의 Hex Editing은 제가 x86osx.com에 올려놓은 thread에서 볼수 있습니다.  

링크는 여기에서... http://x86osx.com/bbs/view.php?id=osxtips&page=1&sn1=&divpage=1&sn=on&ss=off&sc=off&keyword=%B4%BA%C7%D8%C5%B2&select_arrange=headnum&desc=asc&no=2954


HIS Radeon HD 6850 D5 1GB IceQ-X는 graphics enabler = yes로 부팅하면 display port가 기본으로 잡힙니다. HDMI 모니터는 인식은 하나 출력을 볼수 없습니다. DVI는 아직 해보지 않아서 잘 모르겠군요.. 오늘 시간이 좀 생겨 삽질을 해 HDMI출력을 볼수 있었습니다. 


그래픽 바이오스를 decode해보면 아래와 같이 나옵니다. 


jjos-Mac-Pro:Desktop jjo$ ./radeon_bios_decode < 1002_6739_200f1787.rom

ATOM BIOS Rom: 

SubsystemVendorID: 0x1787 SubsystemID: 0x200f

IOBaseAddress: 0x0000

Filename: test.bin    

BIOS Bootup Message: BARTS PRO PCIE 1GB/256B GDDR5 DVI-I/DVI-D/HDMI/DP 775E/1000M                 

PCI ID: 1002:6739

Connector at index 0

Type [@offset 44254]: DisplayPort (10)

Encoder [@offset 44258]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 44364]: 0x90, OSX senseid: 0x1

Connector at index 1

Type [@offset 44264]: HDMI-A (11)

Encoder [@offset 44268]: INTERNAL_UNIPHY2 (0x21)

i2cid [@offset 44391]: 0x93, OSX senseid: 0x4

Connector at index 2

Type [@offset 44274]: DVI-I (2)

Encoder [@offset 44278]: INTERNAL_UNIPHY (0x1e)

i2cid [@offset 44428]: 0x94, OSX senseid: 0x5

Connector at index 3

Type [@offset 44284]: DVI-I (2)

Encoder [@offset 44288]: INTERNAL_KLDSCP_DAC1 (0x15)

i2cid [@offset 44428]: 0x94, OSX senseid: 0x5

Connector at index 4

Type [@offset 44294]: DVI-D (3)

Encoder [@offset 44298]: INTERNAL_UNIPHY1 (0x20)

i2cid [@offset 44455]: 0x95, OSX senseid: 0x6


여기에서 우리는 각 포트의 senseID를 참고 합니다. 

DisplayPort senseid : 0x1

HDMI-A    senseid : 0x4

로 나옵니다. 


이제 우리가 볼것은 Radeon HD 6800 series의 default framebuffer인  Duckweed를 확인해 보아야 겠지요. 

Personality: Duckweed 
ConnectorInfo count in decimal: 4 
Disk offset in decimal 176800 
0000000 00 04 00 00 04 03 00 00 00 01 00 00 12 04 04 01 // displayport 
0000010 00 04 00 00 04 03 00 00 00 01 00 00 22 05 05 02 // displayport 
0000020 00 08 00 00 04 02 00 00 00 01 00 00 11 02 03 04 // HDMI 
0000030 00 02 00 00 14 02 00 00 00 01 00 00 00 00 06 05 // DVI 
0000040 

버퍼의 제일 끝에 있는  01, 02,04,05가 senseID입니다.  HDMI는 04이네요. 우리가 여기에서 볼수 있는것은 senseID가 같은데도 불구하고 HDMI모니터가 출력이 되지 않는것입니다.  약간의 구글링을 해보니 ATI6000Controller.kext의 frame buffer중에서 Lotus가 6800시리즈의 HDMI를 출력해 준다고 해서 시도해 보니 displayport는 약간의 artifact가 보이나 HDMI출력이 제대로 나오더군요. 그래서 Lotus프레임 버퍼를 이용했습니다. 


Personality: Lotus

ConnectorInfo count in decimal: 3

Disk offset in decimal 177120

0000000    00  04  00  00  04  03  00  00  00  01  00  00  11  02  01  01 // displayport

0000010    00  08  00  00  04  02  00  00  00  01  00  00  22  05  04  04 // HDMI

0000020    00  04  00  00  00  01  00  00  00  01  00  00  21  03  02  02 // displayport

0000030


Lotus프레임 버퍼는 위와 같습니다. 이제 Duckweed와 Lotus를 비교해 보겠습니다. 

Duckweed -- 00  08  00  00  04  02  00  00  00  01  00  00  11  02  03  04

Lotus        -- 00  08  00  00  04  02  00  00  00  01  00  00  22  05  04  04

틀린부분이 22 05 04입니다. 그래서 Lotus의 버퍼값을 Duckweed의 HDMI 버퍼값에 대치 시키고 Duckweed의 displayport값에 있는 transmitter 22를 같은 프레임버퍼에 2개가 있으면 안되므로 11로 바꾸어 주면 Duckweed프레임 버퍼는 다음과 같이 바뀝니다. 


Personality: Duckweed

ConnectorInfo count in decimal: 4

Disk offset in decimal 176800

0000000    00  04  00  00  04  03  00  00  00  01  00  00  12  04  04  01

0000010    00  04  00  00  04  03  00  00  00  01  00  00  11  05  05  02

0000020    00  08  00  00  04  02  00  00  00  01  00  00  22  05  04  04

0000030    00  02  00  00  14  02  00  00  00  01  00  00  00  00  06  06 


이제 수정한 ATI6000Controller.kext를 kextutility나 kexthelper로 설치하고 재부팅하면 Waaaalla!!!! HDMI모니터가 HDMI오디오와 같이 출력이 됩니다. 


ioreg한 결과입니다. 


jjos-Mac-Pro:ati_personality.pl.0.6 jjo$ ioreg | grep ATY

    | |   |   | +-o ATY,Duckweed@0  <class AtiFbStub, id 0x1000002cd, registered, matched, active, busy 0 (258 ms), retain 7>

    | |   |   | +-o ATY,Duckweed@1  <class AtiFbStub, id 0x1000002ce, registered, matched, active, busy 0 (7 ms), retain 7>

    | |   |   | +-o ATY,Duckweed@2  <class AtiFbStub, id 0x1000002cf, registered, matched, active, busy 0 (4 ms), retain 7>

    | |   |   | +-o ATY,Duckweed@3  <class AtiFbStub, id 0x1000002d0, registered, matched, active, busy 0 (4 ms), retain 7>


system information입니다. 

Screen Shot 2012-01-04 at 11.04.13 PM.png



번호 제목 글쓴이 날짜 조회 수 추천 수
73 해킨 잘 되는 비디오 카드 10종 정보 [레벨:15]id: ilove_u 2017.10.04 483 0
72 클로버 부트로더 환경에서 ALC892 사운드칩을 인식시키기 [11] file [레벨:15]id: ilove_u 2014.08.11 9915 0
71 클로버 부트로더 환경에서 ALC88x 사운드칩을 인식시키기 [8] file [레벨:15]id: ilove_u 2014.11.18 7285 0
70 ATI HD5850 카드 듀얼모니터 출력하기 file [레벨:15]id: ilove_u 2015.04.17 5452 0
69 다중 모니터 3개이상으로 출력하기 [3] file [레벨:15]id: ilove_u 2015.04.17 5522 0
68 ALC889 patch script를 만들어 보았습니다. [9] file [레벨:12]뉴해킨 2014.10.21 12148 0
67 MSI ATI Radeon 280X Gaming edition framebuffer [3] file [레벨:12]뉴해킨 2014.11.10 7520 0
66 ASRock 보드의 ALC898을 DSDT로 사운드 인식시키기 file [레벨:15]id: ilove_u 2014.11.26 6586 0
65 ESI Juli@ ML 10.8.4 설치기 입니다 [3] file [레벨:1]hisaka 2013.07.13 8067 0
64 PCI 호환 사블 오디지 (SB0090) 사용기 [1] file [레벨:15]id: ilove_u 2013.07.14 9218 0
63 ALC889 bin patched AppleHDA for Mountain Lion 10.8.2 [6] file [레벨:12]뉴해킨 2012.10.02 8086 0
» HIS Radeon HD 6850 D5 1GB IceQ-X의 HDMI모니터 활성화 하기 [2] file [레벨:12]뉴해킨 2012.01.04 11068 0
61 Mountain Lion 10.8 에서 Intel 82578DC 유선랜 인식시키기 [1] file [레벨:15]id: ilove_u 2012.03.17 10480 0
60 Fusion Drive의 개념 및 산사자 설치하기 [6] file [레벨:15]id: ilove_u 2013.03.02 10963 0
59 JMicron 칩을 사용하는 보드(기가보드)에서 구형 IED/ATA CD/DVD 인식시키기 [1] file [레벨:15]id: ilove_u 2012.09.02 8026 0
58 AGPM 인식 시키기 [15] [레벨:3]mactopia 2013.02.02 9454 0
57 AppleIntelE1000e.kext 버전 2.5.4d( 9.25일 버전 ) [1] [레벨:12]뉴해킨 2013.11.04 6855 0
56 클로버 부트 환경에서 라데온 HD5770 적용사례 file [레벨:15]id: ilove_u 2013.09.21 7787 0
55 네이티브로 인식되는 Intel D33682 유선랜 서버카드 사용기 [3] file [레벨:15]id: ilove_u 2013.06.17 9196 0
54 Mac OS X & Windows 그래픽카드 온도비교 [1] file [레벨:7]sung-sung 2013.09.16 7173 0

Copyright © 2011-2017 sixflow.net All rights reserved.

ipv6 ready
ipv6 test