Firefly开源社区

请教:rk3288 android6.0 移植,内核无法启动

335

积分

0

威望

0

贡献

技术达人

Rank: 2

积分
335
发表于 2017-4-19 17:47:14     
各位好。

我手头上有一块firefly 3288 reload 板子(pmic用的是act8846), 还有一块自己做的3288 板子(pmic用的是rk818)。

1)
然后我尝试把android6.0移植到我的3288板子上。
一开始时,编译出各个映像,下载到firefly3288 reload板子中,板子能够正常启动,运行到android主界面。

然后在这个基础上,我改动dts文件,增加rk818的相应部分(针对我自己的rk3288板子),重新编译,把映像下载到板子中,运行,发现板子启动后,从uboot跳转到kernel,没打印多少东西,系统就挂了,打印如下:
Starting kernel ...

<hit enter to activate fiq debugger>
[    0.000000] Booting Linux on physical CPU 0x500
[    0.000000] Initializing cgroup subsys cpu
[    0.000000] Initializing cgroup subsys cpuacct
[    0.000000] Linux version 3.10.0 (david@david) (gcc version 4.6.x-google 20120106 (prerelease) (GCC) ) #1 SMP PREEMPT Wed Nov 2 19:01:08 CST 2016
[    0.000000] CPU: ARMv7 Processor [410fc0d1] revision 1 (ARMv7), cr=10c5387d
[    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
[    0.000000] Machine: Rockchip RK3288 (Flattened Device Tree), model: rockchip,rk3288
[    0.000000] rockchip_uboot_logo_setup: mem: 0x02000000@0x7dc00000, offset:0x01000000
[    0.000000] rockchip_uboot_mem_reserve: reserve 0x02000000@0x7dc00000 for uboot logo
[    0.000000] rockchip_ion_reserve
[    0.000000] ion heap(drm): base(0) size(0) align(0)
[    0.000000] ion heap(cma): base(0) size(28000000) align(0)
[    0.000000] ion heap(vmalloc): base(0) size(0) align(0)
0] o eapvaloc:bse()sze()aign

尝试查找问题所在,没找到原因,请教下各位,有3288上移植调试android6.0的吗? 上面的问题,可能是哪方面的原因?

2)
另外,在我的板子中下载android6.0的相应固件时,如果我单独下载kernel.img映像,发现虽然下载是成功了,但是当我重启板子时,发现内核还是老的(旧的,从打印的编译时间看出);(试了几次都这样的情况)
而当我更新的的是update.img时,重启看到的内核则是新的。

关于这个问题,为什么会这样呢? 请问有也遇到的朋友吗? 这可能是什么问题?

我目前用的parameter文件,内容为: (android6.0)
FIRMWARE_VER:6.0.0
MACHINE_MODEL:rk3288
MACHINE_ID:007
MANUFACTURER:RK3288
MAGIC: 0x5041524B
ATAG: 0x60000800
MACHINE: 3288
CHECK_MASK: 0x80
PWR_HLD: 0,0,A,0,1
CMDLINE:console=ttyFIQ0 androidboot.baseband=N/A androidboot.selinux=permissive androidboot.hardware=rk30board androidboot.console=ttyFIQ0 init=/init initrd=0x62000000,0x00800000 mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(misc),0x00008000@0x00006000(resource),0x00008000@0x0000e000(kernel),0x00010000@0x00016000(boot),0x00010000@0x00026000(recovery),0x0001a000@0x00036000(backup),0x00040000@0x00050000(cache),0x00002000@0x00090000(kpanic),0x00100000@0x00092000(system),0x00008000@0x00192000(metadata),0x00020000@0x0039A000(radical_update),-@0x003BA000(userdata)


另外,在用android5.1时,我把同样的固件烧写到firefly3288 reload 和我的3288板子,都能正常运行。

以上的两个问题, 请教下有了解的朋友,谢谢。

回复

使用道具 举报

335

积分

0

威望

0

贡献

技术达人

Rank: 2

积分
335
发表于 2017-4-24 10:55:36     
自己结贴
我遇到的这个问题,我通过尝试后,发现是kernel的问题;
然后对比android5.1和android6.0的内核代码,在rk818的驱动上,有一些差异,于是改动android6.0的rk818的驱动,改为与android5.1的相同;
更新内核,上面的问题解决,能够正常启动;

对于android6.0中的rk818的驱动的更新,目前还没去了解为什么差异的部分映像内核的启动。

回复

使用道具 举报

335

积分

0

威望

0

贡献

技术达人

Rank: 2

积分
335
发表于 2017-4-24 17:24:46     
以下这个连接,也是跟我发的帖子同样的问题,这个帖子的网友,解决了这个问题:
http://blog.csdn.net/kris_fei/article/category/6525950/1

回复

使用道具 举报

124

积分

0

威望

0

贡献

技术小白

积分
124
发表于 2017-5-9 14:06:35     
大家android 6.0 的代码在哪里下载的
回复

使用道具 举报

108

积分

0

威望

0

贡献

技术小白

积分
108
发表于 2017-9-12 16:08:11     
开机log.zip (1 KB, 下载次数: 0)
回复

使用道具 举报

108

积分

0

威望

0

贡献

技术小白

积分
108
发表于 2017-9-12 16:11:31     
回答下: kernel.img  没有更新
应该是 boot.img  带有 kernel.img  ,优先执行 boot.img
编译时  ./mkimage.sh            不带kernel.img
             ./mkimage.sh ota      带 kernel.img

回复

使用道具 举报

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

本版积分规则

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