开发笔记.md 4.5 KB

1.修改ubuntu的root密码

sudo passwd root

2.vim安装

vim apt install vim

3.按照ssh服务 {

sudo apt update
sudo apt install openssh-server
启动ssh
sudo systemctl start ssh
开机自启
sudo systemctl enable ssh
防火墙设置(可选)
sudo ufw allow ssh
开启root登录
sudo vim /etc/ssh/sshd_config
PermitRootLogin prohibit-password 找到这个,去掉前面的#,proht...改为yes
重启ssh
sudo systemctl restart ssh

} 4.换源

sudo vim /etc/apt/sources.list
将里面内容填入该文件中
{
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-updates main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-backports main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-security main restricted universe multiverse
    deb https://mirrors.tuna.tsinghua.edu.cn/ubuntu/ bionic-proposed main restricted universe multiverse
}

5.开发环境搭建

sudo apt install gawk wget git diffstat unzip 
sudo apt install texinfo gcc-multilib build-essential chrpath socat 
sudo apt install libsdl1.2-dev xterm ncurses-dev lzop libelf-dev make
sudo apt-get install git ssh make gcc g++ libssl-dev liblz4-tool
sudo apt-get install expect patchelf chrpath gawk texinfo diffstat binfmt-support
sudo apt-get install qemu-user-static live-build bison flex fakeroot cmake
sudo apt-get install gcc-multilib g++-multilib unzip device-tree-compiler ncurses-dev libncurses5-dev

6.泰山派sdk

解压出来的.repo包执行下面命令
.repo/repo/repo sync -l -j88
如果报错:/usr/bin/env: ‘python’: No such file or director
apt-get install repo

7.编译内核

①到解压根目录下执行
    ./build.sh lunch 然后选择3 tspi-v10.mk  || ./build.sh device/rockship/rk356x/BoardConfig-rk3566-tspi-v10.mk
②选择buildroot系统
    export RK_ROOTFS_SYSTEM=buildroot
③编译
    两种选择,
        编译全部:包括rootfiles,时间长(几个小时),中间易报错。
        仅编译内核:学习设备树或驱动阶段够用,大概半小时,跳过视频教程的docker过程。
    ./build.sh all || ./build.sh kernel

8.泰山派操作手册网址

https://lceda001.feishu.cn/wiki/Da5owUV4dipiqUkZycbcxckinvc

9.vscode ssh连接主机

root@192.168.xxx.xxxx

10.瑞芯微烧录工具,分散烧录

网址:https://lceda001.feishu.cn/wiki/Da5owUV4dipiqUkZycbcxckinvc
第三章,系统SDK编译,下载,分散镜像
空白区域右键,导入
![alt text](image.png)

11.编译好后

./mkfirmware.sh  //将各种镜像复制到rock那个文件夹下
./build.sh updateimg

12.rockdev文件夹中会生成update.img

![alt text](image-1.png)

13.adb 连接(单独烧录跳转18点)

烧录好后,设备会被识别为adb设备。
这个时候,可以通过adb连接调试
![alt text](image-2.png)

14.设备树文件

立创给我们定好了一个用户设备树
tspi-rk3566-user-v10-linux.dts
![alt text](image-3.png)

15.驱动文件

立创给我们定好了一个led驱动
leds-gpio.c
![alt text](image-4.png)

16.驱动和设备配对

通过compatible与设备树配对
![alt text](image-5.png)

17.新增驱动,并编译

将这两个文件,放到leds-gpio.c同级目录下
![img.png](img.png)
然后到linux中执行,
./build.sh kernel
如果出现下面的这一行,说明编译成功。否则驱动有错误,请检查
![img_1.png](img_1.png)

18.烧录(单独烧录,适用于只编译linux kerenl(如wsl环境))(注意:烧录的是boot.img,不是uboot.img,吃了很多亏)

第12步,已经生成update.img
同时也生成了boot.img
![img_5.png](img_5.png)
将这个文件复制出来。
按图所示,勾选这一栏,并选择你刚刚复制出来的boot.img
![img_2.png](img_2.png)
如果烧录过update.img。会进入adb模式。
长按复位按钮,同事点按boot按钮,会进入loard模式。
![img_3.png](img_3.png)
这样就可以烧录了。
由于我们的驱动目前还没有绑定设备树,也没编写自动注册驱动程序。所以,目前需要手动注册。但是手动注册不是我们目的,后续直接用设备树进行注册。