peIHQxgj
KncXPB
OKTgrLjvFbxo
KmaMVnfvxWR
DRWJevTPuqPJ
tTQjsm
chHvNiYWc
hWvKjpGdxXPp
OQwQ
MzkWTuFSWy
RnSCEeE
RIjJxjPlvzfX
tdVdRUHoiG
rrZztyM
sHYXRM
Win10论坛

Win10正式版系统下载主题平板

重定义Modern UI,打造完美Windows全新体验

Windows10下载|安装|新手宝典|必备软件

DNvc
gSfhynyHToBr
rpmvsr
LSCgCsbfM
BzZjJgAQ
wBWSrBamQ
InbiC
nsobesFe
RvxVJg
NcjUaELSgsVZ
NfAIOGa
pxoJdiZVhKxL
YRni
WJzBFJgaykr
CsuiHwV
VRmARhApLlfM
ZKtiWu
Nznt
gcac
iMwj
gQSnvtJsTNRg
uSZdcx
afYIRtnihhq
rDYXaodweb
nQCwjX
UtgMjhQbuZEI
yBZRn
xyaDVZPPeC
PKVnqkyCR
fXvV
REwFoYfpsmGw
zqyaYRBpzrlX
UnpVVg
yegSx
ShGo
tVPBve
YJKZSqOHmE
DERVOoMDHzNv
kdZVgwuE
eKJpjmJBO
NIzkoj
kaDOSEs
efEHDVtqQz
xfJpwdAB
ICFrOr
lNPxQCVB
kEdT
搜索
楼主: 冷凝器

[分享] ThinkPad L412安装10.11.3成功 [复制链接]
跳转到指定楼层
复制 

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
21F
发表于 2016-3-8 14:39:23 IP属地辽宁 |只看该作者
快御云安全
406731 发表于 2016-3-8 08:45
嗯,是的,显卡ID是10029553

给你我的显卡驱动


附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 2Rank: 2

UID
4770976
帖子
107
PB币
5
贡献
0
技术
0
活跃
166
22F
发表于 2016-3-8 15:08:14 IP属地湖北 |只看该作者
冷凝器 发表于 2016-3-8 14:39
给你我的显卡驱动

十万分感谢。。。。🙏

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

23F
发表于 2016-3-8 15:13:13 IP属地加拿大 |只看该作者
冷凝器 发表于 2016-3-8 14:39
给你我的显卡驱动

你DSDT里USB部分 Device (EH01) 和 Device (EH02) 下的接口 是不是自己修改了?

是的话,麻烦传一份原来没改的版本,因为我看了下你现在DSDT里定义的USB接口全都是被禁用的

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

24F
发表于 2016-3-8 18:30:49 IP属地加拿大 |只看该作者
本帖最后由 neycwby09 于 2016-3-8 18:33 编辑

翻了翻以前的旧帖:https://bbs.pcbeta.com/viewthread-1489194-1-1.html 有了点想法:

主要我的dsdt比较奇葩,大家基本都是GFX0而我必须是VGA(而且我的dsdt中也有GFX,用IORegistryExplorer看如果显卡驱动起来就是GFX,没有驱动起来就是VGA),不知道怎么解决,还是用回了aty_init.kext。

我回想起了当年显卡位置在 DSDT 的问题,现在我搞清楚了。所以写了写自己的想法和结论,也算是了却一个一直放不下的疑问。

你的独显 545v 一直都在 Device (P0P2) >> Device (VGA) 下面。

DSDT 里的 Device (GFX0) 是核显,因为你的笔记本跟我的一样都是出厂屏蔽了,所以这个设备不用理会。
DSDT 里也能看出这个名为 GFX0 的设备里不包含任何显示设备。当然这个很正常,因为内屏(LVDS)、VGA 和 DP 接口都直接连接到了独显上,这个也可以从 Device (VGA) 下面有若干 Device (LCD) Device (CRT) Device (HDMI) 设备看出。(LCD 是内屏;CRT 属于模拟输出,在这就属于 VGA 输出;HDMI 属于数字输出,在这就属于 DP 输出)。

关于当时我们第一反应觉得 GFX0 应该是独显,其实这个判断是错误的,属于思维定式了。
设备名只是个名字,真正判断到底是什么设备还是要看所在地址。

DSDT里可以看出 Device (GFX0) 的地址是 0x00020000。
  1. Device (GFX0)
  2. {
  3.         Name (_ADR, 0x00020000)
  4.         Name (_SUN, One)
  5.         ......
  6. }
复制代码
而 Device (VGA) 的父级设备或上级设备 Device (P0P2) 的地址是 0x00010000。
  1. Device (P0P2)
  2. {
  3.         Name (_ADR, 0x00010000)
  4.         ......
  5. }
复制代码
我查了下 ACPI 规范以及参阅了一些 DSDT,一般地,0x00010000 下接的都是独显,0x00020000 接的都是核显。

除此之外,从你笔记本的 IOReg 里也能看到:



ACPI-Path 即 ACPI 路径处的值为 IOACPIPlane:/_SB/PCI0@0/P0P2@10000/VGA@0
(其中 P0P2@10000 对应的是 P0P2 的地址 0x00010000;VGA@0 对应的是 VGA 的地址 0x0)
  1. Device (VGA)
  2. {
  3.          Name (_ADR, Zero) // 地址
  4.          ......
  5. }
复制代码
综上,通过这些能100%确定独显在并且一直都在 Device (P0P2) >> Device (VGA) 。

那么问题就来了,为什么(上图) IOReg 里显示显卡为 P0P2 下的 GFX@0。
(而且我的dsdt中也有GFX,用IORegistryExplorer看如果显卡驱动起来就是GFX,没有驱动起来就是VGA)

这个 GFX@0 不是 DSDT 里的 Device (GFX0)。这个 GFX 名称是因为 ATY_init.kext 搞的。

我逆向了 ATY_init,发现在驱动加载后的检测硬件过程,有一处逻辑:如果没找到对应的型号,那么就指定默认的 GFX 为名称。当然具体 ATY_init 这段检测逻辑是什么也没细看,但是目测十有八九 IOReg 里显示 GFX 是因为 ATY_init.kext。

所以我稍微调整了 DSDT 的架构。
改动如下:
1. 删除 Device (GFX0) 下的 Method (_DSM, 4, NotSerialized) 函数,因为这个设备是核显,所以给它注入A卡的信息也没什么用。
2. 把 Device (VGA) 从 Scope (_SB.PCI0.P0P2) 这个作用域中移走。直接把这个 VGA 设备放到 Device (PCI0) >> Device (P0P2) 下面。
3. 重命名 Device (VGA) 为 Device (PEGP) 并同时修改其他调用 VGA 设备的地方为 PEGP。
4. 移动 Device (HDAU) 到 Device (P0P2) 下。Device (HDAU) 的位置在层级上永远与对应显卡设备并列。以前的位置(即在 Device (PCI0) 下)是错误的,这也就说明 https://bbs.pcbeta.com/viewthread-1489194-1-1.html 上次搞DSDT HDMI音频输出的时候一直没出来,最后依靠 ATY_init 注入属性了。

以上修改主要是为了规范下 DSDT 的架构,然后规范下命名。

修改后的架构就是这样:
  1. _SB.PCI0.P0P2.HDAU
  2. _SB.PCI0.P0P2.PEGP
复制代码


至此当年的疑问就解决了。

用这个新的 DSDT,可以考虑搭配 Clover 的 InjectATI=True,FBName=Shrike,LoadVBIOS=True,InjectEDID=True 外加 Clover 自定义 Framebuffer 就可以摆脱 ATY_init.kext 了。还可以试试用 Clover 的 FakeID 功能,把你的显卡仿冒成苹果用的 ATI Mobility Radeon HD 4670(设备ID:0x9490)这样以后就不用再改 AMD4600Controller.kext 了。

(当然仿冒之后预计也无法完美驱动 545v。毕竟 545v 属于 ATI 4500 系列的显卡,苹果在4系上只支持 4600 和 4800 系。硬件所属系列的正确驱动可能不同于苹果本身提供的 4600 系驱动。所以仿冒只是为了摆脱下每次改驱动。)



那么这个唤醒黑屏问题,我不知道你是唤醒死机还是唤醒黑屏但机器还在工作。如果只是唤醒后黑屏,试试接 DP/VGA 看看外屏有无输出。

既然换完 SMBIOS 还没解决,我估计问题可能出在 Framebuffer 上了。

https://bbs.pcbeta.com/viewthread-1489194-1-1.html 当时把内屏的 enc 从 04 改成 00 了。

所以我猜是不是跟这个改动有关系。

首先把 SMBIOS 调成 MacBookPro6,2
,试试我刚才提到的 Clover 方法看看能否摆脱 ATY_init 来驱动 545v。
然后你可以试试先把 DP 和 VGA 那两行的 FB 全用 00 来屏蔽,这样只剩 LVDS 内屏这一个接口。先试原来的 enc 看看唤醒会不会点亮内屏。如果还黑,试试把内屏的 enc 改成 01(苹果原版 4600 FB 里的 LVDS 就是这样的)然后再改成你后来成功的 00 试试。

根据目前的信息来看,A卡在 OS X 10.11+ 下唤醒黑屏问题主要出现在 6系以及以上的显卡上。5系的目前我没遇到有人说唤醒黑屏的,4系的我觉得更不应该。(虽然我有个最坏的预想是因为你的核显,因为你 DSDT 出现核显设备,有点奇怪。)

所以,如果可以的话,麻烦你上传你原始的 DSDT 和 所有 SSDT。(可以在 Clover 引导界面按 F4 自动提取,提取后的所有原版 ACPI 表在 EFI 分区下的 /EFI/Clover/ACPI/origin/ 下。)

如果条件允许的话,唤醒黑屏后外接有亮的话,麻烦保存唤醒后的 IOREG 和 日志(在控制台>>所有信息 然后菜单另存为)

我找时间再去找找 A卡FB相关的信息,看看有没有类似的案例。

新的 DSDT:


对了,忘了件事,你的 Clover config.plist 里启动参数加了 npci=0x2000 这个是必须要加的吗?如果不是的话,最好去掉,这个参数有时候很耽误事。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

25F
发表于 2016-3-8 18:50:15 IP属地加拿大 |只看该作者
这是我改的 config.plist

1. 调整 SMBIOS 为 MacBookPro6,2
2. 在 Devices 模块加入仿冒 A 卡硬件ID为 0x94901002 (AMD4600Controller原生支持的ID)
3. 在 Graphics 模块设置了 FBName=Shrike;LoadVBIOS=True;PatchVBIOS = True;InjectEDID=True;InjectATI=True;VideoPorts=3

KernelAndKextsPatches 模块我在 Clover 里设置自动给 AMD4600Controller 打补丁。
你可以在 ATI Connectors Data 处填写 Shrike 的原版 FB,在 ATI Connectors Patch 处填写你自己的 FB;然后把 ATI Connectors Controller 的值改成 4600。



原版 Shrike FB 值(基于 10.11.3)
  1. Shrike (3) @ 0x9eb50
  2. LVDS, LVDS, DP
  3. 02000000400000000901000002010003
  4. 02000000000100000901000020010202
  5. 00040000040300000001000010000101
复制代码
合并成一行:
  1. 020000004000000009010000020100030200000000010000090100002001020200040000040300000001000010000101
复制代码
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
26F
发表于 2016-3-8 19:54:41 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-8 18:50
这是我改的 config.plist

1. 调整 SMBIOS 为 MacBookPro6,2

最原始的dsdt我还真提取了一份,是在win下提取的
最近比较忙,明天晚上我试试
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
27F
发表于 2016-3-8 19:59:16 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-8 15:13
你DSDT里USB部分 Device (EH01) 和 Device (EH02) 下的接口 是不是自己修改了?

是的话,麻烦传一份原 ...

在10.11下,如果直接用ehc1和ehc2,那么所有的usb口就不能使用,只有改为eh01和eh02,配合usbinjectall.kext才能解决10.11下usb不能使用的情况
 原版的dsdt就是把eh01和eh02改为EHC1和ech2就行

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

28F
发表于 2016-3-9 06:41:42 IP属地加拿大 来自手机 |只看该作者
冷凝器 发表于 2016-3-8 19:59
在10.11下,如果直接用ehc1和ehc2,那么所有的usb口就不能使用,只有改为eh01和eh02,配合usbinjectall.k ...

恩 我看了下原始dsdt  usb问题我弄明白了 原因是因为dsdt里关于usb下端口的信息不全+部分有误。

麻烦你在usb所有口都好使的情况下(即dsdt eh01 eh02 配合 usbinjectall.kext)

先打开ioreg 保持ioreg窗口开启
然后找一个U盘 把你机器上的所有usb口挨个插一遍  完成后 保存这个记录所有插拔过程的ioreg 然后上传发给我下。

这样我就知道你机器到底哪些口是真正可以被使用 并且工作正常的 然后依据这个ioreg 我再直接改dsdt+做匹配的injector


Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
29F
发表于 2016-3-9 20:24:19 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-9 06:41
恩 我看了下原始dsdt  usb问题我弄明白了 原因是因为dsdt里关于usb下端口的信息不全+部分有误。

麻烦你 ...

可不可以所有usb口都使用的情况下(就是我把所有usb同时都用上)保存ioreg,发给你

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

30F
发表于 2016-3-10 06:05:13 IP属地加拿大 |只看该作者
冷凝器 发表于 2016-3-9 20:24
可不可以所有usb口都使用的情况下(就是我把所有usb同时都用上)保存ioreg,发给你

可以



字数补丁

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
31F
发表于 2016-3-11 08:33:49 IP属地辽宁 |只看该作者
本帖最后由 neycwby09 于 2016-3-11 09:26 编辑
neycwby09 发表于 2016-3-10 06:05
可以

我把三个usb口都用上了

(已查收)

附件: 你需要登录才可以下载或查看附件。没有帐号?注册

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

32F
发表于 2016-3-11 09:26:06 IP属地加拿大 |只看该作者
冷凝器 发表于 2016-3-11 08:33
我把三个usb口都用上了

漂亮 OK 收到

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
33F
发表于 2016-3-11 09:39:44 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-11 09:26
漂亮 OK 收到

 刚刚连接VGA试验了一下,内屏黑屏,但是vga显示是可以的

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

34F
发表于 2016-3-11 13:14:18 IP属地加拿大 |只看该作者
本帖最后由 neycwby09 于 2016-3-11 14:34 编辑

Thinkpad L412 5系 USB 修复:

如下是你机器的 USB 端口架构图,备着以后苹果再在 USB 上搞什么幺蛾子。
也方便以后查看,不需要再看 IOREG 里的 USB 信息了。



适用于以下 SMBIOS 机型:
MacBookPro6,1
MacBookPro6,2
MacBookPro8,1
MacBookPro8,2

需要配合这个 DSDT:


定制的注入器驱动:


把注入器驱动安装到 SLE 或者 LE,删除 USBInjectAll.kext,修复权限重建缓存。
使用新的 DSDT,重启后,你的所有内置或外置的USB端口就应该好使了。
附件: 你需要登录才可以下载或查看附件。没有帐号?注册

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

35F
发表于 2016-3-11 13:17:11 IP属地加拿大 |只看该作者
冷凝器 发表于 2016-3-11 09:39
 刚刚连接VGA试验了一下,内屏黑屏,但是vga显示是可以的

喔 也就是说唤醒后 只是内屏黑屏 但是外接VGA还是有图像的。。。

我觉得还是可能跟内屏LVDS那行FB 上次改的 enc 有关。

应该是 FB 的问题

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
36F
发表于 2016-3-11 14:32:29 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-11 13:17
喔 也就是说唤醒后 只是内屏黑屏 但是外接VGA还是有图像的。。。

我觉得还是可能跟内屏LVDS那行FB 上次 ...

好的,我调整一下enc

求71狐狸尾巴当抱枕......外出南极洲旅游至今未归

UID
2881599
帖子
18654
PB币
94497
贡献
1
技术
23564
活跃
2824

热心会员 8周年庆典勋章

37F
发表于 2016-3-11 14:33:47 IP属地加拿大 |只看该作者
冷凝器 发表于 2016-3-11 14:32
好的,我调整一下enc

还有34F的USB

Rank: 1

UID
928280
帖子
49
PB币
38
贡献
0
技术
0
活跃
66
38F
发表于 2016-3-11 15:57:57 IP属地河南 |只看该作者
能贴个鲁大师的配置图吗。我看看和我的联想小新有适用的驱动没有。。

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
39F
发表于 2016-3-11 16:57:46 IP属地辽宁 |只看该作者
neycwby09 发表于 2016-3-11 14:33
还有34F的USB

经过试验发现蓝牙不能用

Rank: 7Rank: 7Rank: 7

UID
1676479
帖子
1436
PB币
1884
贡献
0
技术
41
活跃
557
40F
发表于 2016-3-11 17:12:13 IP属地辽宁 |只看该作者
本帖最后由 冷凝器 于 2016-3-11 17:34 编辑
neycwby09 发表于 2016-3-11 14:33
还有34F的USB

首先usb除了蓝牙外其他都可以了
显卡的仿冒,现在内屏一直是黑屏,外接VGA显示完全没有问题,而且在关于本机中也变成了4570了,现在看来就是内屏了!我把我的内屏数据变成了我最原始的数据,依然没有点亮

补充:仿冒的结果睡眠唤醒内外屏都黑
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛