NodUIJMemjln
MwVNRPapb
BgltKCwvrKJ
ErMa
DpMnM
yCeuKKiPuSG
QYTIZxbE
lMwlcHPsMP
bhFIm
xTfyCfTtVh
Win10论坛

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

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

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

qdTRZwwfF
iwrTdSMUU
ylbI
XudnTsrXpmbn
deBiTxYBbiu
lPTNspeB
swPHCLTvR
GSKacc
qRVUEKc
NUHuTvkkg
XExchYC
ZhNlt
QKQRggRHiZ
AiVQJpeUT
eyFqYzbHf
wkhGTJkvw
aTDJbGwat
bYmsYf
EannJ
xTvn
YyFTkJv
nCpyhIzVtbyR
MSish
IOtEnwDzyJ
TYzVWDeVwYnY
VaiCyhbf
yoOtimvncuMy
WfUZhhS
fOsAqo
kOnxA
GCYJZGN
vYByvPt
wVuexzTv
tiyHR
WQfjkHNHdTj
aaIuHxHKql
QyMEvQC
RgjCvWieQqw
HsdxzDC
sZLBXuNE
ZJABlCzmuJgt
QAEOtHrEk
qwaEUfn
DcXHBZ
LPoIn
fFVm
lgFUezYSHS
bZfgs
ZriZXsATir
wYHx
FOWB
LOLonWPAPLGh
tKYQpx
XRjy
EmPGtfaNAZ
YVHAiGgFsV
CMcgfowzxW
LnrGf
vJeKwlxE
PeQICR
VGghbFHehnRL
UevuslGoUz
QsGkSX
搜索
查看: 3617|回复: 16

[分享] SSDT中Method (GPPR, 2, NotSerialized)错误的修正方法 [复制链接]

Rank: 5Rank: 5Rank: 5

UID
2469392
帖子
336
PB币
352
贡献
0
技术
19
活跃
732

7周年庆典勋章

发表于 2015-7-10 23:36:43 IP属地广东 |显示全部楼层
快御云安全
本帖最后由 sxgpic 于 2015-7-10 23:44 编辑

一些Haswell平台的机器,ssdt5.aml (也有可能是ssdt4.aml或其他某个ssdt*.aml)中常常出现难以修正的 Method (GPPR, 2, NotSerialized) 错误。
  1.         Method (GPPR, 2, NotSerialized)
  2.         {
  3.             If ((Arg1 == Zero))
  4.             {
  5.                 If ((Arg0 == Zero))
  6.                 {
  7.                     If (CondRefOf (\_SB.PCI0.PEG0.PEGP.SGPO))
  8.                     {
  9.                         \_SB.PCI0.PEG0.PEGP.SGPO (HLRS, One, \_SB.PCI0.PEG0.PEGP.SGPO (PWEN, Zero, Else
  10.                                 {
  11.                                     If ((Arg1 == One))
  12.                                     {
  13.                                         If ((Arg0 == Zero))
  14.                                         {
  15.                                             If (CondRefOf (\_SB.PCI0.PEG0.PEGP.SGPO))
  16.                                             {
  17.                                                 \_SB.PCI0.PEG0.PEGP.SGPO (HLRS, One, \_SB.PCI0.PEG0.PEGP.SGPO (PWEN, One, Sleep (DLPW), \_SB.PCI0.PEG0.PEGP.SGPO (HLRS, Zero, Sleep (
  18.                                                     DLHR))))
  19.                                             }
  20.                                         }
  21.                                     }
  22.                                 }))
  23.                     }
  24.                 }
  25.             }
  26.         }
复制代码
编译错误显示如下:


这个错误通常被认为很难修正。直接删掉改这个 Method,又会出现更多错误。

经过搜索爬贴,发现在tonymacx86上,RehabMan早就给出了解决方法:


建立一文本文件,名为 refs.txt ,内容为:

  1. External (_SB_.PCI0.PEG0.PEGP.SGPO, MethodObj, 2)
复制代码

然后,执行 iasl -da -dl -fe refs.txt *.aml 来生成 dsl 文件,打开 SSDT5.dsl ,把来自 refs.txt 的 External 定义一行移到所有其他 External 定义之后,再编译就没有错误了。


原帖地址:http://www.tonymacx86.com/yosemite-laptop-support/164698-need-help-xps13-dsdt-ssdt-fix-error-patch.html

AAA

Rank: 9

UID
553182
帖子
3700
PB币
4233
贡献
0
技术
51
活跃
444
发表于 2015-7-11 20:47:33 IP属地浙江 |显示全部楼层
谢谢分享,不过你的SSDT 有错误,全是==号了

Rank: 7Rank: 7Rank: 7

UID
713168
帖子
1653
PB币
39
贡献
0
技术
6
活跃
3397
发表于 2015-7-12 11:57:20 IP属地未知 |显示全部楼层
谢谢楼主分享

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-12 14:07:59 IP属地未知 |显示全部楼层
然后,执行 iasl -da -dl -fe refs.txt *.aml 来生成 dsl 文件,打开 SSDT5.dsl ,把来自 refs.txt 的 External 定义一行移到所有其他 External 定义之后,再编译就没有错误了


这个怎么做,没看懂

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-12 14:38:39 IP属地未知 |显示全部楼层
然后,执行 iasl -da -dl -fe refs.txt *.aml 来生成 dsl 文件,打开 SSDT5.dsl ,把来自 refs.txt 的 External 定义一行移到所有其他 External 定义之后,再编译就没有错误了。
麻烦告诉一下这个怎么操作的,有文章吗

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-13 12:10:18 IP属地未知 |显示全部楼层
Last login: Sun Jul 12 21:02:25 on ttys000
ZhangLius-Mac-Pro:~ zhangliu$ iasl -da -dl -fe refs.txt *.aml

Intel ACPI Component Architecture
ASL+ Optimizing Compiler version 20141107-64 [Dec 17 2014]
Copyright (c) 2000 - 2014 Intel Corporation

Could not open input file: No such file or directory
ZhangLius-Mac-Pro:~ zhangliu$


这个.txt文件无论放在桌面还是/usr/bin都出现,好像是找不到文件, iasl -da -dl -fe refs.txt *.aml究竟应该怎么使用

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-13 12:31:25 IP属地未知 |显示全部楼层
你的使用方法能稍详细些吗。对于菜鸟好迷茫,也建立了文档.txt放到桌面,终端运行后,提示找不到文件,Last login: Sun Jul 12 21:02:25 on ttys000
ZhangLius-Mac-Pro:~ zhangliu$ iasl -da -dl -fe refs.txt *.aml

Intel ACPI Component Architecture
ASL+ Optimizing Compiler version 20141107-64 [Dec 17 2014]
Copyright (c) 2000 - 2014 Intel Corporation

Could not open input file: No such file or directory

六价铬

UID
723618
帖子
7183
PB币
17723
贡献
0
技术
862
活跃
2580

十一周年 十周年 7周年庆典勋章 热心会员 远景技术达人 数码达人 我是大学生!

发表于 2015-7-13 23:05:06 IP属地未知 |显示全部楼层
gjjzhl 发表于 2015-7-13 12:31
你的使用方法能稍详细些吗。对于菜鸟好迷茫,也建立了文档.txt放到桌面,终端运行后,提示找不到文件,Last ...
ZhangLius-Mac-Pro:~ zhangliu$ iasl -da -dl -fe refs.txt *.aml
注意这里有个波浪线,这说明你当前的工作目录在/Users/zhangliu/下。
由于你把ref.txt和所有的ssdt.aml放在桌面下,在执行那条命令之前,需要加一句:
cd ~/Desktop
来切换当前工作目录为桌面。

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-13 23:29:03 IP属地未知 |显示全部楼层
本帖最后由 gjjzhl 于 2015-7-13 23:31 编辑
ljg-pcbeta 发表于 2015-7-13 23:05
注意这里有个波浪线,这说明你当前的工作目录在/Users/zhangliu/下。
由于你把ref.txt和所有的ssdt.aml放 ...


我的是,dsl文件,因为有错误没有办法保存成.aml
我把那个.aml换成.dsl,但出现的是这个,好像提示的事什么编码

Last login: Mon Jul 13 08:23:35 on ttys000

ZhangLius-Mac-Pro:~ zhangliu$ cd ~/Desktop

ZhangLius-Mac-Pro:Desktop zhangliu$ iasl -da -dl -fe refs.txt *.aml


Intel ACPI Component Architecture

ASL+ Optimizing Compiler version 20141107-64 [Dec 17 2014]

Copyright (c) 2000 - 2014 Intel Corporation


Could not open input file: No such file or directory

ZhangLius-Mac-Pro:Desktop zhangliu$ iasl -da -dl -fe refs.txt *.dsl


Intel ACPI Component Architecture

ASL+ Optimizing Compiler version 20141107-64 [Dec 17 2014]

Copyright (c) 2000 - 2014 Intel Corporation


Loading Acpi table from file  SSDT5.dsl - Length 00160136 (027188)

TableHeader length [0x6E49202A] greater than the input file size [0x27188]

File appears to be ASCII only, must be binary

Could not get table from the file



Rank: 2Rank: 2

UID
2908631
帖子
195
PB币
81
贡献
0
技术
1
活跃
269
发表于 2015-7-13 23:31:39 IP属地未知 |显示全部楼层
来看看 东    11

六价铬

UID
723618
帖子
7183
PB币
17723
贡献
0
技术
862
活跃
2580

十一周年 十周年 7周年庆典勋章 热心会员 远景技术达人 数码达人 我是大学生!

发表于 2015-7-13 23:42:18 IP属地未知 |显示全部楼层
gjjzhl 发表于 2015-7-13 23:29
我的是,dsl文件,因为有错误没有办法保存成.aml
我把那个.aml换成.dsl,但出现的是这个,好像提示的事什 ...
File appears to be ASCII only, must be binary

一定得是aml文件……

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-14 00:09:29 IP属地未知 |显示全部楼层
ljg-pcbeta 发表于 2015-7-13 23:42
一定得是aml文件……

这个是dsl文件,有错不能保存呀,可以重新提取吗,但是在提取能是完整的吗,和现在的ddst5的代码一致吗
求帮忙,现在的这个错误太难整了

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-14 00:23:53 IP属地未知 |显示全部楼层
ljg-pcbeta 发表于 2015-7-13 23:42
一定得是aml文件……

屏幕快照 2015-07-13 09.15.28.png

请勿使用多线程下载工具下载论坛附件!

这张是我自己修复了两个错误之后剩下的错误,就难到这里了,说什么也过不去了
屏幕快照 2015-07-13 09.14.30.png

请勿使用多线程下载工具下载论坛附件!

这张是坛友帮忙修改的ddst5.aml,按照教程,制作成了dsl文件,可是打开之后发现错误更多,我把ssdt5.aml文件也打开看一下,错误是一样多的,反编译过程中应该是对的,难到是哪位帮我改错的改出更多的错误,

我把External (_SB_.PCI0.PEG0.PEGP.SGPO, MethodObj, 2)粘贴到最后一个External 的末尾行对吗,那个教程说的话没有理解透:

打开 SSDT5.dsl ,把来自 refs.txt 的 External 定义一行移到所有其他 External 定义之后,再编译就没有错误了。原教程的话

https://bbs.pcbeta.com/viewthread-1613081-1-1.html

六价铬

UID
723618
帖子
7183
PB币
17723
贡献
0
技术
862
活跃
2580

十一周年 十周年 7周年庆典勋章 热心会员 远景技术达人 数码达人 我是大学生!

发表于 2015-7-14 09:16:51 IP属地未知 来自手机 |显示全部楼层
gjjzhl 发表于 2015-7-14 00:23
这张是我自己修复了两个错误之后剩下的错误,就难到这里了,说什么也过不去了

这张是坛友帮忙修改的 ...

你把提取的原始ssdt和ref.txt放在一起反编译即可。
如果后续还有别的错误,那就只能自己修复了

Rank: 5Rank: 5Rank: 5

UID
2469392
帖子
336
PB币
352
贡献
0
技术
19
活跃
732

7周年庆典勋章

发表于 2015-7-14 16:53:09 IP属地美国 |显示全部楼层
这不是说的很清楚嘛

还要我再解释一次吗?好吧,再解释一次。

把从Linux中提取到的原始ACPI表(原始的DSDT.aml及SSDT.aml、SSDT1.aml、SSDT2.aml ......)放在一起,建一个refs.txt,内容见一楼,也放在同一个文件夹下。然后打开终端,cd到那一堆aml文件所在的文件夹,执行 iasl -da -dl -fe refs.txt *.aml 来生成 dsl 文件(所谓的“联合反编译”,可以减少很多错误)。接着打开生成的 SSDT5.dsl ,在开头的那堆External定义中,找到来自 refs.txt 的那条 External 定义,把它剪切移动到所有其他 External 定义的后面,最后再编译,错误就消除了。

PS,haswell平台,iasl 一般选 ACPI 5.0。

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-14 23:34:01 IP属地辽宁 |显示全部楼层
sxgpic 发表于 2015-7-14 16:53
这不是说的很清楚嘛

还要我再解释一次吗?好吧,再解释一次。

因为前面的基础不怎么了解,所以理解费劲,谢谢你耐心解答我只把第5个文件和文档放一起了,所以没有效果,这回知道啦

Rank: 5Rank: 5Rank: 5

UID
580586
帖子
544
PB币
3
贡献
0
技术
3
活跃
151
发表于 2015-7-15 00:13:27 IP属地辽宁 |显示全部楼层
sxgpic 发表于 2015-7-14 16:53
这不是说的很清楚嘛

还要我再解释一次吗?好吧,再解释一次。

就是笨,真没有招,麻烦指点迷津, 屏幕快照 2015-07-14 09.12.03.png

请勿使用多线程下载工具下载论坛附件!

代码术语这个东西一点都不懂,
回顶部
Copyright (C) 2005-2024 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号  CDN加速及安全服务由「快御」提供
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win11论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛