全志T153学习笔记
一、开发板体验
开发板使用的是全志的T153,集成四核Cortex-A7 CPU和 单核E907 RISC-V,从性能角度来讲属于入门偏低水平,不过独立的RISC-V 实时核 加上丰富的外设接口,非常适合做工控实时控制(尤其物联网数据透传)。
在此贴一张SOC结构图:

1、终端
1、串口终端
type-C线连接电脑与设备的debug接口,推荐使用 MobeXterm,(实际上习惯使用 tabby 界面好看配置简单,不过没有流控制在此处无法使用),端口设置如下,

注意:
- 需要使用 端口 :
USB-Enhanced-SERIAL-A CH342, 根据说明 “debug口集成了A核调试串口(识别为A口)和RISC-V调试串口(识别为B口)”
- 串口的驱动一般win系统默认已安装,如果不识别需要自行安装一下
2、adb终端
这种方式更加推荐一些,调试应用时会方便很多(文件的下发与上传可以直接使用 push / pull )。
需要先在win准备好环境:
-
下载adb
-
解压压缩包到指定目录,路径不要有中文,我的是 C:\my_folder\my_software\win_compiler\adb
-
添加到环境变量
设置 -> 系统 -> 高级系统设置 -> 高级 -> 环境变量 -> 在 系统变量的path中添加 自己的路径 C:\my_folder\my_software\win_compiler\adb
-
测试
打开终端,输入 adb --version 测试
PS C:\Users\YY> adb --version
Android Debug Bridge version 1.0.41
Version 35.0.1-11580240
Installed as C:\my_folder\my_software\win_compiler\adb\adb.exe
Running on Windows 10.0.26100
接下来,只需要 adb shell就可以开始使用了( type-C线连接电脑与设备的downloader接口 )
PS C:\Users\YY> adb shell
root@OKT153:/
THIS_IS_NOT_YOUR_ROOT_FILESYSTEM dev init media root system
bin etc lib mnt run tmp
bt_recv forlinx lib32 opt sbin usr
commit.txt home linuxrc proc sys var
root@OKT153:/
3、ssh终端
网线连接设备的 eth0 网口,然后直接使用win系统的终端就好,
PS C:\Users\YY> ssh root@192.168.0.232
The authenticity of host '192.168.0.232 (192.168.0.232)' can't be established.
ED25519 key fingerprint is SHA256:QjN3Kht5mxR3Q5Pn4ZcCLm+17kPWkgEqDE/cVC2GpFY.
This key is not known by any other names.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added '192.168.0.232' (ED25519) to the list of known hosts.
root@OKT153:~#
2、开发板信息
出厂系统
-
系统信息
root@OKT153:/
NAME=Buildroot
VERSION=-gcf86899c
ID=buildroot
VERSION_ID=2022.05
PRETTY_NAME="Buildroot 2022.05"
-
内核版本
root@OKT153:/
Linux version 5.10.198 (root@ece33336930b) (arm-linux-gnueabihf-gcc (GCC) 11.3.1 20220604 [releases/gcc-11 revision 591c0f4b92548e3ae2e8173f4f93984b1c7f62bb], GNU ld (Linaro_Binutils-2022.06) 2.37.20220122)
-
CPU 信息
root@OKT153:/
processor : 0
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 76.57
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 1
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 76.57
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 2
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 76.57
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
processor : 3
model name : ARMv7 Processor rev 5 (v7l)
BogoMIPS : 76.57
Features : half thumb fastmult vfp edsp neon vfpv3 tls vfpv4 idiva idivt vfpd32 lpae
CPU implementer : 0x41
CPU architecture: 7
CPU variant : 0x0
CPU part : 0xc07
CPU revision : 5
Hardware : Generic DT based system
Revision : 0000
Serial : 228077004c7aec22
-
内存
root@OKT153:/
total used free shared buff/cache available
Mem: 210Mi 43Mi 131Mi 8.0Mi 34Mi 151Mi
Low: 210Mi 78Mi 131Mi
High: 0B 0B 0B
Swap: 0B 0B 0B
-
存储( Nano版本)
root@OKT153:/
Filesystem Size Used Avail Use% Mounted on
ubi0_8 177M 127M 51M 72% /
devtmpfs 73M 0 73M 0% /dev
tmpfs 106M 0 106M 0% /dev/shm
tmpfs 106M 268K 105M 1% /tmp
tmpfs 106M 128K 105M 1% /run
/dev/ubi0_9 572K 140K 368K 28% /mnt/UDISK
二、环境搭建
ubuntu版本为22.04,vmware搭建虚拟机的教程非常普遍了,网上搜集一下就好,这里仅总结开发需要的环境工具,新建install.sh脚本添加以下内容,并使用sudo权限运行。
sudo apt update
sudo apt upgrade -y
sudo apt-get install -y openssh-server
sudo apt-get install -y vim
sudo apt-get install -y git
sudo apt-get install -y fakeroot
sudo apt-get install -y make
sudo apt-get install -y automake
sudo apt-get install -y autoconf
sudo apt-get install -y libtool
sudo apt-get install -y libssl-dev
sudo apt-get install -y bc
sudo apt-get install -y dosfstools
sudo apt-get install -y mtools
sudo apt-get install -y parted
sudo apt-get install -y iproute2
sudo apt-get install -y kmod
sudo apt-get install -y libyaml-dev
sudo apt-get install -y device-tree-compiler
sudo apt-get install -y python3
sudo apt-get install -y flex
sudo apt-get install -y bison
sudo apt-get install -y build-essential
sudo apt-get install -y u-boot-tools
sudo apt-get install -y libncurses-dev
sudo apt-get install -y lib32stdc++6
sudo apt-get install -y lib32z1
sudo apt-get install -y libc6:i386
sudo ln -s /usr/bin/python3 /usr/bin/python
注意:
-
安装vmtools
sudo apt-get update && sudo apt-get install open-vm-tools -y && sudo apt install open-vm-tools-desktop -y
-
install.sh脚本执行
sudo chmod +x install.sh && sudo ./install.sh
-
关于挂载共享盘
-
查看是否存在(如果不存在需要在 虚拟机设置 中设置共享文件夹)
mo@mo-al:~$ vmware-hgfsclient
VMware_share
-
挂载
sudo mkdir /mnt/hgfs
sudo vmhgfs-fuse .host:/ /mnt/hgfs -o allow_other
-
编写设置默认挂载
.host:/ /mnt/hgfs fuse.vmhgfs-fuse allow_other 0 0
三、sdk编译
1、buildroot编译
版本信息:
Bootloader 版本:u-boot-2023.04
- 内核版本:
linux-5.10.198
- 系统版本:
buildroot-202205
编译构建:
-
校验MD5
[16:17:18] mo@mo-al:~/my-folder$ md5sum OKT153-linux-sdk.tar.bz2.*
bfcc026bf7ca5bf5dda1d62c4a578174 OKT153-linux-sdk.tar.bz2.00
2a550cdd5ca23c3f44487fe5bd1f8b69 OKT153-linux-sdk.tar.bz2.01
23466bb223deb4d25a5c3723aff3d9b5 OKT153-linux-sdk.tar.bz2.02
963012bd83f1a119af8070c72a2793d8 OKT153-linux-sdk.tar.bz2.03
9722b7d231b778d0bfdfab29df8ac4d9 OKT153-linux-sdk.tar.bz2.04
b4b3ea0175ddf9de85bccce7fd91543f OKT153-linux-sdk.tar.bz2.05
d6c4cc5780e5903a06b22058db5cede4 OKT153-linux-sdk.tar.bz2.06
-
解压缩源码
sudo cat OKT153-linux-sdk.tar.bz2.* | sudo tar -jxv -C /home/mo/my-folder/sdk/
-
权限设置(让 当前的用户拥有全部权限,保证能正常编译开发)
sudo chown -R $USER:$USER /home/mo/my-folder/sdk/
1、全量编译
-
配置
[17:24:05] mo@mo-al:~/my-folder/sdk/OKT153-linux-sdk$ ./build.sh config
03-31 17:29:16.453 118697 D mkcommon : ========ACTION List: mk_config ;========
03-31 17:29:16.454 118697 D mkcommon : options :
All available board:
0. okt153-s12
1. okt153
Choice [okt153-s12]: 0
All available flash:
0. default
1. nor
2. nand
Choice [nand]: 2
All available kern_name:
0. linux-5.10-origin
1. linux-5.10-rt
2. linux-5.10-xenomai
Choice [linux-5.10-origin]: 0
-
编译并打包
[17:29:33] mo@mo-al:~/my-folder/sdk/OKT153-linux-sdk$ ./build.sh && ./build.sh pack
成功后会有如下打印
03-31 17:33:12.279 138171 D pack : Dragon execute image.cfg SUCCESS !
03-31 17:33:12.657 138171 D pack : ----------image is at----------
03-31 17:33:12.658 138171 I pack : 163M /home/mo/my-folder/sdk/OKT153-linux-sdk/out/t153_linux_okt153-s12_uart0_nand.img
03-31 17:33:12.659 138171 D pack : pack finish
2、详细编译命令
./build.sh 实际执行 ./build/mkcommon.sh
所有支持的命令如下:
1. 配置
./build.sh config
./build.sh autoconfig
./build.sh menuconfig
./build.sh uboot_menuconfig
2. 编译
./build.sh kernel
./build.sh dtb
./build.sh modules
./build.sh bootloader
./build.sh uboot
./build.sh rootfs
./build.sh
3. 打包镜像
./build.sh pack
./build.sh pack_debug
4. 清理
./build.sh clean
./build.sh distclean