Win10论坛

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

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

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

搜索
楼主: penghubingzhou

[教程] 【他山之石,可以攻玉】黑苹果i2c触摸板驱动教程(分步) [复制链接]

Rank: 1

UID
1058224
帖子
123
PB币
0
贡献
0
技术
3
活跃
218
发表于 2018-10-17 19:49:13 |显示全部楼层
试试看看。。。

Rank: 1

UID
2757698
帖子
78
PB币
2
贡献
0
技术
0
活跃
102
发表于 2018-10-17 23:07:18 |显示全部楼层
看完了,还没试,留个名

Rank: 2Rank: 2

UID
4718176
帖子
159
PB币
46
贡献
0
技术
0
活跃
281
发表于 2018-10-20 20:04:11 |显示全部楼层
驱动好了。。但是触控板反应不灵敏咋解决

黑苹果学徒

UID
3081083
帖子
773
PB币
718
贡献
0
技术
5
活跃
376
发表于 2018-10-23 18:22:53 来自手机 |显示全部楼层
jiang2479 发表于 2018-10-20 20:04
驱动好了。。但是触控板反应不灵敏咋解决

怎么不灵敏?具体描述下

黑苹果学徒

UID
3081083
帖子
773
PB币
718
贡献
0
技术
5
活跃
376
发表于 2018-10-25 09:43:29 来自手机 |显示全部楼层
日常顶起来

Rank: 2Rank: 2

UID
4651398
帖子
420
PB币
15
贡献
0
技术
0
活跃
457
发表于 2018-10-25 17:54:28 |显示全部楼层
      Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
            {
                Name (SBFB, ResourceTemplate ()
                {
                    I2cSerialBusV2 (0x0000, ControllerInitiated, 0x00061A80,
                        AddressingMode7Bit, "\\_SB.PCI0.I2C0",
                        0x00, ResourceConsumer, _Y20, Exclusive,
                        )
                })
                Name (SBFI, ResourceTemplate ()
                {
                    Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y21)
                    {
                        0x00000000,
                    }
                })
                CreateWordField (SBFB, \_SB.PCI0.I2C0.HDAC._CRS._Y20._ADR, ADR)  // _ADR: Address
                ADR = CADR /* \_SB_.PCI0.I2C0.HDAC.CADR */
                CreateDWordField (SBFI, \_SB.PCI0.I2C0.HDAC._CRS._Y21._INT, AINT)  // _INT: Interrupts
                AINT = INUM (0x02040016)
                If ((HAID == One))
                {
                    Return (SBFB) /* \_SB_.PCI0.I2C0.HDAC._CRS.SBFB */
                }

                Return (ConcatenateResTemplate (SBFB, SBFI))
            }




请教一下楼主,我的DSDT里的是这样的,而且有很多SBFI,应该怎么修改SBFI呢?

Rank: 2Rank: 2

UID
4651398
帖子
420
PB币
15
贡献
0
技术
0
活跃
457
发表于 2018-10-25 18:50:16 |显示全部楼层
  Device (TPD0)
        {
            Name (HID2, Zero)
            Name (SBFB, ResourceTemplate ()
            {
                I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
                    AddressingMode7Bit, "\\_SB.PCI0.I2C0",
                    0x00, ResourceConsumer, _Y1E, Exclusive,
                    )
            })
            Name (SBFI, ResourceTemplate ()
            {
                Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y1F)
                {
                    0x00000000,
                }
            })
            Name (SBFG, ResourceTemplate ()
            {
                GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
                    "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
                    )
                    {   // Pin list
                        0x0000
                    }
            })

Rank: 2Rank: 2

UID
4651398
帖子
420
PB币
15
贡献
0
技术
0
活跃
457
发表于 2018-10-25 18:51:38 |显示全部楼层
  Device (TPD0)
        {
            Name (HID2, Zero)
            Name (SBFB, ResourceTemplate ()
            {
                I2cSerialBusV2 (0x0020, ControllerInitiated, 0x00061A80,
                    AddressingMode7Bit, "\\_SB.PCI0.I2C0",
                    0x00, ResourceConsumer, _Y1E, Exclusive,
                    )
            })
            Name (SBFI, ResourceTemplate ()
            {
                Interrupt (ResourceConsumer, Level, ActiveLow, ExclusiveAndWake, ,, _Y1F)
                {
                    0x00000000,
                }
            })
            Name (SBFG, ResourceTemplate ()
            {
                GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,
                    "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,
                    )
                    {   // Pin list
                        0x0000
                    }
            })



请问我搜出来的是SBFI是这样的,也一样修改吗?问题是,有2处是这样的,有没有什么标识可以指定要改哪一个呢?

Rank: 2Rank: 2

UID
4766890
帖子
99
PB币
24
贡献
0
技术
0
活跃
163
发表于 2018-11-8 01:30:34 来自手机 |显示全部楼层
大家用的本子都是什么牌子型号的,带触摸屏的有点兴趣。

黑苹果学徒

UID
3081083
帖子
773
PB币
718
贡献
0
技术
5
活跃
376
发表于 2018-11-8 09:43:49 来自手机 |显示全部楼层
john_chu5 发表于 2018-10-25 17:54
Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
            {
           ...

帖子已经说了,只改你BIOS设备名称下的dsdt代码

黑苹果学徒

UID
3081083
帖子
773
PB币
718
贡献
0
技术
5
活跃
376
发表于 2018-11-8 09:44:44 来自手机 |显示全部楼层
ciou123 发表于 2018-11-8 01:30
大家用的本子都是什么牌子型号的,带触摸屏的有点兴趣。

这个问题在这问没有人会回答你的,因为会被淹没。如果你想问,不如进群问。

Rank: 2Rank: 2

UID
139284
帖子
222
PB币
36
贡献
0
技术
6
活跃
980
发表于 2018-11-18 14:10:11 |显示全部楼层








老大帮忙看下,我的实在没弄懂怎么修改,,先谢谢了~~


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

墙头草

Rank: 7Rank: 7Rank: 7

UID
593905
帖子
1419
PB币
1493
贡献
0
技术
1
活跃
441
发表于 2018-11-21 22:13:34 |显示全部楼层
学习中,一直没敢对触摸屏动手。

Rank: 7Rank: 7Rank: 7

UID
1851487
帖子
2377
PB币
2
贡献
0
技术
66
活跃
1671

7周年庆典勋章

发表于 2018-12-12 14:09:39 |显示全部楼层
厉害了66666666

黑苹果学徒

UID
3081083
帖子
773
PB币
718
贡献
0
技术
5
活跃
376
发表于 2018-12-14 09:56:07 来自手机 |显示全部楼层
自己顶起来

Rank: 2Rank: 2

UID
4630484
帖子
415
PB币
789
贡献
0
技术
0
活跃
394
发表于 2018-12-20 10:57:08 |显示全部楼层
penghubingzhou 发表于 2018-12-14 09:56
自己顶起来

IOINERRUPTSPECOFIERS 的值是5f。触摸板名称是EPTD.     6代处理器。看看改的对吗?elen触摸板
改之前代码
  1. Scope (_SB.PCI0.I2C1)
  2.     {
  3.         Device (ETPD)
  4.         {
  5.             Name (SBFB, ResourceTemplate ()
  6.             {
  7.                 I2cSerialBusV2 (0x004C, ControllerInitiated, 0x00061A80,
  8.                     AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  9.                     0x00, ResourceConsumer, _Y34, Exclusive,
  10.                     )
  11.             })
  12.             Name (SBFI, ResourceTemplate ()
  13.             {
  14.                 Interrupt (ResourceConsumer, Level, ActiveHigh, Exclusive, ,, )
  15.                 {
  16.                     0x0000005F,
  17.                 }
  18.             })
  19.             CreateWordField (SBFB, \_SB.PCI0.I2C1.ETPD._Y34._ADR, BADR)  // _ADR: Address
  20.             Name (_ADR, One)  // _ADR: Address
  21.             Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
  22.             {
  23.                 If (ELAN)
  24.                 {
  25.                     Store (0x15, BADR)
  26.                     Return ("ELAN1000")
  27.                 }

  28.                 Return ("ELAN1000")
  29.             }

  30.             Name (_CID, "PNP0C50")  // _CID: Compatible ID
  31.             Name (_UID, One)  // _UID: Unique ID
  32.             Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
  33.             Method (_S3W, 0, NotSerialized)  // _S3W: S3 Device Wake State
  34.             {
  35.                 If (LEqual (S0ID, Zero))
  36.                 {
  37.                     Return (0x03)
  38.                 }
  39.                 Else
  40.                 {
  41.                     Return (Zero)
  42.                 }
  43.             }

  44.             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
  45.             {
  46.                 If (LEqual (Arg0, ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
  47.                 {
  48.                     If (LEqual (Arg2, Zero))
  49.                     {
  50.                         If (LEqual (Arg1, One))
  51.                         {
  52.                             Return (Buffer (One)
  53.                             {
  54.                                  0x03                                          
  55.                             })
  56.                         }
  57.                         Else
  58.                         {
  59.                             Return (Buffer (One)
  60.                             {
  61.                                  0x00                                          
  62.                             })
  63.                         }
  64.                     }

  65.                     If (LEqual (Arg2, One))
  66.                     {
  67.                         Return (One)
  68.                     }
  69.                 }
  70.                 Else
  71.                 {
  72.                     Return (Buffer (One)
  73.                     {
  74.                          0x00                                          
  75.                     })
  76.                 }
  77.             }

  78.             Method (_STA, 0, NotSerialized)  // _STA: Status
  79.             {
  80.                 If (LEqual (TPIF, Zero))
  81.                 {
  82.                     Return (Zero)
  83.                 }

  84.                 If (And (DSYN, One))
  85.                 {
  86.                     Return (Zero)
  87.                 }

  88.                 Return (0x0F)
  89.             }

  90.             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
  91.             {
  92.                 Return (ConcatenateResTemplate (SBFB, SBFI))
  93.             }
  94.         }
  95.     }
复制代码
打补丁改后代码
  1. Scope (_SB.PCI0.I2C1)
  2.     {
  3.         Device (ETPD)
  4.         {
  5.             Name (SBFB, ResourceTemplate ()
  6.             {
  7.                 I2cSerialBusV2 (0x004C, ControllerInitiated, 0x00061A80,
  8.                     AddressingMode7Bit, "\\_SB.PCI0.I2C1",
  9.                     0x00, ResourceConsumer, _Y34, Exclusive,
  10.                     )                  
  11.             })
  12.             CreateWordField (SBFB, \_SB.PCI0.I2C1.ETPD._Y34._ADR, BADR)  // _ADR: Address
  13.             Name (_ADR, One)  // _ADR: Address
  14.             Method (_HID, 0, NotSerialized)  // _HID: Hardware ID
  15.             {
  16.                 If (ELAN)
  17.                 {
  18.                     Store (0x15, BADR)
  19.                     Return ("ELAN1000")
  20.                 }

  21.                 Return ("ELAN1000")
  22.             }

  23.             Name (_CID, "PNP0C50")  // _CID: Compatible ID
  24.             Name (_UID, One)  // _UID: Unique ID
  25.             Name (_S0W, 0x03)  // _S0W: S0 Device Wake State
  26.             Method (_S3W, 0, NotSerialized)  // _S3W: S3 Device Wake State
  27.             {
  28.                 If (LEqual (S0ID, Zero))
  29.                 {
  30.                     Return (0x03)
  31.                 }
  32.                 Else
  33.                 {
  34.                     Return (Zero)
  35.                 }
  36.             }

  37.             Method (_DSM, 4, NotSerialized)  // _DSM: Device-Specific Method
  38.             {
  39.                 If (LEqual (Arg0, ToUUID ("3cdff6f7-4267-4555-ad05-b30a3d8938de") /* HID I2C Device */))
  40.                 {
  41.                     If (LEqual (Arg2, Zero))
  42.                     {
  43.                         If (LEqual (Arg1, One))
  44.                         {
  45.                             Return (Buffer (One)
  46.                             {
  47.                                  0x03                                          
  48.                             })
  49.                         }
  50.                         Else
  51.                         {
  52.                             Return (Buffer (One)
  53.                             {
  54.                                  0x00                                          
  55.                             })
  56.                         }
  57.                     }

  58.                     If (LEqual (Arg2, One))
  59.                     {
  60.                         Return (One)
  61.                     }
  62.                 }
  63.                 Else
  64.                 {
  65.                     Return (Buffer (One)
  66.                     {
  67.                          0x00                                          
  68.                     })
  69.                 }
  70.             }

  71.             Method (_STA, 0, NotSerialized)  // _STA: Status
  72.             {
  73.                 If (LEqual (TPIF, Zero))
  74.                 {
  75.                     Return (Zero)
  76.                 }

  77.                 If (And (DSYN, One))
  78.                 {
  79.                     Return (Zero)
  80.                 }

  81.                 Return (0x0F)
  82.             }

  83.             Method (_CRS, 0, NotSerialized)  // _CRS: Current Resource Settings
  84.             {
  85.                 Return (ConcatenateResTemplate (SBFB, SBFG))
  86.             }
  87.         }
  88.             Name (SBFG, ResourceTemplate ()   
  89.             {        
  90.            GpioInt (Level, ActiveLow, ExclusiveAndWake, PullDefault, 0x0000,           
  91.            "\\_SB.PCI0.GPI0", 0x00, ResourceConsumer, ,            
  92.             )           
  93.             {   // Pin list               
  94.              0x71           
  95.             }   
  96.             })
复制代码

Rank: 2Rank: 2

UID
4630484
帖子
415
PB币
789
贡献
0
技术
0
活跃
394
发表于 2018-12-20 11:13:22 |显示全部楼层
帮忙修改一下吧,自己试了,就是不成功啊,附近里面有需要的文件,谢谢了




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

Rank: 1

UID
4829132
帖子
30
PB币
0
贡献
0
技术
0
活跃
37
发表于 2018-12-30 18:18:09 |显示全部楼层
真好真好真好

Rank: 1

UID
4829132
帖子
30
PB币
0
贡献
0
技术
0
活跃
37
发表于 2018-12-30 18:19:37 |显示全部楼层
真好真好真好

Rank: 2Rank: 2

UID
661891
帖子
82
PB币
228
贡献
0
技术
3
活跃
89
发表于 2019-1-30 16:38:24 |显示全部楼层
本帖最后由 Etrock 于 2019-2-17 11:04 编辑




可以了

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

站长推荐

已经开启实名认证了哟
这里可以进行实名操作:点我点我点我
回顶部
Copyright (C) 2005-2019 pcbeta.com, All rights reserved
Powered by Discuz!  苏ICP备17027154号
请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。
远景在线 | 远景论坛 | 苹果论坛 | Win10论坛 | Win8论坛 | Win7论坛 | WP论坛 | Office论坛 | 电脑硬件 | 安卓软件