rt-thread/bsp/phytium
lzh f7b85a824e xmac and readme update 2024-01-08 18:40:36 +08:00
..
aarch32 xmac and readme update 2024-01-08 18:40:36 +08:00
aarch64 xmac and readme update 2024-01-08 18:40:36 +08:00
board [bsp/phytium] driver and config update (#8344) 2023-12-08 17:57:55 +08:00
doc [bsp/phytium] add dc driver (#8373) 2023-12-16 19:10:26 +08:00
figures [bsp/phytium] add dc driver (#8373) 2023-12-16 19:10:26 +08:00
libraries xmac and readme update 2024-01-08 18:40:36 +08:00
tools/figures [bsp] phytium e2000 update (#7900) 2023-08-02 13:27:09 +08:00
.gitignore [bsp/phytium] driver and config update (#8344) 2023-12-08 17:57:55 +08:00
README.md [bsp/phytium] add dc driver (#8373) 2023-12-16 19:10:26 +08:00

README.md

PHYTIUM BSP 说明

简介

本文档为基于 RT-THREAD 的 Phytium 系列 CPU 相关 BSP 说明。

本文的主要内容如下:

  • BSP 简介
  • 移植支持情况
  • 如何在 Ubuntu/Windows 环境下使用此 BSP
  • 如何进行编译与实验
  • 维护人信息
  • 注意事项

BSP简介

  • 飞腾芯片产品具有谱系全、性能高、生态完善、自主化程度高等特点目前主要包括高性能服务器CPU飞腾腾云S系列、高效能桌面CPU飞腾腾锐D系列、高端嵌入式CPU飞腾腾珑E系列和飞腾套片四大系列为从端到云的各型设备提供核心算力支撑。

  • 本BSP目前支持飞腾派、飞腾腾锐D系列、飞腾腾珑E系列 相关CPU, 基于 Phytium-Standalone-SDK 进行开发。开发者能够使用

  • 本BSP 支持Phytium系列CPU 工作在 aarch32/aarch64 两种执行状态 开发者能够根据自己的应用场景灵活选择CPU 工作状态。

移植支持情况

片上外设 支持情况 备注
UART 支持 UART1 打印输出
GPIO 支持 GPIO 引脚电平输入输出,中断
XMAC 支持 XMAC 网卡初始化和运行
SDMMC 支持 SD0/SD1 读写 SD 卡或 eMMC 颗粒
PWM 支持 PWM 脉宽调制电压输出
CAN 支持 CAN/CANFD设备通信
I2C 支持 I2C设备通信
SPI 支持 SPI设备通信
DC 支持 DC显示设备
芯片 支持情况 备注
Phytium PI 支持 支持SMP
E2000D 支持 支持SMP
E2000Q 支持 支持SMP
E2000S 支持
  • Phytium PI 上使用 RT-Thread 要注意读写操作不能影响 SD 卡的固件,具体使用方法可以参考

如何在Ubuntu/Windows 环境下使用此BSP

Ubuntu 环境

  1. 根据 Linux x86_64 SDK安装方法 中1.1 - 1.2 节中介绍,先安装 SDK 编译环境
  2. 参考RT-Thread/env 中Tutorial 在ubuntu 环境下安装 env 环境
  3. 在编译环境下执行 source ~/.env/env.sh
  4. 以aarch32 执行状态为例,cd bsp/phytium/aarch32

Windows 环境

  1. 根据Windows 10 SDK安装方法,安装 SDK 编译环境,编辑新建 Windows 环境变量 AARCH32_CROSS_PATH 和 AARCH64_CROSS_PATH
  2. 参考RT-Thread/env 中Tutorial 在 Windows 环境下解压 env 压缩包
  3. 以aarch32 执行状态为例,cd bsp/phytium/aarch32
  4. 使用 export_project.py 导出 BSP 工程到其他目录进行开发
  5. 使用 RT-Studio 导入 BSP 工程进行开发

如何添加开发板

如何进行编译与实验

编译说明

烧写及执行

Ubuntu 环境配置 tftp 服务

  • 在开发环境host侧安装tftp服务
sudo apt-get install tftp-hpa tftpd-hpa
sudo apt-get install xinetd
  • 新建 tftboot 目录, 以/mnt/d/tftboot为例, 此目录应与项目编译脚本makefile中的USR_BOOT_DIR一致, 并确保 tftboot 目录有执行权限chmod 777 /**/tftboot

  • 配置主机 tftpboot 服务, 新建并配置文件/etc/xinetd.d/tftp

# /etc/xinetd.d/tftp

server tftp
{
  socket_type = dgram
  protocol = udp
  wait = yes
  user = root
  server =  /usr/sbin/in.tftpd
  server_args = -s /mnt/d/tftboot
  disable = no
  per_source = 11
  cps = 100 2
  flags = IPv4
}
  • 启动主机tftp服务,生成默认配置
$ sudo service tftpd-hpa start
  • 修改主机tftp配置,指向tftboot目录 修改/etc/default/tftpd-hpa
$ sudo nano /etc/default/tftpd-hpa
# /etc/default/tftpd-hpa

TFTP_USERNAME="tftp"
TFTP_DIRECTORY="/mnt/d/tftboot"
TFTP_ADDRESS=":69"
TFTP_OPTIONS="-l -c -s"
  • 重启主机tftp服务
$ sudo service tftpd-hpa restart
  • 测试主机tftp服务的可用性

    登录tftp服务,获取tftboot目录下的一个文件

$ tftp 192.168.4.50
tftp> get test1234
tftp> q

Windows环境下配置 tftp 服务

  • 下载Tftpd64 工具 并安装Tftpd64 工具

输入图片说明

  • 之后每次使用前进入Windows服务手动将一下服务打开

输入图片说明

格式化 SD 卡

  • RT-Smart 依赖 SD 卡挂载为 / 目录,要保证插入的卡格式为 FAT32否则会提示初始化失败的信息

  • Phytium PI 固件可能在 SD 卡中,这种情况下需要将 SD 卡分成两个区,第一个分区格式为 RAW 放置固件,第二个分区格式为 FAT32 作为 RT-Thread/RT-Smart 的根目录使用,在编译镜像时,需要调整 CONFIG_SDCARD_OFFSET 配置,避免读写操作影响固件

利用 uboot 上tftp 服务加载镜像

  • 进入u-boot界面输入如下指令配置开发板iphost侧ip和网关地址

    setenv ipaddr 192.168.4.20  
    setenv serverip 192.168.4.50 
    setenv gatewayip 192.168.4.1 
    
  • 将编译好的elf 或者bin 文件拷贝至Tftpd64所设置文件夹下

  • 随后烧录的文件到开发板,输入以下指令

    tftpboot 0x80080000 rtthread.bin
    go 0x80080000
    

运行结果

运行结果

维护人信息