RK3399驱动开发笔记 | 01- 开发环境搭建

Posted Mculover666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了RK3399驱动开发笔记 | 01- 开发环境搭建相关的知识,希望对你有一定的参考价值。

参考教程,官方wiki:http://t.rock-chips.com/wiki.php

最近开始着手RK3399的开发,使用 TB-RK3399ProD 开发板:

一、RK3399 Pro

RK3399 Pro性能非常强劲,使用双Cortex-A72+四Cortex-A53 大小核CPU结构,频率最高1.8GHz。

二、烧写固件

1. 进入烧写模式

Type-C线连接主机端的USB Host接口和开发板的Type-C接口,按住recovery按键或maskrom按键后重启系统,大约1秒后松开按键,进入烧写模式。

2. windows环境下烧写固件

安装驱动:

烧写固件,首先导入配置文件``:

在官方提供的资料中没有找到rootfs.img,所以不刷根文件系统

三、安装编译工具链

编译工具链下载地址:https://releases.linaro.org/components/toolchain/binaries/

选择最新版本:


选择64位架构编译器:

选择在64位主机上运行:

复制下载地址,下载:

wget https://releases.linaro.org/components/toolchain/binaries/7.5-2019.12/aarch64-linux-gnu/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz

解压:

tar -xvf gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu.tar.xz

将交叉编译工具放到u-boot同级目录

为了在命令行中更加方便的使用,将bin目录所在路径添加到环境变量中。

编辑用户文件:

vim ~/.bashrc

最后添加(注意路径):

export PATH=$PATH:/home/ubuntu/rk3399prod/gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin

重启终端,即可生效。

四、编译uboot

源码下载:

git clone https://github.com/rockchip-toybrick/u-boot.git -b master

下载rkbin到uboot同级目录:

git clone https://github.com/rockchip-toybrick/rkbin -b master
cd u-boot

修改 make.sh 设置:

TOOLCHAIN_ARM32=../gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin
TOOLCHAIN_ARM64=../gcc-linaro-7.5.0-2019.12-x86_64_aarch64-linux-gnu/bin

编译:

./make.sh rk3399pro

编译成功:

五、编译内核

参考教程:http://opensource.rock-chips.com/wiki_Rockchip_Kernel#Configure_and_Build

下载源码

git clone https://github.com/rockchip-toybrick/kernel.git -b develop-4.19

内核较大,下载时间长。

修改编译工具链位置

vim Makefile

安装必需工具

sudo apt-get install flex
  • libssl-dev:包含libraries, header files and manpages,是openssl的一部分
sudo apt-get install libssl-dev
  • liblz4-tool:
sudo apt-get install liblz4-tool
  • genext2fs
sudo apt-get install genext2fs

编译

./make-linux.sh TB-RK3399ProD

编译成功之后得到.img镜像:

下载之后,系统正常运行。

以上是关于RK3399驱动开发笔记 | 01- 开发环境搭建的主要内容,如果未能解决你的问题,请参考以下文章

RK3399驱动开发 | 01 -RK3399 gpio的使用(用户态和设备树两种方式)

RK3399应用开发 | 02 - 基于 ubuntu core + xfce桌面搭建opengl环境

RK3399平台开发系列讲解(内核入门篇)1.33内核驱动流程

RK3399平台开发系列讲解(内核入门篇)1.46RTC驱动开发

RK3399驱动开发 | 10 - RK3399以太网gmac调试

RK3399驱动开发 | 10 - RK3399以太网gmac调试