Firefly开源社区

Firefly-RK3288第一个Linux程序Hello World在串口没有打印

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-18 16:01:09     
  设置hello.c为静态编译到内核之后,烧写kernel.img,在串口没有看见"hello"的字符串打印. 后来,通过menuconfig设置为模块,用make -j8 firefly-rk3288.img编译之后没有搜到相应的.ko文件 .
  另外spi-rockchip-test.c默认是编译到内核的,但是我没有看见相关的进入rockchip_spi_test_probe的probe函数相关的打印信息.
回复

使用道具 举报

2918

积分

56

威望

46

贡献

高级创客

Rank: 6Rank: 6

积分
2918

优秀版主论坛元老

发表于 2015-6-18 16:08:16     
ko文件编译参考:http://wiki.t-firefly.com/index.php/Firefly-RK3288/Build_kernel
里面有“编译内核模块”的介绍


SPI参考:http://wiki.t-firefly.com/index.php/Firefly-RK3288/SPI
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-18 17:54:11     
zhansb 发表于 2015-6-18 16:08
ko文件编译参考:http://wiki.t-firefly.com/index.php/Firefly-RK3288/Build_kernel
里面有“编译内核模 ...

   1. 我用模块的形式编译了hello.c生成了hello.ko文件.通过adb命令进入开发板,使用"insmod hello.ko",再用dmesg有看到打印信息. 但是,我想知道,我之前静态编译进内核,生成了kernel.img,烧写完kernel.img后为什么在串口终端和dmesg信息里面都没有"hello world"的打印信息?
   2. spi-rockchip-test静态编译到内核后,烧写kernel.img,在串口终端, adb shell 用dmesg都没有看到相应的打印信息.后来,在kernel/driver/spi/Kconfig里面把
config SPI_ROCKCHIP_TEST
        tristate "ROCKCHIP spi test code"
        depends on SPI_ROCKCHIP
改成了tristate,在kernel目录下,make menuconfig,把ROCKCHIP_TEST设置成了"M",然后执行"make -j8 firefly-rk3288.img"和"make modules",把生成的kernel.iimg烧写进板子,通过adb push把spi-rockchip-test.ko 传到/data里面,通过insmod spi-rockchip-test.ko加载模块,结果输出init_module 'spi-rockchip-test.ko' failed <Device or resource busy>,然后我用dmesg查看,显示 Error: Driver 'spi_test' is already registered, aborting...
回复

使用道具 举报

2918

积分

56

威望

46

贡献

高级创客

Rank: 6Rank: 6

积分
2918

优秀版主论坛元老

发表于 2015-6-23 09:15:49     
首先需要确定你的内核使用的是自己更新后的kernel
用cat /proc/version看一下时间
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-24 15:13:08     
zhansb 发表于 2015-6-18 16:08
ko文件编译参考:http://wiki.t-firefly.com/index.php/Firefly-RK3288/Build_kernel
里面有“编译内核模 ...

今天,为了定位问题,我先用了发布的update.img烧录到板子里面,可以启动. 然后,我再按照用户手册里面说的,把update.img解包,把misc.img resource.img kernel.img boot.img recovery.img system.img 这六个img分别和之前我自己制作的img烧写,发现,用到自己的boot.img时板子启不来. 用UE Compare对比了自己和发布版的img,内容不同,并且,自己的boot.img只有1.13MB而发布版本的boot.img有7.65MB.
是不是因为发布版本的boot.img包含了kernel.img,所以要大,所以我每次重新单独烧写kernel.img和resource.img都没有作用?
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-24 17:05:03     
zhansb 发表于 2015-6-23 09:15
首先需要确定你的内核使用的是自己更新后的kernel
用cat /proc/version看一下时间

我用update_release版烧写后,再烧写自己的resource.img 和 kernel.img后, 用 cat /proc/version看,时间都是一样的.
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-24 17:07:06     
zhansb 发表于 2015-6-23 09:15
首先需要确定你的内核使用的是自己更新后的kernel
用cat /proc/version看一下时间

另外,我用firefly-rk3288_pad_android4.4_git_20141218.tar.gz版的源码,按照用户手册编译,生成的img,报错:
   40.845953] ======int_1st: 0 0 0 0 , int_2nd: 0 0 0 0 ======
[   40.846611] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   40.903649] test_i2c-394: Enter
[   40.904315] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   40.943664] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   40.943679] test_i2c-413: Exit
[   40.943686] ------gslX680 test_i2c error------
[   41.927663] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   41.928327] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   41.928337] ======int_1st: 0 0 0 0 , int_2nd: 0 0 0 0 ======
[   41.928994] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   41.986049] test_i2c-394: Enter
[   41.986713] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   42.026068] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   42.026083] test_i2c-413: Exit
[   42.026090] ------gslX680 test_i2c error------
[   43.010068] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   43.010082] ======read 0xb0: 0 0 0 0 ======
[   43.010739] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   43.010749] ======int_1st: 0 0 0 0 , int_2nd: 0 0 0 0 ======
[   43.011405] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   43.068453] test_i2c-394: Enter
[   43.069119] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   43.108467] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   43.108482] test_i2c-413: Exit
[   43.108488] ------gslX680 test_i2c error------
[   44.092470] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   44.093133] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   44.093144] ======int_1st: 0 0 0 0 , int_2nd: 0 0 0 0 ======
[   44.093804] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   44.150855] test_i2c-394: Enter
[   44.151519] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   44.190863] gsl_ts_read set data address fail! ret=-11-0xfffffff5
[   44.190878] test_i2c-413: Exit

我本身买的是带屏幕的开发板.
回复

使用道具 举报

2918

积分

56

威望

46

贡献

高级创客

Rank: 6Rank: 6

积分
2918

优秀版主论坛元老

发表于 2015-6-24 17:40:43     
买的是10。1还是5.5寸的屏幕,看你的log是10.1的软件
回复

使用道具 举报

23

积分

0

威望

0

贡献

技术小白

积分
23
发表于 2015-6-24 17:56:44     
zhansb 发表于 2015-6-24 17:40
买的是10。1还是5.5寸的屏幕,看你的log是10.1的软件

是5.5寸的屏幕,听阿Sai说了要把源码更新到最新,再编译一下看看.
回复

使用道具 举报

2918

积分

56

威望

46

贡献

高级创客

Rank: 6Rank: 6

积分
2918

优秀版主论坛元老

发表于 2015-6-24 18:00:45     
猫不吃麻烦鱼 发表于 2015-6-24 17:56
是5.5寸的屏幕,听阿Sai说了要把源码更新到最新,再编译一下看看.

恩,5.5寸显示屏支持需要更新代码
回复

使用道具 举报

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

本版积分规则

Copyright © 2014-2022 中山市天启智能科技有限公司 粤ICP备14022046号
快速回复 返回顶部 返回列表