zxzhaohui
发表于 2011-3-20 22:01
回复 300# crazybirdy
呃,不好意思,没注意看。
节外生枝
发表于 2011-3-20 22:14
好吧, 我来叙述一下, 老大帮忙看看
Connector
Connector at index 0 type: VGA (1)
Connector's i2cid: 93
Connector at index 1 type: LVDS (7)
Connector's i2cid: 90
Connector at index 2 type: HDMI-A (11)
Connector's i2cid: 92
VGA :SenseLine = (93 & 0xf)+1 = 4
LVDS : SenseLine = (90 & 0xf)+1 = 1
HDMI-A: SenseLine = (92 & 0xf)+1 = 3
radeondump
: Mapping DIG2 encoder to KLDSKP_LVTMA
: Crtc: found native mode from Monitor:
: Modeline "1440x900"961440 1488 1520 1734900 903 909 926:
: Connector "PANEL" uses Monitor "LVDS Panel":
: RHDValidateScaledToMode
: rhdModeValidateCrtc
: DxModeValid: CRTC 1
: DigModeValid
: LVTMATransmitterModeValid
: EncoderModeValid
: Listing modesetting layout:
: CRTC 1: tied to PLL 1 and LUT A:
:
Outputs: UNIPHY_KLDSKP_LVTMA (PANEL):
: CRTC 2: unused
:
Unused Outputs: DAC A:
: RHDModesPoolCreate
: rhdCreateModesListAndValidate
: Validating Modes from Monitor "LVDS Panel" on "PANEL"
: rhdModeValidateCrtc
: FUNCTION: DxFBValid: CRTC 1
: rhdModeValidateCrtc
计算 personality
CRTC2>DAC >DACA >VGA Encoder = 0x10 Transmitter = 0x10
CRTC1>DIG2>LVTMA>LVDS Encoder = 0x01 Transmitter = 0x00
配合前面的Transmitter,Encoder,Port及SenseLine列入推算。
02 00 00 00 40 00 00 00 09 00 00 00 00 01 01 01LVDS
10 00 00 00 10 00 00 00 00 00 00 00 00 10 00 04VGA
00 08 00 00 00 02 00 00 00 00 00 00 00 01 02 03HDMI----没有显示器, 无法测试
然后 我用上面计算到的数字 替换 framebuffer 里的sharks—FB
测试了 所有的FB 均无法点亮显示屏
然后 我 改了personality 里的ATY,ControlFlags
02 00 00 00 40 00 00 00 09 00 00 00 00 01 01 01LVDS—改为—02 00 00 00 14 00 00 00 09 00 00 00 00 01 01 01LVDS
和 原framebuffer里 大多数的相同的ATY,ControlFlags, 然后 显示就点亮了
分辨, 显示参数, IOreg都是正常的, 一共加载了6个显示相关的KEXT, 3800control, framebuffer , atisupport都加载了, 但是X2000系列的都没有加载, 没有QE/CI。
很奇怪 ATY,ControlFlags 14 是DVI的连接 但是能正常输出
之后用这个02 00 00 00 40 00 00 00 09 00 00 00 00 01 01 01 替换了shark里的各个FB 配合 749 修改了FB的boot 以及变色龙的<key>GraphicsEnabler</key>
<string>Yes</string>
shark所有的FB都可以调整分辨加载6个驱动, 但是X2000系列的不能加载。
以上是使用10.6.6 升级的驱动, 之后开始修改MBP2011随机盘的Framebuffer, 那里的FB参数有变化, 基本上是port的变化,和Lion的驱动相近。
各个版本的FB试用了, 结果最好都是做到加载上述的6个驱动, QE/CI无法加载
然后又交换使用了各个版本的x2000, 有的花屏, 有的没显示。
现在极度怀疑 3xxx 系列的personality的参数定义和4xxx的不一样
另外对于LVTMA的Transmitter和Encoder 也持怀疑态度。
最悲观的是X2000 系列 根本没有提供LVTMA的驱动支持,所以 3450会永远无解, 现在想知道3870的驱动方式
在MBP的3800control 驱动里直接整合了FB, 那里只有Megalodon和Triakis 两个FB,这两个FB 我使用了各种办法都还是没成功。
请 老大指教一下吧。。。。。。
crazybirdy
发表于 2011-3-20 22:26
回复 302# 节外生枝
这个地方貌似怪怪的,都要用INTERNAL的才是,是笔误吗?你看5楼,我用Linux弄出来的也都是INTERNAL。其他地方看起来是按 mucha 的 rule 没错咧~
02 00 00 00 40 00 00 00 09 01 00 00 00 01 01 01LVDS
10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 04VGA
00 08 00 00 00 02 00 00 00 01 00 00 00 01 02 03HDMI----没有显示器, 无法测试
节外生枝
发表于 2011-3-20 22:36
回复 5# crazybirdy
ubuntu 下 也取得了 encode的信息 23.020] (II) RADEON(0): Output VGA-0 has no monitor section
[ 23.020] (II) RADEON(0): I2C bus "VGA-0" initialized.
[ 23.020] (II) RADEON(0): Output LVDS has no monitor section
[ 23.020] (II) RADEON(0): I2C bus "LVDS" initialized.
[ 23.020] (II) RADEON(0): Output HDMI-0 has no monitor section
[ 23.020] (II) RADEON(0): I2C bus "HDMI-0" initialized.
[ 23.020] (II) RADEON(0): Port0:
[ 23.020] XRANDR name: VGA-0
[ 23.020] Connector: VGA
[ 23.020] CRT1: INTERNAL_KLDSCP_DAC1
[ 23.020] DDC reg: 0x7e20
[ 23.020] (II) RADEON(0): Port1:
[ 23.020] XRANDR name: LVDS
[ 23.020] Connector: LVDS
[ 23.020] LCD1: INTERNAL_KLDSCP_LVTMA
[ 23.020] DDC reg: 0x7e40
[ 23.020] (II) RADEON(0): Port2:
[ 23.020] XRANDR name: HDMI-0
[ 23.020] Connector: HDMI-A
[ 23.020] DFP1: INTERNAL_UNIPHY
[ 23.020] DDC reg: 0x7e60
但是 关于 LVTMA的 Transmitter还是不确切
节外生枝
发表于 2011-3-20 22:38
02 00 00 00 40 00 00 00 09 01 00 00 00 01 01 01LVDS有01的话 黑屏, 没有0的话一切正常, shark原生FB 里也没有01, 全部都是00
所以我怀疑3xxx FB的定义有所不同
节外生枝
发表于 2011-3-20 22:46
我的显示器 显示为内建了
http://my.jetscreenshot.com/demo/m_20110320-6frj-98kb.jpg
http://my.jetscreenshot.com/demo/m_20110320-vvnc-105kb.jpg
http://my.jetscreenshot.com/demo/m_20110320-3eea-154kb.jpg
crazybirdy
发表于 2011-3-20 22:47
回复 305# 节外生枝
你也可以取5楼A2-3的Xorg.0.log更详细,我还没时间仔细看,说不定有帮助
我看Sharks是全部00没错,按musha的rule看来是不适用你的3450m,可能要用kizwan更困难,麻烦的方法了
我再研究看看,有结果再跟你讨论下
crazybirdy
发表于 2011-3-20 22:50
本帖最后由 crazybirdy 于 2011-3-20 22:54 编辑
恩,X2000系列没上,只有挂上一半的驱动,要查一下X2000有没有必要做patch呢
--- 你已经查看Xorg.0.log 了
节外生枝
发表于 2011-3-20 22:54
X2000里我查了,发现有c4950000的3450m的code, 就是不知道是属于支持呢, 还是属于不支持 呵呵
EricGuo
发表于 2011-3-20 22:54
请教下楼主!!
02 00 00 00 40 00 00 00 09 01 00 00 12 00 00 07LVDS
10 00 00 00 10 00 00 00 00 01 00 00 00 10 01 01VGA
02 00 00 00 40 00 00 00 09 01 00 00
10 00 00 00 10 00 00 00 00 01 00 00这段数字是不是不变的?
没办法加载RadeonHD.kext这是UBUNTU的ENCODER
[ 4.730224] Radeon Display Connectors
[ 4.730227] Connector 0:
[ 4.730228] VGA
[ 4.730231] DDC: 0x7e40 0x7e40 0x7e44 0x7e44 0x7e48 0x7e48 0x7e4c 0x7e4c
[ 4.730233] Encoders:
[ 4.730234] CRT1: INTERNAL_KLDSCP_DAC1
[ 4.730236] Connector 1:
[ 4.730237] LVDS
[ 4.730240] DDC: 0x7f68 0x7f68 0x7f6c 0x7f6c 0x7f70 0x7f70 0x7f74 0x7f74
[ 4.730241] Encoders:
[ 4.730243] LCD1: INTERNAL_UNIPHY2
[ 4.730245] Connector 2:
[ 4.730246] HDMI-A
[ 4.730247] HPD1
[ 4.730250] DDC: 0x7e50 0x7e50 0x7e54 0x7e54 0x7e58 0x7e58 0x7e5c 0x7e5c
[ 4.730251] Encoders:
[ 4.730253] DFP1: INTERNAL_UNIPHY
[ 4.790097] radeon: power management initialized
[ 4.871804] fb mappable at 0x80141000
[ 4.871806] vram apper at 0x80000000
还有ATOM BIOS Rom:
SubsystemVendorID: 0x103c SubsystemID: 0x7016
IOBaseAddress: 0x7000
Filename: BR033291.001
BIOS Bootup Message:
BR033291.001 M92 DDR2 64bit 450e/500m
Connector at index 0 type: VGA (1)
Connector's i2cid: 90
Connector at index 1 type: LVDS (7)
Connector's i2cid: 96
Connector at index 2 type: HDMI-A (11)
Connector's i2cid: 91
如果我只要LVDS是不是只要改第二行的数值?第二行改成这样对不
10 00 00 00 10 00 00 00 00 01 00 00 22 00 01 07
试了很多个数值都是黑屏...HP4311S 4330,有点绝望..,
crazybirdy
发表于 2011-3-20 22:57
回复 309# 节外生枝
像我的4330m以前没开QE的时候,x2000一定都会驱动挂上,只是ATI4600挂不上,你的是相反的。要查找一下原因
crazybirdy
发表于 2011-3-20 23:05
回复 310# EricGuo
02 00 00 00 40 00 00 00 09 01 00 00 12 00 01 07LVDS
10 00 00 00 10 00 00 00 00 01 00 00 00 10 00 01VGA
00 08 00 00 00 02 00 00 00 01 00 00 10 01 02 02HDMI
参考下除了Transmitter,Encoder,最好用RadeonHD.kext,4330可以载入的,只是可能会花屏,可以用盲打,5楼A2-1
因为Ubuntu的值还没有很确定要慢慢测试Transmitter,Encoder。
UNIPHY2 可能是以下三种之一
#define UNIPHY_E 0x12 // = UNIPHY_2:LINK_A
#define UNIPHY_F 0x22 // = UNIPHY_2:LINK_B
#define UNIPHY_EF 0x02 // = UNIPHY_2:DUAL_LINK
UNIPHY 可能是以下三种之一
#define UNIPHY_A 0x10 // = UNIPHY:LINK_A
#define UNIPHY_B 0x20 // = UNIPHY:LINK_B
#define UNIPHY_AB 0x00 // = UNIPHY:DUAL_LINK
EricGuo
发表于 2011-3-20 23:22
回复 312# crazybirdy
哈哈太感谢楼主了!!
成功了,原来我一直在走一个误区,就是把LVDS放到第二行了!!楼主你太神了,实在是太感谢了!!终于可以好好用用黑苹果了!!
有HP4411或4311的同学可以按照楼主给的数值改!
crazybirdy
发表于 2011-3-20 23:26
回复 313# EricGuo
恭喜加入绿苹果行列....{:5_296:}
EricGuo
发表于 2011-3-20 23:32
回复 314# crazybirdy
显卡驱动了,整个系统变得好快,本来是一卡一卡的,现在用起来那个叫流畅!!哈哈在PC用上苹果系统是我一直的梦想这个是06年的,记得那时候还是GHOST安装上的,那个叫激动...
crazybirdy
发表于 2011-3-20 23:34
本帖最后由 crazybirdy 于 2011-3-20 23:36 编辑
回复 315# EricGuo
算你狠,你是用10.6.6的kext用在10.4.3阿? 怎不升级10.6.6呢
我们是绿苹果,你是蓝苹果,哈哈~
内存256MB,算你有耐心
EricGuo
发表于 2011-3-20 23:40
本帖最后由 EricGuo 于 2011-3-20 23:43 编辑
回复 316# crazybirdy
不是拉呵呵你误解了,那个是06年时候的电脑安装的.只不过是那时的激动就像现在的一样,现在的是HP4311
dengmiao66
发表于 2011-3-20 23:43
对不起,您的PB币不足(小于 0 )
dengmiao66
发表于 2011-3-20 23:43
我的ATI mobility radeon hd3470看来是彻彻底底的杯具了啊
crazybirdy
发表于 2011-3-20 23:46
回复 317# EricGuo
那就真的是恭喜了
跟我前几天驱动QE的时候一样兴奋 ..赞..绿苹果