Firefly开源社区

打印 上一主题 下一主题

[Android] [firefly rk3288] [android5.1] hid-over-i2c 觸摸屏調適問題, [已解決]

156

积分

0

威望

0

贡献

技术小白

积分
156

[firefly rk3288] [android5.1] hid-over-i2c 觸摸屏調適問題, [已解決]

发表于 2019-5-31 14:37:33      浏览:7671 | 回复:9        打印     [复制链接] 楼主
本帖最后由 bnlinemily 于 2019-6-21 14:07 编辑

hi, all:

目前在調適觸摸屏, goodix的 ...
第一次用 hid-over-i2c, 搞不定, 請各位幫幫忙


dts設定依供應商資料調整如下

&i2c1 {
        status = "okay";
        goodix-hid-over-i2c@5d {
                compatible = "hid-over-i2c";
                reg = <0x5d>;
                interrupt-parent = <&gpio8>;
                interrupts = <GPIO_A7 IRQ_TYPE_EDGE_FALLING>;
                pinctrl-names = "default";
                // pinctrl-0 = <&ts_int_input>;
                pinctrl-0 = <&gpio8 GPIO_A7>;

}

make menuconfig  添加了 hid-over-i2c
"Device Drivers" -> "HID support" -> "I2C HID support" -> "HID over I2C transport layer"

compile, reflash & reboot

getevent 未見到 hid-over-i2c?
觸摸無反應...

請各位幫幫忙 給點意見 与方向
回复

使用道具 举报

156

积分

0

威望

0

贡献

技术小白

积分
156
发表于 2019-6-12 18:21:52      沙发
opster18 发表于 2019-6-5 09:29
HI~最近我也剛調整過,你可以看看如下論文參考!請注意在dts這邊寫的資料設定腳位與名稱~

http://dev.t- ...

hi, opster18:

謝謝你的資料提供

先前也有看過這篇文章, 也成功調適過 focal / goodix / synaptics  /cypress / atmel /weida

如你提供的文件, 這個套路幫了好多次忙....

然而 在 goodix hid-over i2c這邊.... 卡了好久了...

如果有進一步的資料, 請再幫忙補充, 謝謝
回复

使用道具 举报

156

积分

0

威望

0

贡献

技术小白

积分
156
发表于 2019-6-14 17:54:53      板凳
hi, clare1942:

今天剛好可以touch了

但是.... 莫名其妙地完成...

原本goodix i2c address 0x5d
依據 gooodix 手冊填寫 dts
compile ==>
檢查 i2c1 address
==> 0x10?
與 i2c2 address 相同?? 也是 0x10

故修改dts  i2c1 goodix address to 0x10

然後就.... 突然可以touch了

一整個莫名其妙,  
還在釐清中,
過程中 i2c_hid.c driver 有小修改...
還在釐清這幾天來做的事.....

你看要不要先確認 i2c1 ......

有清楚的結果再來報告.
回复

使用道具 举报

156

积分

0

威望

0

贡献

技术小白

积分
156
发表于 2019-6-18 14:59:18      地板
本帖最后由 bnlinemily 于 2019-6-18 16:03 编辑
clare1942 发表于 2019-6-18 14:26
我也调试好了,主要问题是RK3288 的i2c-hid.c 版本比较旧
有几个地方需要修改,如果有需要我在整理贴上 ...

hi, clare1942:


非常需要你的幫忙....
可以麻煩你整理說明嗎?

我這邊雖然touch能動了... 但是 一頭霧水...

先謝謝你幫忙!
回复

使用道具 举报

156

积分

0

威望

0

贡献

技术小白

积分
156
发表于 2019-6-18 15:39:40      5#
本帖最后由 bnlinemily 于 2019-6-18 15:49 编辑

我先拋磚引玉

我修改的部分. 兩個檔案 i2c-hid.c  / firefly_rk3288.dts
i2c-hid.c
ln 950 附近  ---
address抓不到... 故修改為     
--------------------------------------------------------------------------
if (!platform_data) {
# if 0
                ret = i2c_hid_acpi_pdata(client, &ihid->pdata);
                if (ret) {
                        dev_err(&client->dev,
                                "HID register address not provided\n");
                        goto err;
#else //0
        ihid->pdata.hid_descriptor_address = 0x0001;
#endif //0        }
--------------------------------------------------------------------------



1n 1079 附近 ....
for hid device 修改為
--------------------------------------------------------------------------
static const struct i2c_device_id i2c_hid_id_table[] = {
        { "hid", 0 },
        { "hid-over-i2c", 0 },
        { },
};
--------------------------------------------------------------------------


firefly_rk3288.dts 修改i2c1 部分
--------------------------------------------------------------------------

&i2c1 {
        status = "okay";
        goodix-hid-over-i2c@10 {
                compatible = "hid-over-i2c";
                reg = <0x10>;
                hid-descr-addr = <0x0001>;
                interrupt-parent = <&gpio8>;
                interrupts = <GPIO_A7 IRQ_TYPE_EDGE_FALLING>;
                pinctrl-names = "default";
        };
};
--------------------------------------------------------------------------







回复

使用道具 举报

156

积分

0

威望

0

贡献

技术小白

积分
156
发表于 2019-6-19 18:35:21      6#
clare1942 发表于 2019-6-19 15:19
1.i2c-hid.c
我是参考新版的驱动改的,
+#ifdef CONFIG_OF

hi, clare1942:

感謝幫忙,

因為你的資料, 也幫忙抓到問題了....

PS:  確認供應商的address 是改成 0x10....

ps: 也謝謝 opster18 的回覆....

回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

友情链接 : 爱板网 电子发烧友论坛 云汉电子社区 粤ICP备14022046号-2
快速回复 返回顶部 返回列表