全哥1993 发表于 2018-9-15 20:49

关于ACER E5 572G (57dw)dsdt 问题


关于dsdt中显卡部分的问题

说出问题之前先上配置信息:
   机型:ACER E5 572G 57DW
    CPU:Intel Core i5 4210M
   显 卡:Intel HD Graphics 4600
               nVIDIA GeForce 840M
    声卡:ALC 283
    网卡:Realtek RTL 8111
               BCM94352hmb


一、我初始dsdt里没有核显和独显的数据描述部分,是我从ssdt里挪过来的,起初只将

[*]      Device (IGPU)
[*]         {
[*]            Name (_ADR, 0x00020000)// _ADR: Address
[*]               }
       挪过来的时候,无论是否含有独显屏蔽补丁,独显都屏蔽失效,没挪过来之前,独显屏蔽有效;
       而后我再将独显部分的描述代码挪过来的时候,发现独显屏蔽生效,挪过来的部分代码如下:

[*]Name (LTRS, Zero)
[*]      Name (OBFS, Zero)
[*]      Device (PEG0)
[*]      {
[*]            Name (_ADR, 0x00010000)// _ADR: Address
[*]            OperationRegion (PEGR, PCI_Config, 0xC0, 0x30)
[*]            Field (PEGR, DWordAcc, NoLock, Preserve)
[*]            {
[*]                Offset (0x02),
[*]                PSTS,   1,
[*]                Offset (0x2C),
[*]                GENG,   1,
[*]                  ,   1,
[*]                PMEG,   1
[*]            }
[*]

[*]            Device (PEGP)
[*]            {
[*]                Name (_ADR, Zero)// _ADR: Address
[*]                Method (_PRW, 0, NotSerialized)// _PRW: Power Resources for Wake
[*]                {
[*]                  Return (GPRW (0x09, 0x04))
[*]                }
[*]            }
[*]      }



二、当我再注入核显参数时发现:无论有无独显屏蔽补丁,独显都屏蔽失效;注入的信息是以下蓝色字体:

[*]Device (IGPU)
[*]      {
[*]            Name (_ADR, 0x00020000)// _ADR: Address
[*]          Method (_DSM, 4, NotSerialized)// _DSM: Device-Specific Method
[*]            {
[*]                If (LEqual (Arg2, Zero))
[*]                {
[*]                  Return (Buffer (One)
[*]                  {
[*]                         0x03                                          
[*]                  })
[*]                }
[*]

[*]                Return (Package (0x0A)
[*]                {
[*]                  "AAPL,slot-name",
[*]                  Buffer (0x10)
[*]                  {
[*]                        "PCI Express 3.0"
[*]                  },
[*]

[*]                  "Built-In",
[*]                  Buffer (0x03)
[*]                  {
[*]                        "00"
[*]                  },
[*]

[*]                  "name",
[*]                  Buffer (0x22)
[*]                  {
[*]                        "Intel HD Graphics 4600 Controller"
[*]                  },
[*]

[*]                  "model",
[*]                  Buffer (0x17)
[*]                  {
[*]                        "Intel HD Graphics 4600"
[*]                  },
[*]

[*]                  "device_type",
[*]                  Buffer (0x0F)
[*]                  {
[*]                        "VGA Controller"
[*]                  }
[*]                })
[*]            }
[*]      }


三、最后我再注入独显信息的时候发现,无论有无独显屏蔽补丁,独显都能屏蔽,注入的代码如下蓝色字体:

[*]Device (PEGP)
[*]            {
[*]                Name (_ADR, Zero)// _ADR: Address
[*]                Method (_PRW, 0, NotSerialized)// _PRW: Power Resources for Wake
[*]                {
[*]                  Return (GPRW (0x09, 0x04))
[*]                }
[*]

[*]                Method (_DSM, 4, NotSerialized)// _DSM: Device-Specific Method
[*]                {
[*]                  If (LEqual (Arg2, Zero))
[*]                  {
[*]                        Return (Buffer (One)
[*]                        {
[*]                           0x03                                          
[*]                        })
[*]                  }
[*]

[*]                  Return (Package (0x0A)
[*]                  {
[*]                        "AAPL,slot-name",
[*]                        Buffer (0x13)
[*]                        {
[*]                            "PCI Express 3.0 x4"
[*]                        },
[*]

[*]                        "Built-In",
[*]                        Buffer (0x03)
[*]                        {
[*]                            "00"
[*]                        },
[*]

[*]                        "name",
[*]                        Buffer (0x1F)
[*]                        {
[*]                            "nVIDIA GeForce 840M Controller"
[*]                        },
[*]

[*]                        "model",
[*]                        Buffer (0x29)
[*]                        {
[*]                            "nVIDIA GeForce 840M (Acer) Video Adapter"
[*]                        },
[*]

[*]                        "device_type",
[*]                        Buffer (0x10)
[*]                        {
[*]                            "HDMI Controller"
[*]                        }
[*]                  })
[*]                }
[*]            }


四、独显屏蔽补丁如下:

[*]Device (RMD1)
[*]    {
[*]      Name (_HID, "RMD10000")// _HID: Hardware ID
[*]      Method (_INI, 0, NotSerialized)// _INI: Initialize
[*]      {
[*]            If (CondRefOf (\_SB.PCI0.PEG0.PEGP._OFF))
[*]            {
[*]                \_SB.PCI0.PEG0.PEGP._OFF ()
[*]            }
[*]      }
[*]    }


五、效果图:
1、dsdt部分效果图


2、Mac下系统报告效果图:


六、想问问大佬们一下这是什么原理?
另外付上最终dsdt


老牛吃草 发表于 2020-8-8 18:22

大佬 你的触摸板正常不
页: [1]
查看完整版本: 关于ACER E5 572G (57dw)dsdt 问题