SBC-T113S产品特性:
- 采用Allwinner公司Cortex-A7双核T113-S3/S4处理器,运行最高速度为1.2GHZ;
- 内置64-bit XuanTie C906 RISC-V协处理器(仅T113-S4支持);
- 支持JPEG/MJPEG视频编码,最大分辨率1080p@60fps;支持多格式1080P@60fps视频解码 (H.265,H.264, MPEG-1/2/4);
- 支持RGB666/LVDS/MIPI-DSI,分辨率最高1920x1080;
- 支持128-256M Bytes DDR3 SDRAM,其中T113-S3内置128MB;T113-S4内置256MB;
- 支持SPI NAND存储和启动(默认:256MB)或者EMMC启动(默认:4GB,最大32GB);
- 支持一路USB2.0 OTG(设计为TYPE-A接口);支持二路USB2.0 HOST;
- 支持七路RS232通信或者6路RS232和1路RS485(非隔离);
- 支持一路CAN BUS通信(非隔离);
- 支持一路10/100M以太网;
- 稳定的操作系统的支持,可预装LINUX 5.4(Preempt)或者OpenWRT;
- 经典尺寸主板,尺寸为120*100MM;
SBC-T113S产品功能评估图:
Tina系统配置:
本章节将介绍 Tina Linux 系统中配置文件及其配置方法。
Kconfig 管理配置
Tina Linux采用 Kconfig 机制对 SDK 和内核进行配置。
Kconfig 是一种固定格式的配置文件。Linux 编译环境中的 menuconfig 程序可以识别这种格式的配置文件,并提取出有效信息生成可视化的配置菜单。
Tina Linux 包含两个 menuconfig,一个是对内核进行管理和配置的 kernel_menuconfig,一个是对软件包进行管理和配置的 Tina menuconfig。
kernel menuconfig
在 Tina Linux 的配置环境中配置好环境变量进入可编译状态后,输入
make kernel_menuconfig
即可进入 kernel menuconfig 配置菜单。
配置菜单源文件为:
tina/device/config/chips/t113_s4/configs/sbc-t113s_nand
/linux-5.4/config-5.4 #t113_s4和sbc-t113s_nand
分别为芯片名和实际方案名,根据当前选择的编译方案决定输出 cconfig 可快速转跳到该目录。
Tina menuconfig
在 Tina Linux 的配置环境中配置好环境变量进入可编译状态后,输入
make menuconfig
即可进入Tina menuconfig配置菜单。
配置菜单源文件为:
tina/openwrt/target/t113_s4/sbc-t113s_nand/defconfig #t113_s4
和
sbc-t113s_nand
为芯片名和实际方案名,根据当前选择的编译方案决定,输出 cdevice 可快速转跳到该目录。
Kconfig 配置方法
这里以 kernel menuconfig 作为例子,讲解如何使用、配置各选项,并以配置 Wi-Fi,蓝牙驱动为例说明 Kconfig 基础配置方法。
首先我们进入 kernel menuconfig
make kernel_menuconfig
这里就是 kernel menuconfig
的主目录。其具体的操作方法如下图所示。
Device Tree
Device Tree(设备树)是标准Linux下定义的一种硬件板级描述机制,通过.dts文件,对硬件进行配置。
dts文件
Tina Linux下有两份.dts文件,分别位于内核和方案目录下。
内核dts文件路径:
tina/kernel/linux-5.4/arch/arm/boot/dts/
属于T113_S4的的.dts文件包括:
sun8iw20p1 .dtsi #T113_S4主DTS配置文件
sun8iw20p1 -clk.dtsi #T113_S4时钟配置文件
sun8iw20p1 -pinctrl.dtsi #T113_S4引脚配置文件
方案dts文件路径:
tina/device/config/chips/t113_s4/configs/sbc-t113s_nand/linux-5.4/board.dts
方案dts优先级高于内核dts方案,遇到冲突时方案dts会覆盖内核dts中的配置。
方案开发时一般建议只修改方案目录下的dts文件 board.dts ,以免影响其它方案。
分区表
在全志平台中,通过 sys_partition.fex 文件配置分区。
分区配置文件路径:
tina/device/config/chips/t113_s4/configs/sbc-t113s_nand/linux-5.4/sys_partition.fex
配置格式示例
以rootfs分区为例:
[partition]
name = rootfs
size = 20480
downloadfile = "rootfs.fex"
user_type = 0x8000
每个分区以 [partition] 标识,分区属性及其意义如下表。
Table: 分区属性
属性 | 含义 | 必选 | 备注 |
name | 分区名 | Y | |
size | 分区大小 | Y | 单位:扇区(512B), |
downloadfile | 分区烧入的镜像文件 | N | 注2 |
verify | 量产后校验标识 | N | (默认)1:使能; 0:禁用 |
user_type | 分区属性 | N | 注4 |
keydata | 量产时是否擦除本分区 | N | 0x8000:使能; 其他无效 |
更多请参考《Tina Linux 存储开发指南》
env.cfg
env用于配置一些系统级参数,如启动等待时间、内核会用到的环境变量、系统加载状态、串口及打印等级、安全校验参数等。
芯片默认env配置文件路径:
device/config/chips/t113_s4/configs/default/env.cfg
具体方案env配置文件路径:
device/config/chips/t113_s4/configs/sbc-t113s_nand/linux-5.4/env.cfg
具体方案的配置文件优先级大于芯片默认配置文件。
sys_config.fex
sysconfig是全志平台定义的一种GPIO配置的方法。适用于BOOT0与Uboot环境
配置文件路径为:
tina/device/config/chips/t113_s4/configs/sbc-t113s_nand/sys_config.fex
GPIO配置格式:
Port:端口+组内序号<功能分配><内部电阻状态><驱动能力><输出电平状态>
sys_config.fex的配置优先级高于u-boot设备树的优先级,当配置冲突时会以 sys_config.fex配置为准。