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的时候一样兴奋 ..赞..绿苹果
页: 6 7 8 9 10 11 12 13 14 15 [16] 17 18 19 20 21 22 23 24 25
查看完整版本: 发图庆祝ATI Mobility HD 4330 终于开QE/CI 及ATIFramebuffer修改解说