RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【風(fēng)火輪YY3568開發(fā)板免費(fèi)體驗(yàn)】第一章:開發(fā)環(huán)境搭建,系統(tǒng)替換為原生Linux

Red Linux ? 來源:Red Linux ? 作者:Red Linux ? 2023-08-09 18:11 ? 次閱讀

第一章:YY3568 內(nèi)核開發(fā)環(huán)境搭建

本章主要記錄如何替換 YY3568 出廠的安卓系統(tǒng)(開發(fā)起來有點(diǎn)不純粹,我更習(xí)慣在原生的Linux上進(jìn)行開發(fā))。在替換系統(tǒng)的過程中,有一些要點(diǎn)和經(jīng)驗(yàn)做一些記錄:

  • YY3568 的 UART2 是 UART DEBUG。波特率為1500000
  • 使用 Loader 模式分區(qū)燒寫鏡像,涉及到使用parameter.txt查看分區(qū)信息,在Loader模式中根據(jù)這些分區(qū)信息進(jìn)行燒寫
  • 在 Debian源碼中分別編譯kernel,uboot以及buildroot對應(yīng)的根文件系統(tǒng)
  • 在使用 buildroot 編譯根文件系統(tǒng)的時(shí)候,出現(xiàn)了 su 命令切換 root 提示錯誤的問題,通過修改 buildroot 打包根文件系統(tǒng)的過程手動打包出來rootfs規(guī)避了這個問題。這里還簡單描述下https://youyeetoo.cn/thread-6228-1-1.html

主要參考資料YY3568 wiki


1. 獲取源碼,編譯

本次編譯我使用的是在一臺 Fedora35 的 PC機(jī)上編譯 debian10 的源碼,相關(guān)資料在風(fēng)火輪的wiki中都有體現(xiàn),具體鏈接是https://pan.baidu.com/s/1NynxVL6VnqPBSOVkRu8J7Q?pwd=t6cg

下載下來后根據(jù)編譯方法進(jìn)行編譯就行了,我選擇的是分別編譯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 這一步我沒有執(zhí)行,因?yàn)槲覔?dān)心編譯太耗時(shí)
./build.sh uboot # 比較流暢,主要修改了幾個配置,1. 修改 env 存儲到 emmc 2. 設(shè)置 BOOT_DELAY 為 5,默認(rèn)是0
./build.sh kernel # 比較流暢,就是耗時(shí)
./build.sh buildroot # 這一步特別耗費(fèi)時(shí)間,并且還需要根據(jù)錯誤提示進(jìn)行修錯處理,我做的一些修改做了一個 patch 文件放在附件中,僅供參考
./build.sh firmware # 將需要燒寫的文件存放到根目錄的 rockdev 目錄,這樣方便燒寫
#./build.sh updateimg # 這一步是打包成一個單獨(dú)的 img,沒有成功,所以采用了分區(qū)燒寫

執(zhí)行完 ./build.sh firmware 之后就可以看到 rockdev 目錄下的內(nèi)容

? 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 是沒有的,這個文件沒有會導(dǎo)致 uboot 和 kernel 不能正常工作,后來我從 YY3568-Debian10-xxxx.img中解包出來了 recovery.img。至此,所有需要的文件都準(zhǔn)備好了。下面就開始準(zhǔn)備分區(qū)燒錄了。

2. 分區(qū)燒錄文件

因?yàn)槲以?Fedora 下沒有打包出來一個完整的 img,所以就需要分區(qū)燒寫(實(shí)際這樣也方便,可以隨時(shí)更新kernel,uboot或者rootfs,一般開發(fā)只用更新這些就可以)。這時(shí)候就出現(xiàn)了一個新的問題分區(qū)的地址該如何填寫呢?通過查找文檔,看到了一段描述:

parameter_tool.png

測試確實(shí)可以讀出來分區(qū)信息,按照分區(qū)信息填寫將文件燒錄進(jìn)去就可以了。

分區(qū)信息.png

3.引導(dǎo)啟動

因?yàn)槟J(rèn)的 bootcmd 會首先嘗試 boot_android, 所以可以修改 bootcmd 直接啟動 boot_fit.加快引導(dǎo)。因?yàn)榇虬鰜淼?boot.img 是 FIT 的。

boot_fit.png

前面部分的關(guān)鍵引導(dǎo)日志如下,完整的我放到附件*附件: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,我做的一些修改(還有一些軟件包的修改,根據(jù)編譯提示錯誤修復(fù)就可以,這里就不再一一展示了):

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"

至此就可以構(gòu)建出來關(guān)鍵的rootfs,red_yy3568.ext2。

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

審核編輯 黃宇

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報(bào)投訴
  • Linux
    +關(guān)注

    關(guān)注

    87

    文章

    11292

    瀏覽量

    209323
  • 開發(fā)板
    +關(guān)注

    關(guān)注

    25

    文章

    5032

    瀏覽量

    97371
  • 開發(fā)環(huán)境
    +關(guān)注

    關(guān)注

    1

    文章

    225

    瀏覽量

    16609
  • loader
    +關(guān)注

    關(guān)注

    0

    文章

    8

    瀏覽量

    7841
  • UART2
    +關(guān)注

    關(guān)注

    0

    文章

    6

    瀏覽量

    2343
  • RK3568
    +關(guān)注

    關(guān)注

    4

    文章

    514

    瀏覽量

    5034
  • Buildroot
    +關(guān)注

    關(guān)注

    1

    文章

    48

    瀏覽量

    1394
收藏 人收藏

    評論

    相關(guān)推薦

    瑞芯微主板/開發(fā)板Linux系統(tǒng)播放音頻方法,觸覺智能RK3562開發(fā)板演示

    本文介紹瑞芯微方案主板/開發(fā)板Linux系統(tǒng)播放音頻的方法,觸覺智能RK3562開發(fā)板演示,通用RK3566、RK3568、RK3588等
    的頭像 發(fā)表于 12-13 11:40 ?179次閱讀
    瑞芯微主板/<b class='flag-5'>開發(fā)板</b><b class='flag-5'>Linux</b><b class='flag-5'>系統(tǒng)</b>播放音頻方法,觸覺智能RK3562<b class='flag-5'>開發(fā)板</b>演示

    RK3568內(nèi)置MCU開發(fā)介紹之

    A55(下文簡稱AP)和1個RISCV(下文簡稱MCU)。 硬件準(zhǔn)備 首先介紹下硬件。主板為風(fēng)火輪科技的YY3568開發(fā)板,主控RK3568
    的頭像 發(fā)表于 12-01 16:09 ?382次閱讀
    RK<b class='flag-5'>3568</b>內(nèi)置MCU<b class='flag-5'>開發(fā)</b>介紹之<b class='flag-5'>一</b>

    《RISC-V 體系結(jié)構(gòu)編程與實(shí)踐(第2版)》第一章

    很佩服本叔,什么都懂,還學(xué)的挺深。 講的邏輯很順,也說明笨叔知道是什么,也知道為什么這么設(shè)計(jì)。 閱讀第一章,其內(nèi)容較少,但是較重要。 基于款芯片的開發(fā),講了三種:裸機(jī)開發(fā),基于操作
    發(fā)表于 11-27 20:05

    如何在Linux系統(tǒng)實(shí)現(xiàn)屏幕旋轉(zhuǎn)?觸覺智能RK3568鴻蒙開發(fā)板演示

    本文介紹Linux系統(tǒng)實(shí)現(xiàn)屏幕旋轉(zhuǎn)的方法,以解決產(chǎn)品形態(tài)的不同的展現(xiàn)方式,觸覺智能EVB3568鴻蒙開發(fā)板演示,現(xiàn)已發(fā)布全新OpenHarmony5.0 Release固件!
    的頭像 發(fā)表于 11-19 23:42 ?275次閱讀
    如何在<b class='flag-5'>Linux</b><b class='flag-5'>系統(tǒng)</b>實(shí)現(xiàn)屏幕旋轉(zhuǎn)?觸覺智能RK<b class='flag-5'>3568</b>鴻蒙<b class='flag-5'>開發(fā)板</b>演示

    迅為瑞芯微RK3568開發(fā)板/核心《iTOP-3568開發(fā)板實(shí)時(shí)系統(tǒng)使用手冊》

    iTOP-RK3568開發(fā)板使用手冊上新,后續(xù)資料會不斷更新,不斷完善,幫助用戶快速入門,大大提升研發(fā)速度。 iTOP-RK3568開發(fā)板支持了Preemption和Xenomai實(shí)時(shí)
    發(fā)表于 10-31 09:53

    迅為RK3568開發(fā)板/核心助力實(shí)時(shí)系統(tǒng)!

    iTOP-RK3568開發(fā)板使用手冊上新,后續(xù)資料會不斷更新,不斷完善,幫助用戶快速入門,大大提升研發(fā)速度。 iTOP-RK3568開發(fā)板支持了Preemption和Xenomai實(shí)時(shí)
    發(fā)表于 09-26 11:29

    【北京迅為】iTOP-LS2K0500開發(fā)板快速使用編譯環(huán)境ubuntu20.04第一章加載迅為提供 Ubuntu20.04

    【北京迅為】iTOP-LS2K0500開發(fā)板快速使用編譯環(huán)境ubuntu20.04第一章加載迅為提供 Ubuntu20.04
    的頭像 發(fā)表于 09-18 16:43 ?455次閱讀
    【北京迅為】iTOP-LS2K0500<b class='flag-5'>開發(fā)板</b>快速使用編譯<b class='flag-5'>環(huán)境</b>ubuntu20.04<b class='flag-5'>第一章</b>加載迅為提供 Ubuntu20.04

    信號完整性與電源完整性 第一章 概論

    電子發(fā)燒友網(wǎng)站提供《信號完整性與電源完整性 第一章 概論.pdf》資料免費(fèi)下載
    發(fā)表于 08-09 14:49 ?1次下載

    RK3568開發(fā)板支持AMP雙系統(tǒng)

    RK3568開發(fā)板支持AMP雙系統(tǒng)
    的頭像 發(fā)表于 06-04 15:33 ?706次閱讀
    RK<b class='flag-5'>3568</b><b class='flag-5'>開發(fā)板</b>支持AMP雙<b class='flag-5'>系統(tǒng)</b>

    YY3568多核異構(gòu)(Linux+RT-Thread)--啟動流程

    風(fēng)火輪科技的YY3568開發(fā)板。 YY3568主板基于 Rockchip RK3568 芯片平臺,四核 64位 Cortex-A55 核,
    的頭像 發(fā)表于 03-07 08:41 ?2300次閱讀
    <b class='flag-5'>YY3568</b>多核異構(gòu)(<b class='flag-5'>Linux</b>+RT-Thread)--啟動流程

    迅為RK3568開發(fā)板驅(qū)動開發(fā)指南-輸入子系統(tǒng)

    迅為RK3568開發(fā)板驅(qū)動開發(fā)指南-輸入子系統(tǒng)
    的頭像 發(fā)表于 02-23 15:11 ?861次閱讀
    迅為RK<b class='flag-5'>3568</b><b class='flag-5'>開發(fā)板</b>驅(qū)動<b class='flag-5'>開發(fā)</b>指南-輸入子<b class='flag-5'>系統(tǒng)</b>

    【youyeetoo X1 windows 開發(fā)板體驗(yàn)】少兒AI智能STEAM積木平臺

    這次非常有幸,能夠得到深圳風(fēng)火輪youyeetoo X1的體驗(yàn)機(jī)會,感謝電子發(fā)燒友和風(fēng)火輪。 在申請youyeetoo X1之前,已經(jīng)通過風(fēng)火輪的官方WiKi做過了下了解,官方的介紹
    發(fā)表于 02-01 00:20

    【youyeetoo X1 windows 開發(fā)板體驗(yàn)】基于ROS開發(fā)的LIO系統(tǒng)——項(xiàng)目計(jì)劃+前言開箱

    前言 很榮幸有機(jī)會參與到我們電子發(fā)燒友論壇平臺的試用活動,也感謝深圳風(fēng)火輪科技提供了這次寶貴的機(jī)會!提供了youyeetoo X1 windows這么款優(yōu)秀開發(fā)板。閑話少說,我們快
    發(fā)表于 01-26 17:58

    【youyeetoo X1 windows 開發(fā)板體驗(yàn)】支持語音控制的AIoT智能終端設(shè)計(jì)

    感謝電子發(fā)燒友和深圳風(fēng)火輪科技的信任,本次參加youyeetoo X1 Windows 開發(fā)板的評測。 開發(fā)板特點(diǎn) youyeetoo X1 是款由深圳
    發(fā)表于 01-26 16:32

    風(fēng)火輪科技第三款開發(fā)板youyeetoo R1簡介

    在2023年的尾聲之際,風(fēng)火輪科技如約而至,再次為我們帶來驚喜。繼前兩款備受贊譽(yù)的開發(fā)板之后,他們再次推出了全新的第三款開發(fā)板--youyeetoo R1,為科技領(lǐng)域注入股清新的活力
    的頭像 發(fā)表于 01-02 14:08 ?1395次閱讀
    <b class='flag-5'>風(fēng)火輪</b>科技第三款<b class='flag-5'>開發(fā)板</b>youyeetoo R1簡介
    RM新时代网站-首页