RK3566-移植5.10内核&Ubuntu22.04
说明记录了本人利用泰山派(RK3566)作为平台并且成功移植5.10.160版本kernel和ubuntu22.04,并且成功配置&毗连网络的完备过程。
本文章所用ubuntu下载地点:ubuntu-cdimage-ubuntu-base-releases-22.04-release安装包下载_开源镜像站-阿里云
本文章所用内核下载地点:
Rockchip Kernel - Rockchip open source Document
文件体系
配置Ubuntu
解压文件体系(ubuntu22.04)
root@ubuntu:/home/zq/Desktop# mkdir ubuntu
root@ubuntu:/home/zq/Desktop# mv ubuntu-base-22.04-base-arm64.tar.gzubuntu
root@ubuntu:/home/zq/Desktop# cd ubuntu/
root@ubuntu:/home/zq/Desktop/ubuntu# tar -xzvf ubuntu-base-22.04-base-arm64.tar.gz cd 到kernel目录,复制WIFI固件到ubuntu
root@ubuntu:/home/zq/Desktop/ubuntu# cp -p ../external/rkwifibt/firmware/broadcom/all/wifi/ lib/firmware/ 查看固件
root@ubuntu:/home/zq/Desktop/Release/kernel# ls lib/firmware/
clm_bcm43752a2_ag.blob fw_bcm43455c0_ag.bin nvram_ap6212a_ap.txtnvram_AP6493.txt
clm_bcm43752a2_pcie_ag.blobfw_bcm43455c0_ag_mfg.bin nvram_ap6212a_cy.txtnvram_awnb108.txt
fw_awnb108_ap.bin fw_bcm43456c5_ag.bin nvram_ap6212a.txt nvram_azw256.txt
fw_awnb108.bin fw_bcm43456c5_ag_mfg.bin nvram_ap6212.txt nvram_azw372.txt
fw_bcm40181a2.bin fw_bcm4354a1_ag.bin nvram_ap6233f.txt nvram_B23.txt
fw_bcm40181a2_mfg.bin fw_bcm4354a1_ag_mfg.bin nvram_AP6234.txt nvram_cyw43438.txt
fw_bcm40183b2_ag.bin fw_bcm4356a2_ag.bin nvram_ap6236.txt nvram_cyw43455.txt
fw_bcm40183b2.bin fw_bcm4356a2_ag_mfg.bin nvram_ap6255.txt nvram_RK901.txt
fw_bcm43013c1_ag.bin fw_bcm4359c0_ag.bin nvram_ap6256.txt nvram_RK903_26M.cal
fw_bcm43013c1_ag_mfg.bin fw_bcm4359c0_ag_mfg.bin nvram_AP6275P.txt nvram_RK903.cal
fw_bcm43241b4_ag.bin fw_bcm43752a2_ag.bin nvram_ap6275s.txt nvram_RK903.txt
fw_bcm4330.bin fw_bcm43752a2_ag_mfg.bin nvram_ap62x2.txt rk912_fw.bin
fw_bcm43341b0_ag.bin fw_bcm43752a2_pcie_ag.bin nvram_AP6330.txt rk912_patch.bin
fw_bcm4334b1_ag.bin fw_bcm43752a2_pcie_ag_mfg.binnvram_AP6335.txt rk912_patch_cal.bin
fw_bcm4339a0_ag.bin fw_cyw43438.bin nvram_ap6354.txt wifi_efuse_8189e.map
fw_bcm4339a0_ag_mfg.bin fw_cyw43455.bin nvram_ap6356s.txt wifi_efuse_8723bs-vq0.map
fw_bcm43436b0.bin nvram_4330_oob.txt nvram_ap6356.txt wifi_efuse_8723cs.map
fw_bcm43436b0_mfg.bin nvram_4330.txt nvram_ap6398s.txt wifi_efuse_8723ds.map
fw_bcm43438a0.bin nvram_ap6181.txt nvram_AP6441.txt
fw_bcm43438a1.bin nvram_AP6210_24M.txt nvram_ap6452.txt
fw_bcm43438a1_mfg.bin nvram_AP6210.txt nvram_AP6476.txt
给ubuntu22.04_base arm64版本换源,只须要把对应的20.04的版本代号变为22.04即可
参考我前面的博客为ARM64架构移植Ubuntu20.04换源的发现_ubuntu20 arm源-CSDN博客https://blog.csdn.net/qq_65198598/article/details/145145101?spm=1001.2014.3001.5501https://blog.csdn.net/qq_65198598/article/details/145145101?spm=1001.2014.3001.5501https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83Ahttps://blog.csdn.net/qq_65198598/article/details/145145101?spm=1001.2014.3001.5501
Ubuntu各版本代号版本号代号23.10mantic23.04lunar22.10kinetic22.04jammy21.10impish21.04hirsute20.10groovy20.04focal19.10eoan19.04disco18.10cosmic18.04bionic
为Ubuntu更新软件
参考:基于 RK3588 构建 Ubuntu 22.04 根文件体系_rk3588 ubuntu-CSDN博客https://blog.csdn.net/qq_34117760/article/details/130909986https://blog.csdn.net/qq_34117760/article/details/130909986https://csdnimg.cn/release/blog_editor_html/release2.3.7/ckeditor/plugins/CsdnLink/icons/icon-default.png?t=O83Ahttps://blog.csdn.net/qq_34117760/article/details/130909986
配置好网络过后,安装须要软件:我安装的有:
#必要
apt install vim bash-completion net-tools iputils-ping ifupdown ethtool ssh rsync udev htop rsyslog curl openssh-server apt-utils dialog nfs-common psmisc language-pack-en-base sudo kmod apt-transport-https -y
#开发
apt install gcc g++ make cmake ninja-build build-essential ffmpeg libopencv-dev libv4l-dev v4l-utils yavta -y
#网络
apt install bluetooth* bluez* blueman* wireless-tools network-manager -y 内核
配置内核
修改kernel中的Makefile为自己的编译器(kernel/Makefile里)
https://i-blog.csdnimg.cn/direct/cb506cbb4c024d7bb23f182226fc18b8.png
利用rockchip的默认config开始配置,这里只演示配置wifi
root@ubuntu:/home/zq/Desktop/Release/kernel# make menuconfig rockchip_linux_defconfig 进入menuconfig,搜索“ap6”,如图选择/输入路径
https://i-blog.csdnimg.cn/direct/aeb43b7ae9044e858b8c421479095cf9.png
注意须要选择的是SDIO接口并且 编辑精确的固件路径(ap6212a的固件),若固件路径不精确会导致wlan0开启失败从而不显示接口。
别的一个点是虽然在DTS里面写的模块是AP6212并且原理图上也是AP6212,但是现实上的固件加载的是AP6212A才可以正常运行,加载AP6212的固件无法运行!
编译内核&模块
开始编译内核
root@ubuntu:/home/zq/Desktop/Release# ./build.shkernel
等待七七四十九天之后编译好了内核
然后开始编译模块
make modules 等待七七四十九天之后把编译好的模块安装到即将烧录到的文件体系rootfs中
make ARCH=arm64 modules_install INSTALL_MOD_PATH=../ubuntu 安装modules过后可以看到目录下有对应内核的模块目录
https://i-blog.csdnimg.cn/direct/c013695188c342d7a20630aeff4aa9a7.png
烧录&测试
调解内存分区(选做)
烧录本次文件体系&内核后利用立创原提供的内存分区文件(parameter.txt)烧录后的巨细
https://i-blog.csdnimg.cn/direct/417d11d6e64548638a888254cc7180a0.png
可以看到这里的空间已经是相当极限了,基本上除了烧录文件体系什么都干不了
为了使得烧录过后的文件体系内存大一些,可以参考
泰山派调解分区巨细 - 哔哩哔哩
调解分区并且下载(记得利用 以下命令调解)过后可以看到
resize2fs /dev/mmcblk0p6 https://i-blog.csdnimg.cn/direct/18a566e39db746e4a14a6db0286cfbef.png
内存实现了质的飞跃
烧录过后进入体系
查询版本
显示文件体系版本利用
lsb_release -a 显示内核版本利用
unema -r 网络测试
查抄网络接口是否检测到
root@localhost:/home/zq# ifconfig
lo: flags=73<UP,LOOPBACK,RUNNING>mtu 65536
inet 127.0.0.1netmask 255.0.0.0
inet6 ::1prefixlen 128scopeid 0x10<host>
looptxqueuelen 1000(Local Loopback)
RX packets 276bytes 24350 (24.3 KB)
RX errors 0dropped 0overruns 0frame 0
TX packets 276bytes 24350 (24.3 KB)
TX errors 0dropped 0 overruns 0carrier 0collisions 0
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>mtu 1500
inet6 2409:8a0c:221f:a80:338e:d9d2:50c0:8a95prefixlen 64scopeid 0x0<global>
inet6 2409:8a0c:221f:a80:d14a:5f82:9b6c:1485prefixlen 64scopeid 0x0<global>
inet6 fe80::e8df:7d96:1f6:14e1prefixlen 64scopeid 0x20<link>
ether b8:13:32:b0:47:90txqueuelen 1000(Ethernet)
RX packets 47bytes 6071 (6.0 KB)
RX errors 0dropped 3overruns 0frame 0
TX packets 65bytes 8910 (8.9 KB)
TX errors 0dropped 0 overruns 0carrier 0collisions 0
检测网络过后搜索wifi
root@localhost:/home/zq# nmcli dev wifi list 可以看到雷同于
https://i-blog.csdnimg.cn/direct/6a77c99fbcdf4aa297ac22a3d0cc9aa7.png
然后毗连WIFI
sudo nmcli dev wifi connect "WIFI名字" password "密码" ifname wlan0 然后就可以看到wlan0下面有了IP地点,说明已经毗连上了
https://i-blog.csdnimg.cn/direct/09afb5e3d738402baaa641feb143dcd5.png
尝试安装一下 neofetch
root@localhost:/home/zq# sudo apt install neofetch
WUHU成功
https://i-blog.csdnimg.cn/direct/556996ed3b30456593708645d62f7344.png
配置过程还有一些比力好的参考文章:
泰山派移植Ubuntu22.04 - Zhh Blog基于 RK3588 构建 Ubuntu 22.04 根文件体系_rk3588 ubuntu-CSDN博客立创泰山派学习01--ubuntn体系的WIFI配置及SSH的安装 - zbl1118 - 博客园make modules 和 make modules_install-CSDN博客
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
页:
[1]