0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

【风火轮YY3568开发板免费体验】第一章:开发环境搭建,系统替换为原生Linux

Red Linux 来源:Red Linux 作者:Red Linux 2023-08-09 18:11 次阅读

第一章:YY3568 内核开发环境搭建

本章主要记录如何替换 YY3568 出厂的安卓系统(开发起来有点不纯粹,我更习惯在原生的Linux上进行开发)。在替换系统的过程中,有一些要点和经验做一些记录:

  • YY3568 的 UART2 是 UART DEBUG。波特率为1500000
  • 使用 Loader 模式分区烧写镜像,涉及到使用parameter.txt查看分区信息,在Loader模式中根据这些分区信息进行烧写
  • 在 Debian源码中分别编译kernel,uboot以及buildroot对应的根文件系统
  • 在使用 buildroot 编译根文件系统的时候,出现了 su 命令切换 root 提示错误的问题,通过修改 buildroot 打包根文件系统的过程手动打包出来rootfs规避了这个问题。这里还简单描述下https://youyeetoo.cn/thread-6228-1-1.html

主要参考资料YY3568 wiki


1. 获取源码,编译

本次编译我使用的是在一台 Fedora35 的 PC机上编译 debian10 的源码,相关资料在风火轮的wiki中都有体现,具体链接是https://pan.baidu.com/s/1NynxVL6VnqPBSOVkRu8J7Q?pwd=t6cg

下载下来后根据编译方法进行编译就行了,我选择的是分别编译uboot,kernel和rootfs(buildroot)。具体流程是:

# 解压
cat YY3568-Debian10.tar.gz.0* | tar -xzv
cd YY3568-Debian10
git reset --hard HEAD
#编译
./build.sh YY3568-Debian10.mk
#./build.sh 这一步我没有执行,因为我担心编译太耗时
./build.sh uboot # 比较流畅,主要修改了几个配置,1. 修改 env 存储到 emmc 2. 设置 BOOT_DELAY 为 5,默认是0
./build.sh kernel # 比较流畅,就是耗时
./build.sh buildroot # 这一步特别耗费时间,并且还需要根据错误提示进行修错处理,我做的一些修改做了一个 patch 文件放在附件中,仅供参考
./build.sh firmware # 将需要烧写的文件存放到根目录的 rockdev 目录,这样方便烧写
#./build.sh updateimg # 这一步是打包成一个单独的 img,没有成功,所以采用了分区烧写

执行完 ./build.sh firmware 之后就可以看到 rockdev 目录下的内容

▸ ll rockdev/
lrwxrwxrwx red red  18 B  Wed Aug  9 14:30:44 2023  boot.img ⇒ ../kernel/boot.img
lrwxrwxrwx red red  41 B  Wed Aug  9 14:30:44 2023  MiniLoaderAll.bin ⇒ ../u-boot/rk356x_spl_loader_v1.13.112.bin
lrwxrwxrwx red red  44 B  Wed Aug  9 14:30:44 2023  misc.img ⇒ ../device/rockchip/rockimg/wipe_all-misc.img
.rw-rw-r-- red red  17 MB Wed Aug  9 14:30:44 2023  oem.img
drwxrwxr-x red red   0 B  Sat Aug  5 10:59:30 2023  pack
lrwxrwxrwx red red  96 B  Wed Aug  9 15:20:15 2023  parameter.txt ⇒ /home/red/Samba/debian_yy3568/YY3568-Debian10/device/rockchip/rk356x/parameter-buildroot-fit.txt
lrwxrwxrwx red red  64 B  Wed Aug  9 14:30:44 2023  recovery.img ⇒ ../buildroot/output/rockchip_rk356x_recovery/images/recovery.img
lrwxrwxrwx red red  54 B  Wed Aug  9 15:27:21 2023  rootfs.ext4 ⇒ ../buildroot/output/rockchip_rk3568/images/rootfs.ext2
lrwxrwxrwx red red  54 B  Wed Aug  9 14:30:44 2023  rootfs.img ⇒ ../buildroot/output/rockchip_rk3568/images/rootfs.ext2
lrwxrwxrwx red red  19 B  Wed Aug  9 14:30:44 2023  uboot.img ⇒ ../u-boot/uboot.img
.rw-rw-r-- red red  34 MB Tue Aug  8 17:32:15 2023  update.img
.rw-rw-r-- red red 4.3 MB Wed Aug  9 14:30:44 2023  userdata.img

可以看到这里很多是软链接,其中一个比较重要的 recovery.img 是没有的,这个文件没有会导致 uboot 和 kernel 不能正常工作,后来我从 YY3568-Debian10-xxxx.img中解包出来了 recovery.img。至此,所有需要的文件都准备好了。下面就开始准备分区烧录了。

2. 分区烧录文件

因为我在 Fedora 下没有打包出来一个完整的 img,所以就需要分区烧写(实际这样也方便,可以随时更新kernel,uboot或者rootfs,一般开发只用更新这些就可以)。这时候就出现了一个新的问题分区的地址该如何填写呢?通过查找文档,看到了一段描述:

parameter_tool.png

测试确实可以读出来分区信息,按照分区信息填写将文件烧录进去就可以了。

分区信息.png

3.引导启动

因为默认的 bootcmd 会首先尝试 boot_android, 所以可以修改 bootcmd 直接启动 boot_fit.加快引导。因为打包出来的 boot.img 是 FIT 的。

boot_fit.png

前面部分的关键引导日志如下,完整的我放到附件*附件:yy3568_log.zip中了。

[2023-08-09 17:22:00.491] U-Boot 2017.09 (Aug 09 2023 - 11:24:35 +0800)
[2023-08-09 17:22:00.491] 
[2023-08-09 17:22:00.491] Model: Rockchip RK3568 Evaluation Board
[2023-08-09 17:22:00.491] PreSerial: 2, raw, 0xfe660000
[2023-08-09 17:22:00.491] DRAM:  2 GiB
[2023-08-09 17:22:00.494] Sysmem: init
[2023-08-09 17:22:00.494] Relocation Offset: 7d343000
[2023-08-09 17:22:00.494] Relocation fdt: 7b9f8a80 - 7b9fecc8
[2023-08-09 17:22:00.539] CR: M/C/I
[2023-08-09 17:22:00.539] dwmmc@fe2b0000: 1, dwmmc@fe2c0000: 2, sdhci@fe310000: 0
[2023-08-09 17:22:00.601] Bootdev(atags): mmc 0
[2023-08-09 17:22:00.602] MMC0: HS200, 200Mhz
[2023-08-09 17:22:00.602] PartType: EFI
[2023-08-09 17:22:00.602] DM: v1
[2023-08-09 17:22:00.602] boot mode: None
[2023-08-09 17:22:00.620] FIT: no signed, no conf required
[2023-08-09 17:22:00.620] DTB: rk-kernel.dtb
[2023-08-09 17:22:00.620] HASH(c): OK
[2023-08-09 17:22:00.649] I2c0 speed: 100000Hz
[2023-08-09 17:22:00.649] vsel-gpios- not found! Error: -2
[2023-08-09 17:22:00.649] vdd_cpu init 900000 uV
[2023-08-09 17:22:00.649] PMIC:  RK8090 (on=0x40, off=0x00)
[2023-08-09 17:22:00.652] vdd_logic init 1100000 uV
[2023-08-09 17:22:00.659] vdd_gpu init 950000 uV
[2023-08-09 17:22:00.661] vdd_npu init 900000 uV
[2023-08-09 17:22:00.681] io-domain: OK
[2023-08-09 17:22:00.681] Could not find baseparameter partition
[2023-08-09 17:22:00.686] Model: Rockchip RK3568 EVB1 DDR4 V10 Board
[2023-08-09 17:22:00.686] ## Error: Can't overwrite "ethaddr"
[2023-08-09 17:22:00.686] ## Error inserting "ethaddr" variable, errno=1
[2023-08-09 17:22:00.686] ## Error: Can't overwrite "eth1addr"
[2023-08-09 17:22:00.686] ## Error inserting "eth1addr" variable, errno=1
[2023-08-09 17:22:00.686] ## Error: Can't overwrite "serial#"
[2023-08-09 17:22:00.687] ## Error inserting "serial#" variable, errno=1
[2023-08-09 17:22:00.688] Rockchip UBOOT DRM driver version: v1.0.1
[2023-08-09 17:22:00.695] VOP have 2 active VP
[2023-08-09 17:22:00.695] vp0 have layer nr:3[1 3 5 ], primary plane: 5
[2023-08-09 17:22:00.695] vp1 have layer nr:3[0 2 4 ], primary plane: 4
[2023-08-09 17:22:00.695] vp2 have layer nr:0[], primary plane: 0
[2023-08-09 17:22:00.695] Using display timing dts
[2023-08-09 17:22:00.695] dsi@fe060000:  detailed mode clock 51668 kHz, flags[8000000a]
[2023-08-09 17:22:00.702]     H: 1024 1184 1194 1354
[2023-08-09 17:22:00.702]     V: 0600 0612 0613 0636
[2023-08-09 17:22:00.702] bus_format: 100e
[2023-08-09 17:22:00.702] VOP update mode to: 1024x600p0, type: MIPI0 for VP1
[2023-08-09 17:22:00.702] rockchip_vop2_init: Failed to get hdmi0_phy_pll ret=-22
[2023-08-09 17:22:00.702] rockchip_vop2_init: Failed to get hdmi1_phy_pll ret=-22
[2023-08-09 17:22:00.702] VOP VP1 enable Smart0[500x501-     >500x501@262x49] fmt[1] addr[0x7dfb8000]
[2023-08-09 17:22:00.702] final DSI-Link bandwidth: 342 Mbps x 4
[2023-08-09 17:22:00.899] xfer: num: 2, addr: 0x50
[2023-08-09 17:22:01.024] xfer: num: 2, addr: 0x50
[2023-08-09 17:22:01.153] Monitor has basic audio support
[2023-08-09 17:22:01.153] can't find to match
[2023-08-09 17:22:01.153] Could not find baseparameter partition
[2023-08-09 17:22:01.153] mode:1920x1080
[2023-08-09 17:22:01.153] hdmi@fe0a0000:  detailed mode clock 148500 kHz, flags[5]
[2023-08-09 17:22:01.153]     H: 1920 2008 2052 2200
[2023-08-09 17:22:01.153]     V: 1080 1084 1089 1125
[20[2023-08-09 17:22:01.187]   dpll 780000 KHz
[2023-08-09 17:22:01.187]   gpll 1188000 KHz
[2023-08-09 17:22:01.187]   cpll 1000000 KHz
[2023-08-09 17:22:01.187]   npll 1200000 KHz
[2023-08-09 17:22:01.187]   vpll 620000 KHz
[2023-08-09 17:22:01.187]   hpll 148000 KHz
[2023-08-09 17:22:01.187]   ppll 200000 KHz
[2023-08-09 17:22:01.187]   armclk 1416000 KHz
[2023-08-09 17:22:01.187]   aclk_bus 150000 KHz
[2023-08-09 17:22:01.187]   pclk_bus 100000 KHz
[2023-08-09 17:22:01.187]   aclk_top_high 500000 KHz
[2023-08-09 17:22:01.187]   aclk_top_low 400000 KHz
[2023-08-09 17:22:01.187]   hclk_top 150000 KHz
[2023-08-09 17:22:01.187]   pclk_top 100000 KHz
[2023-08-09 17:22:01.187]   aclk_perimid 300000 KHz
[2023-08-09 17:22:01.187]   hclk_perimid 150000 KHz
[2023-08-09 17:22:01.187]   pclk_pmu 100000 KHz
[2023-08-09 17:22:01.187] Net:   eth1: ethernet@fe010000, eth0: ethernet@fe2a0000
[2023-08-09 17:22:01.187] Hit key to stop autoboot('CTRL+C'):  5  4  3  2  1  0 
[2023-08-09 17:22:06.186] ANDROID: reboot reason: "(none)"
[2023-08-09 17:22:06.186] optee api revision: 2.0
[2023-08-09 17:22:06.186] TEEC: Waring: Could not find security partition
[2023-08-09 17:22:06.186] Not AVB images, AVB skip
[2023-08-09 17:22:06.186] No valid android hdr
[2023-08-09 17:22:06.186] Android image load failed
[2023-08-09 17:22:06.186] Android boot failed, error -1.
[2023-08-09 17:22:06.186] ## Booting FIT Image at 0x79bae440 with size 0x01c49600
[2023-08-09 17:22:06.362] Fdt Ramdisk skip relocation
[2023-08-09 17:22:06.362] ## Loading kernel from FIT Image at 79bae440 ...
[2023-08-09 17:22:06.362]    Using 'conf' configuration
[2023-08-09 17:22:06.362] ## Verified-boot: 0
[2023-08-09 17:22:06.362]    Trying 'kernel' kernel subimage
[2023-08-09 17:22:06.362]      Description:  unavailable
[2023-08-09 17:22:06.362]      Type:         Kernel Image
[2023-08-09 17:22:06.362]      Compression:  uncompressed
[2023-08-09 17:22:06.362]      Data Start:   0x79bcf840
[2023-08-09 17:22:06.362]      Data Size:    29523976 Bytes = 28.2 MiB
[2023-08-09 17:22:06.362]      Architecture: AArch64
[2023-08-09 17:22:06.362]      OS:           Linux
[2023-08-09 17:22:06.362]      Load Address: 0x00280000
[2023-08-09 17:22:06.362]      Entry Point:  0x00280000
[2023-08-09 17:22:06.362]      Hash algo:    sha256
[2023-08-09 17:22:06.362]      Hash value:   2ddc540c7ac8498ec9fdb2f98f90e4789a963cf5056b813c479567eefc200785
[2023-08-09 17:22:06.362]    Verifying Hash Integrity ... sha256+ OK
[2023-08-09 17:22:06.568] ## Loading fdt from FIT Image at 79bae440 ...
[2023-08-09 17:22:06.568]    Using 'conf' configuration
[2023-08-09 17:22:06.568]    Trying 'fdt' fdt subimage
[2023-08-09 17:22:06.568]      Description:  unavailable
[2023-08-09 17:22:06.568]      Type:         Flat Device Tree
[2023-08-09 17:22:06.568]      Compression:  uncompressed
[2023-08-09 17:22:06.568]      Data Start:   0x79baec40
[2023-08-09 17:22:06.568]      Data Size:    134037 Bytes = 130.9 KiB
[2023-08-09 17:22:06.568]      Architecture: AArch64
[2023-08-09 17:22:06.568]      Load Address: 0x0a100000
[2023-08-09 17:22:06.568]      Hash algo:    sha256
[2023-08-09 17:22:06.568]      Hash value:   58e8f3ca2524e5848665ec35337f707bb704ff6e6c7c0a1dbfaa182bb4abb3b1
[2023-08-09 17:22:06.568]    Verifying Hash Integrity ... sha256+ OK
[2023-08-09 17:22:06.568]    Loading fdt from 0x0a100000 to 0x0a100000
[2023-08-09 17:22:06.568]    Booting using the fdt blob at 0x0a100000
[2023-08-09 17:22:06.568]    Loading Kernel Image from 0x79bcf840 to 0x00280000 ... OK
[2023-08-09 17:22:06.579]    kernel loaded at 0x00280000, end = 0x01ea8008
[2023-08-09 17:22:06.579]   'reserved-memory' ramoops@110000: addr=110000 size=f0000
[2023-08-09 17:22:06.579]    Using Device Tree in place at 000000000a100000, end 000000000a123b94
[2023-08-09 17:22:06.581] vp1 adjust cursor plane from 0 to 1
[2023-08-09 17:22:06.585] vp0, plane_mask:0x2a, primary-id:5, curser-id:1
[2023-08-09 17:22:06.588] vp1 adjust cursor plane from 1 to 0
[2023-08-09 17:22:06.588] vp1, plane_mask:0x15, primary-id:4, curser-id:0
[2023-08-09 17:22:06.588] vp2, plane_mask:0x0, primary-id:0, curser-id:-1
[2023-08-09 17:22:06.613] Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
[2023-08-09 17:22:06.613] Adding bank: 0x09400000 - 0x80000000 (size: 0x76c00000)
[2023-08-09 17:22:06.615] Total: 6193.945 ms
[2023-08-09 17:22:06.615] 
[2023-08-09 17:22:06.615] Starting kernel ...
[2023-08-09 17:22:06.615] 
[2023-08-09 17:22:06.618] [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
[2023-08-09 17:22:06.622] [    0.000000] Linux version 4.19.232 (red@fedora) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05), GNU ld (Linaro_Binutils-2017.05) 2.27.0.20161019) #2 SMP Tue Aug 8 16:53:48 CST 2023
[2023-08-09 17:22:06.622] [    0.000000] Machine model: Rockchip RK3568 EVB1 DDR4 V10 Board
[2023-08-09 17:22:06.622] [    0.000000] earlycon: uart8250 at MMIO32 0x00000000fe660000 (options '')
[2023-08-09 17:22:06.622] [    0.000000] bootconsole [uart8250] enabled
[2023-08-09 17:22:06.624] [    0.000000] cma: Reserved 16 MiB at 0x000000007ec00000
[2023-08-09 17:22:06.676] [    0.000000] psci: probing for conduit method from DT.
[2023-08-09 17:22:06.676] [    0.000000] psci: PSCIv1.1 detected in firmware.
[2023-08-09 17:22:01.187]   dpll 780000 KHz
[2023-08-09 17:22:01.187]   gpll 1188000 KHz
[2023-08-09 17:22:01.187]   cpll 1000000 KHz
[2023-08-09 17:22:01.187]   npll 1200000 KHz
[2023-08-09 17:22:01.187]   vpll 620000 KHz
[2023-08-09 17:22:01.187]   hpll 148000 KHz
[2023-08-09 17:22:01.187]   ppll 200000 KHz
[2023-08-09 17:22:01.187]   armclk 1416000 KHz
[2023-08-09 17:22:01.187]   aclk_bus 150000 KHz
[2023-08-09 17:22:01.187]   pclk_bus 100000 KHz
[2023-08-09 17:22:01.187]   aclk_top_high 500000 KHz
[2023-08-09 17:22:01.187]   aclk_top_low 400000 KHz
[2023-08-09 17:22:01.187]   hclk_top 150000 KHz
[2023-08-09 17:22:01.187]   pclk_top 100000 KHz
[2023-08-09 17:22:01.187]   aclk_perimid 300000 KHz
[2023-08-09 17:22:01.187]   hclk_perimid 150000 KHz
[2023-08-09 17:22:01.187]   pclk_pmu 100000 KHz
[2023-08-09 17:22:01.187] Net:   eth1: ethernet@fe010000, eth0: ethernet@fe2a0000
[2023-08-09 17:22:01.187] Hit key to stop autoboot('CTRL+C'):  5  4  3  2  1  0 
[2023-08-09 17:22:06.186] ANDROID: reboot reason: "(none)"
[2023-08-09 17:22:06.186] optee api revision: 2.0
[2023-08-09 17:22:06.186] TEEC: Waring: Could not find security partition
[2023-08-09 17:22:06.186] Not AVB images, AVB skip
[2023-08-09 17:22:06.186] No valid android hdr
[2023-08-09 17:22:06.186] Android image load failed
[2023-08-09 17:22:06.186] Android boot failed, error -1.
[2023-08-09 17:22:06.186] ## Booting FIT Image at 0x79bae440 with size 0x01c49600
[2023-08-09 17:22:06.362] Fdt Ramdisk skip relocation
[2023-08-09 17:22:06.362] ## Loading kernel from FIT Image at 79bae440 ...
[2023-08-09 17:22:06.362]    Using 'conf' configuration
[2023-08-09 17:22:06.362] ## Verified-boot: 0
[2023-08-09 17:22:06.362]    Trying 'kernel' kernel subimage
[2023-08-09 17:22:06.362]      Description:  unavailable
[2023-08-09 17:22:06.362]      Type:         Kernel Image
[2023-08-09 17:22:06.362]      Compression:  uncompressed
[2023-08-09 17:22:06.362]      Data Start:   0x79bcf840
[2023-08-09 17:22:06.362]      Data Size:    29523976 Bytes = 28.2 MiB
[2023-08-09 17:22:06.362]      Architecture: AArch64
[2023-08-09 17:22:06.362]      OS:           Linux
[2023-08-09 17:22:06.362]      Load Address: 0x00280000
[2023-08-09 17:22:06.362]      Entry Point:  0x00280000
[2023-08-09 17:22:06.362]      Hash algo:    sha256
[2023-08-09 17:22:06.362]      Hash value:   2ddc540c7ac8498ec9fdb2f98f90e4789a963cf5056b813c479567eefc200785
[2023-08-09 17:22:06.362]    Verifying Hash Integrity ... sha256+ OK
[2023-08-09 17:22:06.568] ## Loading fdt from FIT Image at 79bae440 ...
[2023-08-09 17:22:06.568]    Using 'conf' configuration
[2023-08-09 17:22:06.568]    Trying 'fdt' fdt subimage
[2023-08-09 17:22:06.568]      Description:  unavailable
[2023-08-09 17:22:06.568]      Type:         Flat Device Tree
[2023-08-09 17:22:06.568]      Compression:  uncompressed
[2023-08-09 17:22:06.568]      Data Start:   0x79baec40
[2023-08-09 17:22:06.568]      Data Size:    134037 Bytes = 130.9 KiB
[2023-08-09 17:22:06.568]      Architecture: AArch64
[2023-08-09 17:22:06.568]      Load Address: 0x0a100000
[2023-08-09 17:22:06.568]      Hash algo:    sha256
[2023-08-09 17:22:06.568]      Hash value:   58e8f3ca2524e5848665ec35337f707bb704ff6e6c7c0a1dbfaa182bb4abb3b1
[2023-08-09 17:22:06.568]    Verifying Hash Integrity ... sha256+ OK
[2023-08-09 17:22:06.568]    Loading fdt from 0x0a100000 to 0x0a100000
[2023-08-09 17:22:06.568]    Booting using the fdt blob at 0x0a100000
[2023-08-09 17:22:06.568]    Loading Kernel Image from 0x79bcf840 to 0x00280000 ... OK
[2023-08-09 17:22:06.579]    kernel loaded at 0x00280000, end = 0x01ea8008
[2023-08-09 17:22:06.579]   'reserved-memory' ramoops@110000: addr=110000 size=f0000
[2023-08-09 17:22:06.579]    Using Device Tree in place at 000000000a100000, end 000000000a123b94
[2023-08-09 17:22:06.581] vp1 adjust cursor plane from 0 to 1
[2023-08-09 17:22:06.585] vp0, plane_mask:0x2a, primary-id:5, curser-id:1
[2023-08-09 17:22:06.588] vp1 adjust cursor plane from 1 to 0
[2023-08-09 17:22:06.588] vp1, plane_mask:0x15, primary-id:4, curser-id:0
[2023-08-09 17:22:06.588] vp2, plane_mask:0x0, primary-id:0, curser-id:-1
[2023-08-09 17:22:06.613] Adding bank: 0x00200000 - 0x08400000 (size: 0x08200000)
[2023-08-09 17:22:06.613] Adding bank: 0x09400000 - 0x80000000 (size: 0x76c00000)
[2023-08-09 17:22:06.615] Total: 6193.945 ms
[2023-08-09 17:22:06.615] 
[2023-08-09 17:22:06.615] Starting kernel ...
[2023-08-09 17:22:06.615] 
[2023-08-09 17:22:06.618] [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x412fd050]
[2023-08-09 17:22:06.622] [    0.000000] Linux version 4.19.232 (red@fedora) (gcc version 6.3.1 20170404 (Linaro GCC 6.3-2017.05), GNU ld (Linaro_Binutils-2017.05) 2.27.0.20161019) #2 SMP Tue Aug 8 16:53:48 CST 2023
[2023-08-09 17:22:06.622] [    0.000000] Machine model: Rockchip RK3568 EVB1 DDR4 V10 Board
[2023-08-09 17:22:06.622] [    0.000000] earlycon: uart8250 at MMIO32 0x00000000fe660000 (options '')
[2023-08-09 17:22:06.622] [    0.000000] bootconsole [uart8250] enabled
[2023-08-09 17:22:06.624] [    0.000000] cma: Reserved 16 MiB at 0x000000007ec00000
[2023-08-09 17:22:06.676] [    0.000000] psci: probing for conduit method from DT.
[2023-08-09 17:22:06.676] [    0.000000] psci: PSCIv1.1 detected in firmware.
23-08-09 17:22:01.153] bus_format: 2025
[2023-08-09 17:22:01.153] VOP update mode to: 1920x1080p0, type: HDMI0 for VP0
[2023-08-09 17:22:01.153] rockchip_vop2_init: Failed to get hdmi0_phy_pll ret=-22
[2023-08-09 17:22:01.153] rockchip_vop2_init: Failed to get hdmi1_phy_pll ret=-22
[2023-08-09 17:22:01.153] VOP VP0 enable Smart1[500x501-     >500x501@710x289] fmt[1] addr[0x7dfb8000]
[2023-08-09 17:22:01.153] CEA mode used vic=17
[2023-08-09 17:22:01.153] final pixclk = 148000000 tmdsclk = 148000000
[2023-08-09 17:22:01.153] PHY powered down in 0 iterations
[2023-08-09 17:22:01.159] PHY PLL locked 1 iterations
[2023-08-09 17:22:01.159] PHY powered down in 0 iterations
[2023-08-09 17:22:01.187] PHY PLL locked 1 iterations
[2023-08-09 17:22:01.187] sink has audio support

再展示一些 weston 启动图片:

1100123804.jpg
957311104.jpg
1266071665.jpg

额外描述下为了顺利编译buildoroot,我做的一些修改(还有一些软件包的修改,根据编译提示错误修复就可以,这里就不再一一展示了):

diff --git a/buildroot/configs/rockchip_rk3568_defconfig b/buildroot/configs/rockchip_rk3568_defconfig
index fb532be..8efac66 100644
--- a/buildroot/configs/rockchip_rk3568_defconfig
+++ b/buildroot/configs/rockchip_rk3568_defconfig
@@ -12,8 +12,6 @@
 #include "gpu.config"
 #include "network.config"
 #include "ntfs.config"
-#include "qt.config"
-#include "qt_app.config"
 #include "video_mpp.config"
 #include "video_gst.config"
 #include "video_gst_rtsp.config"
diff --git a/buildroot/fs/common.mk b/buildroot/fs/common.mk
index a7b72f6..4294923 100644
--- a/buildroot/fs/common.mk
+++ b/buildroot/fs/common.mk
@@ -72,6 +72,7 @@ ROOTFS_$(2)_COMPRESS_EXT = .xz
 ROOTFS_$(2)_COMPRESS_CMD = xz -9 -C crc32 -c
 endif
 
+#echo "sudo chown -h -R 0:0 $$(TARGET_DIR)" > > $$(FAKEROOT_SCRIPT)
 $$(BINARIES_DIR)/rootfs.$(1): target-finalize $$(ROOTFS_$(2)_DEPENDENCIES)
 	@$$(call MESSAGE,"Generating root filesystem image rootfs.$(1)")
 	rm -rf $(FS_DIR)
diff --git a/buildroot/fs/cpio/cpio.mk b/buildroot/fs/cpio/cpio.mk
index aa4d947..c256e40 100644
--- a/buildroot/fs/cpio/cpio.mk
+++ b/buildroot/fs/cpio/cpio.mk
@@ -21,7 +21,7 @@ define ROOTFS_CPIO_ADD_INIT
 	fi
 endef
 
-PACKAGES_PERMISSIONS_TABLE += /dev/console c 622 0 0 5 1 - - -$(sep)
+#PACKAGES_PERMISSIONS_TABLE += /dev/console c 755 0 0 5 1 - - -$(sep)
 
 endif # BR2_ROOTFS_DEVICE_CREATION_STATIC

以及手动打包的脚本

#!/bin/sh
set -e
# 主要是修改这些文件的 owner
sudo chown -h -R 0:0 /home/red/Samba/debian_yy3568/YY3568-Debian10/buildroot/output/rockchip_rk3568/target
sudo chown -h -R 1000:1000 '/home/red/Samba/debian_yy3568/YY3568-Debian10/buildroot/output/rockchip_rk3568/target//var/run/dbus'

/home/red/Samba/debian_yy3568/YY3568-Debian10/buildroot/output/rockchip_rk3568/host/sbin/mkfs.ext4 red_yy3568.ext2 -d /home/red/Samba/debian_yy3568/YY3568-Debian10/buildroot/output/rockchip_rk3568/target -r 1 -N 0 -m 5 -L "" -O ^64bit  "512M"

至此就可以构建出来关键的rootfs,red_yy3568.ext2。

▸ du -h red_yy3568.ext2
283M    red_yy3568.ext2

审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11219

    浏览量

    208869
  • 开发板
    +关注

    关注

    25

    文章

    4933

    浏览量

    97157
  • 开发环境
    +关注

    关注

    1

    文章

    220

    浏览量

    16580
  • loader
    +关注

    关注

    0

    文章

    8

    浏览量

    7836
  • UART2
    +关注

    关注

    0

    文章

    6

    浏览量

    2335
  • RK3568
    +关注

    关注

    4

    文章

    495

    浏览量

    4919
  • Buildroot
    +关注

    关注

    1

    文章

    48

    浏览量

    1384
收藏 人收藏

    评论

    相关推荐

    如何在Linux系统实现屏幕旋转?触觉智能RK3568鸿蒙开发板演示

    本文介绍Linux系统实现屏幕旋转的方法,以解决产品形态的不同的展现方式,触觉智能EVB3568鸿蒙开发板演示,现已发布全新OpenHarmony5.0 Release固件!
    的头像 发表于 11-19 23:42 115次阅读
    如何在<b class='flag-5'>Linux</b><b class='flag-5'>系统</b>实现屏幕旋转?触觉智能RK<b class='flag-5'>3568</b>鸿蒙<b class='flag-5'>开发板</b>演示

    迅为瑞芯微RK3568开发板/核心《iTOP-3568开发板实时系统使用手册》

    iTOP-RK3568开发板使用手册上新,后续资料会不断更新,不断完善,帮助用户快速入门,大大提升研发速度。 iTOP-RK3568开发板支持了Preemption和Xenomai实时
    发表于 10-31 09:53

    迅为RK3568开发板/核心助力实时系统

    iTOP-RK3568开发板使用手册上新,后续资料会不断更新,不断完善,帮助用户快速入门,大大提升研发速度。 iTOP-RK3568开发板支持了Preemption和Xenomai实时
    发表于 09-26 11:29

    【北京迅为】iTOP-LS2K0500开发板快速使用编译环境ubuntu20.04第一章加载迅为提供 Ubuntu20.04

    【北京迅为】iTOP-LS2K0500开发板快速使用编译环境ubuntu20.04第一章加载迅为提供 Ubuntu20.04
    的头像 发表于 09-18 16:43 391次阅读
    【北京迅为】iTOP-LS2K0500<b class='flag-5'>开发板</b>快速使用编译<b class='flag-5'>环境</b>ubuntu20.04<b class='flag-5'>第一章</b>加载迅为提供 Ubuntu20.04

    信号完整性与电源完整性 第一章 概论

    电子发烧友网站提供《信号完整性与电源完整性 第一章 概论.pdf》资料免费下载
    发表于 08-09 14:49 1次下载

    RK3568开发板支持AMP双系统

    RK3568开发板支持AMP双系统
    的头像 发表于 06-04 15:33 626次阅读
    RK<b class='flag-5'>3568</b><b class='flag-5'>开发板</b>支持AMP双<b class='flag-5'>系统</b>

    YY3568多核异构(Linux+RT-Thread)--启动流程

    风火轮科技的YY3568开发板YY3568主板基于 Rockchip RK3568 芯片平台,四核 64位 Cortex-A55 核,
    的头像 发表于 03-07 08:41 2013次阅读
    <b class='flag-5'>YY3568</b>多核异构(<b class='flag-5'>Linux</b>+RT-Thread)--启动流程

    迅为RK3568开发板驱动开发指南-输入子系统

    迅为RK3568开发板驱动开发指南-输入子系统
    的头像 发表于 02-23 15:11 780次阅读
    迅为RK<b class='flag-5'>3568</b><b class='flag-5'>开发板</b>驱动<b class='flag-5'>开发</b>指南-输入子<b class='flag-5'>系统</b>

    fpga开发板linux开发板区别

    (Field-Programmable Gate Array)是种可编程逻辑器件,它可以通过编程改变硬件逻辑电路的功能和结构。FPGA采用了可编程的门极,可以根据需要重新配置内部电路,从而实现不同的功能和逻辑关系。而Linux开发板
    的头像 发表于 02-01 17:09 2065次阅读

    【youyeetoo X1 windows 开发板体验】少儿AI智能STEAM积木平台

    这次非常有幸,能够得到深圳风火轮youyeetoo X1的体验机会,感谢电子发烧友和风火轮。 在申请youyeetoo X1之前,已经通过风火轮的官方WiKi做过了下了解,官方的介绍
    发表于 02-01 00:20

    【youyeetoo X1 windows 开发板体验】基于ROS开发的LIO系统——项目计划+前言开箱

    前言 很荣幸有机会参与到我们电子发烧友论坛平台的试用活动,也感谢深圳风火轮科技提供了这次宝贵的机会!提供了youyeetoo X1 windows这么款优秀开发板。闲话少说,我们快
    发表于 01-26 17:58

    【youyeetoo X1 windows 开发板体验】支持语音控制的AIoT智能终端设计

    感谢电子发烧友和深圳风火轮科技的信任,本次参加youyeetoo X1 Windows 开发板的评测。 开发板特点 youyeetoo X1 是款由深圳
    发表于 01-26 16:32

    BQ3568开发板 RK3568鸿蒙系统主板

    BQ3568_使用说明_开发板详情
    的头像 发表于 01-10 17:06 553次阅读
    BQ<b class='flag-5'>3568</b><b class='flag-5'>开发板</b> RK<b class='flag-5'>3568</b>鸿蒙<b class='flag-5'>系统</b>主板

    风火轮科技第三款开发板youyeetoo R1简介

    在2023年的尾声之际,风火轮科技如约而至,再次为我们带来惊喜。继前两款备受赞誉的开发板之后,他们再次推出了全新的第三款开发板--youyeetoo R1,为科技领域注入股清新的活力
    的头像 发表于 01-02 14:08 1335次阅读
    <b class='flag-5'>风火轮</b>科技第三款<b class='flag-5'>开发板</b>youyeetoo R1简介

    使用YY3568开发板部署AI能力

    YY3568开发板是 「风火轮科技」 基于Rockchip RK3568 芯片平台设计的开发板,四核 64Cortex-A55 核,主频最高
    的头像 发表于 11-28 10:59 1966次阅读
    使用<b class='flag-5'>YY3568</b><b class='flag-5'>开发板</b>部署AI能力