Hi3518鸿蒙运行没有shell问题 原创

鸿蒙开发
发布于 2021-10-10 20:19
浏览
2收藏

文中相关设备来源于51CTO 鸿蒙技术社区【开发板漂流计划】
接上篇HiSpark IPC DIY开发套件编译环境搭建
上次编译了固件并下载成功,发现没有串口交互,也就是shell没有启动,但是启动log也没有明显看出问题来,就很怀疑是不是哪块设置出了问题,其实一开始就有疑问,比如uboog启动参数的设置,每个人生成的固件不一样,设置参数也不应该一样,但是文档中没有解释应该怎样设置,没办法,换个官方固件试试,于是去网址
https://repo.huaweicloud.com/harmonyos/os/下载了两个官方hi3518固件,烧录进去,发现一样没有出现shell交互,
停留了一周多,没事的时候也看帖子,找解决方案,后来发现了对uboot设置参数的解释如下:
Hi3518鸿蒙运行没有shell问题-鸿蒙开发者社区
setenv bootcmd “sf probe 0;sf read 0x40000000 0x100000 0x600000;go 0x40000000”;
setenv bootargs “console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M”;
表示设置bootargS参数为串口输出,波特率为115200,数据位8,rootfs挂载于FLASH上,文件系统类型为jffs2 rw,以支持可读写JFFS2文件系统。
“rootaddr=7M rootsize=8M”处对应填入实际rootfs.img的烧写起始位置与长度,此处应与HiTool新增文件时所填大小相同。
这个命令解释让我恍然大悟,之前看的pdf文档只有第一条设置而没有这条设置:
setenv bootargs “console=ttyAMA0,115200n8 root=flash fstype=jffs2 rw rootaddr=7M rootsize=8M”;
于是按照新的设置命令运行通过hitool烧录,官方的固件运行成功,出现了OHOS命令提示符:
Hi3518鸿蒙运行没有shell问题-鸿蒙开发者社区
但是我自己编译的版本还是不成功,但是启动有明确的错误打印如下:
Init] DoMount, failed for vfat /dev/mmcblk1 /sdcard rw,umask=000, err 13.
[ERR][SendCmd,39] No such file or directory!
[ERR][SendCmd,39] No such file or directory!
[Init] start service shell invalid, please check /bin/shell.
[Init] StartServiceByName, service shell start failed!
[Init] start service apphilogcat succeed, pid 3.
[Init] start service foundation succeed, pid 4.
通过log可以确认shell进程的确没有运行成功,但是为啥没成功,是操作系统固件的问题还是文件系统的问题,不好确认了,
我的思路是后续换一种编译方式,我之前都是采用hpm方式编译的,现在我只能怀疑hpm的代码是不是有问题了,后续请等待我的尝试。

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
标签
3
收藏 2
回复
举报
回复