Firefly开源社区

123
发表新贴
打印 上一主题 下一主题

触摸屏驱动代码

9

积分

0

威望

0

贡献

游客

积分
9
发表于 2015-4-2 11:43:37        只看该作者  11#
zhansb 发表于 2015-4-2 10:43
没做特殊调整,主要是这个地方:
$(obj)/gsl_point_id.o: $(srctree)/$(obj)/gsl_point_id
        cp $( ...

假设成功编译的话,应该在文件夹下复制出.o文件吧
回复

使用道具 举报

9

积分

0

威望

0

贡献

游客

积分
9
发表于 2015-4-2 15:04:25        只看该作者  12#
zhansb 发表于 2015-4-2 10:43
没做特殊调整,主要是这个地方:
$(obj)/gsl_point_id.o: $(srctree)/$(obj)/gsl_point_id
        cp $( ...

你好,可否详细解释下这两句代码? 抱歉我对shell脚本不是很懂。我在touchscreen目录下直接make含有您说的这两句代码的你们给出的Makefile文件,提示
make: Circular /gsl_point_id <- /gsl_point_id.o dependency dropped.
回复

使用道具 举报

265

积分

5

威望

6

贡献

实习版主

Rank: 7Rank: 7Rank: 7

积分
265

活跃会员热心会员突出贡献

发表于 2015-4-2 16:11:48        只看该作者  13#
guoshuo 发表于 2015-4-2 15:04
你好,可否详细解释下这两句代码? 抱歉我对shell脚本不是很懂。我在touchscreen目录下直接make含有您说 ...

这个是一个库文件编译进进去的,你的目录下有没有?
回复

使用道具 举报

9

积分

0

威望

0

贡献

游客

积分
9
发表于 2015-4-3 10:05:43        只看该作者  14#
carlinluo 发表于 2015-4-2 16:11
这个是一个库文件编译进进去的,你的目录下有没有?

你好,这个文件有的。总共增加了4个文件: rockchip_gslX680_firefly.h, rockchip_gslX680_firefly.c, tp_suspend.h和 gsl_point_id,都放在了driver/input/touchscreen文件夹下,和你们给的源码位置一样。该文件夹下Makefile也按你们的源码做了修改。
编译提示:
make[3]: *** No rule to make target `drivers/input/touchscreen/gsl_point_id.c', needed by `drivers/input/touchscreen/gsl_point_id.o'.  Stop.

追到/scripts/Makefile.build第310行,编译是要求提供.c后缀的源文件的,我看了你们/scripts下的Makefile.build,也是一样的。应该是不支持没有后缀名的文件作为源文件。不知道你们在Makefile中加入的两句是如何跳过系统的这个要求的。如果我在driver/input/touchscreen下直接make,提示gsl_point_id.o的circular dependency,不知道你们是怎么编译通过的。
回复

使用道具 举报

265

积分

5

威望

6

贡献

实习版主

Rank: 7Rank: 7Rank: 7

积分
265

活跃会员热心会员突出贡献

发表于 2015-4-3 11:58:37        只看该作者  15#
guoshuo 发表于 2015-4-3 10:05
你好,这个文件有的。总共增加了4个文件: rockchip_gslX680_firefly.h, rockchip_gslX680_firefly.c, tp ...

百度下,肯定可以的
回复

使用道具 举报

15

积分

0

威望

0

贡献

技术小白

积分
15
发表于 2015-6-3 17:19:27        只看该作者  16#
我接手这个工作了,楼主去法国了。
我来说说我是怎么弄的,让后来人也好少走弯路。
在移植这个屏的时候需要注意的是,触控IC不一定是代码中所说的gsl3680,也有可能是 gsl1680/gslX1688,这个屏的I2C地址是 0x41

A. 调试最好从I2C调试开始,根据思立微的文档,该IC有2个地址 0x40或者0x41,这2个地址是根据芯片外围电路的不同而不同,不是同时可用的,这个可以看官方中文DataSheet,配套RK3288的屏,地址是0x41, 在未加载FW的情况下,芯片可以进行I2C通信。

B. 据FAE称,寄存器0xfc是该IC 的 ID寄存器(4个字节,高2个字节有效),gsl3680读出来应该是  0x8036****,配套RK3288的这个10寸屏读出来是 0xA088****,据FAE称,只有gsl1680或者gsl1688才会读出这个数值,因为不好拆开屏,我就没去计较了

C. 0xb0 应该是该IC的类似状态寄存器的存在,在加载FW后,读出来是 0x5a 5a 5a 5a

D. 在这边的平台上(imx6q),打印信息没显示出来,在查看中断和报点信息时,我使用了这个系统的打印语句( printk(KERN_ERR"***") ),没用print_info。

E. 在配置KConfig文件的时候,我是采用了将驱动直接链接到内核的方式(在KConfig菜单选择时按Y键),因为有个 gsl_point_id的存在(没有提供.c文件,就一个.o文件),我没法将这个驱动链接成单独的.ko文件(编译通不过,个人能力有限).

D.有个 tp_suspend.h的文件,也需要拷贝过来。
回复

使用道具 举报

15

积分

0

威望

0

贡献

技术小白

积分
15
发表于 2015-6-3 17:20:01        只看该作者  17#
可以结帖了
回复

使用道具 举报

2918

积分

56

威望

46

贡献

高级创客

Rank: 6Rank: 6

积分
2918

优秀版主论坛元老

发表于 2015-6-3 18:47:50        只看该作者  18#
感谢ml_user的分享
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
QQ
发表于 2016-7-21 19:54:53        只看该作者  19#
请问这个问题是怎么解决的,
回复

使用道具 举报

73

积分

0

威望

0

贡献

技术小白

积分
73
QQ
发表于 2016-7-21 19:57:24        只看该作者  20#
guoshuo 发表于 2015-4-2 10:33
你好, 就是按你的makefile写的,但make之后 有提示
scripts/Makefile.build:311: warning: overriding  ...

这个问题我也遇到了,请问怎么处理的呢?
回复

使用道具 举报

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

本版积分规则

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