You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
zhugengyu
e7475ddf43
|
3 years ago | |
---|---|---|
.gitee | 3 years ago | |
.vscode | 3 years ago | |
baremetal/example | 3 years ago | |
bsp | 3 years ago | |
configs | 3 years ago | |
doc | 3 years ago | |
lib | 3 years ago | |
make | 3 years ago | |
scripts | 3 years ago | |
tools | 3 years ago | |
.gitignore | 3 years ago | |
Kconfig | 3 years ago | |
LICENSE | 3 years ago | |
README.md | 3 years ago | |
install.sh | 3 years ago |
README.md
Phytium-Standalone-SDK
1. 介绍
本项目发布了Phytium系列CPU的BSP源码,Baremetal参考例程及其配置编译工具
2. Ubuntu 20.04 x86_64环境下使用Standalone SDK
2.1. 配置SDK
2.1.1. 下载SDK源代码
- 通过Gitee拉取源代码
$ git clone https://gitee.com/phytium_embedded/phytium-standalone-sdk.git ./ft_sdk
$ cd ./ft_sdk
2.1.2 选择在线方式安装SDK
- 选择在线方式安装Standalone SDK在~/ft_sdk
$ ./install.sh -online
2.1.3 选择离线方式安装SDK
$ ./install.sh
Please type in 'source ./export.sh'
Phytium Embedded SDK Setup Done!!
Install AARCH32 Compiler at /home/ubuntu/ft_sdk/tools/gcc-arm-none-eabi-10-2020-q4-major
Install AARCH64 Compiler at /home/ubuntu/ft_sdk/tools/gcc-arm-10.2-2020.11-x86_64-aarch64-none-elf
SDK Path is set as /home/ubuntu/ft_sdk/standalone-sdk-master
- 通过离线/在线方式完成安装后,关闭当前窗口或者运行以下命令,立即生效SDK环境变量
$ source ~/.profile
2.2 快速使用例程
2.2.1 使用FT2000-4开发板,快速体验SDK
ft_sdk/baremetal/example/aarch32_hello_world
- 编译例程hello_world
- 通过TFTP服务器下载到开发板上
- 跳转启动例程
2.2.2 没有开发板,可以通过模拟器体验一下SDK
ft_sdk/baremetal/example/aarch32/qemu_debug
- 编译例程qemu_debug
$ make
- 运行例程qemu_debug
$ make run
2.2.3 新建Baremetal应用工程
Project Configuration --> 当前工程的私有配置
Target Setting --> 配置目标硬件平台
Building Option --> 配置编译开发环境
Board Configuration --> 配置开发板组件
Library Configuration --> 配置依赖库
- 通过'make info'观察构建信息
$make info --> 查看交叉编译器的信号,编译输出路径,SDK根目录等信息
$make info-srcs --> 查看编译过程中用到的源文件
$make info-incs --> 查看编译过程中引用的目录
$make info-flags --> 查看编译过程中的flags
- 通过'make'完成编译构建
3. Standalone源码结构
.
├── Kconfig --> 顶层配置选项定义
├── LICENSE
├── README.en.md
├── README.md
├── baremetal
│ └── example --> 已经配置好的baremetal例程
├── bsp --> 板级支持包
│ ├── Kconfig
│ ├── arch --> 架构相关源码 armv7/a32/a64
│ ├── bsp.mk
│ ├── common --> BSP 不同平台的共用源码
│ └── drivers --> 各类驱动
├── configs --> 各平台默认匹配文件
│ ├── aarch32_defconfig
│ └── aarch64_defconfig
├── doc
│ ├── ChangeLog.md --> 版本变更日志
│ ├── baremetal.dio
│ └── baremetal.png
├── export.sh --> SDK注册安装脚本
├── lib
│ ├── Kconfig
│ ├── Kconfiglib
│ ├── lib.mk
│ ├── libc
│ └── nostdlib
├── make --> SDK共用Makefile
│ ├── build_baremetal.mk
│ ├── buildinfo.mk
│ ├── complier.mk
│ ├── ld
│ ├── ld.mk
│ ├── menuconfig.mk
│ ├── packsource.mk
│ └── preconfig.mk
├── scripts
│ ├── kill_qemu_instance.sh
│ └── mount2vxbox.sh
└── tools --> 必要的工具,编译器安装在这个路径下
├── README.md
├── gcc-arm-10.2-2020.11-x86_64-aarch64-none-elf
├── gcc-arm-10.2-2020.11-x86_64-aarch64-none-elf.tar.xz
├── gcc-arm-none-eabi-10-2020-q4-major --> SDK注册过程中下载安装
└── gcc-arm-none-eabi-10-2020-q4-major-x86_64-linux.tar.bz
4. 驱动描述
5. 硬件平台
6. 参考资源
- ARM Architecture Reference Manual
- ARM Cortex-A Series Programmer’s Guide
- Programmer Guide for ARMv8-A
- ARM System Developers Guide Designing and Optimizing System Software
- FT-2000/4 软件编程手册-V1.4
- Bare-metal programming for ARM —— A hands-on guide
- Using the GNU Compiler Collection
- Using ld, The GNU Linker
- Using as, The GNU Assembler
- Armv8-A memory model guide
7. 贡献方法
请联系飞腾嵌入式软件部
8. 许可协议
Apache-2.0