全志SDK - 3. 系统配置(1)

全志SDK - 1. 系统编译
全志SDK - 2. PC与开发板连接方式
全志SDK - 3. 系统配置(1)
全志SDK - 3. 系统配置(2)
全志SDK - 4. Flash支持

1. 应用程序放置

自己的应用程序,一般有两种放置方式:源码 & 编译过后的二进制文件(推荐)

1.1 源码放置

源码放置位置一般为:package/allwinner/[app-name]
源码是以工程的形式进行放置,所以必须配上 makefileKconfig 等,具体的可以参考该目录下的其他工程,修改一下即可,很简单的!
一般源码会被编译成ipk的格式,具体ipk是啥,请自行百度!

1.2 二进制放置

即将自己的APP线下编译成二进制程序,然后放置在系统对应目录下!
一般的放置路径为:package/base-files/files/sbintarget/allwinner/[platform]/base-files

2. 更换工具链

工具链一般包含如下几种:

  • glibc:最常用的一种,比较大,但功能齐全
  • ulibc:glibc的嵌入式版,功能阉割,但相对较小
  • musl-libc:一般在针对operwrt
  • aarch64:针对64的arm系统

R328默认的工具链为musl-c,我们现在改成glibc,有如下两个步骤:

make menuconfig:

Advanced configuration options (for developers) --->
--------> Select external toolchain C library (Use glibc) ---> #选择工具链的clib
--------> Select external gcc version (gcc 6.4.0) ---> #选择gcc的版本

3. 分区操作

一般分区文件的位置在:TinaSDK/target/allwinner/[board_type]/configs 或者使用 cconfigs 进入。

3.1删除目录

在如下file中增删目录:package/base-files/Makefile

3.2增加分区

① 执行命令:【cconfigs】,进入到目标板的config目录
② 修改分区文件:【vim sys_partition.fex】
③ 增加两个分区:以app和app_sub为例

3.3调整分区大小

执行命令:cconfigs 进入到目标板的config目录
编译 vim sys_partition.fex,调整size即可

如上图


注意:

  • size是以扇区为单位的,一个扇区512bytes
  • size总大小请不要超过你的flash大小,否则很可能系统烧录不成功

3.4. 查看分区

使用 mount 指令,可以查看当前挂载的分区有哪些;
使用 df -h 指令,查看分区大小和使用情况
挂载分区指令:mount -o rw /dev/by-name/xxx /abc
卸载分区指令:umount /abc

4. 降低系统启动时间

1)关闭boot log

可通过关闭启动log来实现,具体可参考:Tina_Linux_syslog_使用指南.zip

2)关闭环境变量中的boot log

关闭控制台log打印,更改 device/config/chips/r328s3/configs/std_xr829/linux 【cconfigs进入】目录下 env-4.9.cfg 文件中的loglevel参数

0-8: 0是最低等级,8是最高等级

3)优化系统启动

Make menuconfig

--> Target Image
------> kernel compression mode setting
------------> Compression 选择 LZO
------> Boot Time optimization 选中

5. 开机自启动

自启动需要做两个配置

  • 自启动脚本首行添加
#!/bin/sh /etc/rc.common
  • 将自启动脚本放在/etc/init.d/目录(系统SDK中的目录为 package/base-files/files//etc/init.d/)
  • /etc/rc.d/ 中做软连接到第一步的自启动脚本(此处以start_wifi为例)
ln -s ../init.d/start_wifi S99start_wifi
posted @ 2023-04-20 23:07  Jimmy_Nie  阅读(397)  评论(0编辑  收藏  举报