飛凌嵌入式基于瑞芯微RK3562系列處理器打造的FET3562J-C全國(guó)產(chǎn)核心板,是一款專為工業(yè)自動(dòng)化及消費(fèi)類電子設(shè)備設(shè)計(jì)的產(chǎn)品,憑借其強(qiáng)大的功能和靈活性,自上市以來得到了各行業(yè)客戶的廣泛關(guān)注。本文將詳細(xì)介紹如何啟動(dòng)并測(cè)試RK3562J處理器的MCU,通過實(shí)際操作步驟,幫助各位工程師朋友更好地了解這款芯片。
1、RK3562J處理器概述
RK3562J處理器采用了4*Cortex-A53@1.8GHz+Cortex-M0@200MHz架構(gòu)。其中,4個(gè)Cortex-A53核心作為主要核心,負(fù)責(zé)處理復(fù)雜的操作系統(tǒng)任務(wù)和應(yīng)用程序;Cortex-M0核則作為輔助核心,運(yùn)行裸核系統(tǒng),能夠快速響應(yīng)和控制,實(shí)現(xiàn)實(shí)時(shí)性要求較高的任務(wù)。
2、啟動(dòng)M0核固件的前期準(zhǔn)備
目前,飛凌嵌入式OK3562J-C開發(fā)板上默認(rèn)并沒有啟動(dòng)M0核固件。因此,我們需要通過一系列步驟來配置和啟動(dòng)M0核。以下是具體的操作步驟:
1. U-Boot修改
理論上我們需要打開AMP(非對(duì)稱多處理)編譯宏,但由于飛凌嵌入式OK3562J-C開發(fā)板的U-Boot已默認(rèn)配置AMP功能,因此用戶無需進(jìn)行任何U-Boot修改操作。
2. Kernel修改
(1)安裝工具包
首先,我們需要安裝SCons工具包,用于后續(xù)的編譯工作??梢酝ㄟ^以下命令進(jìn)行安裝:
forlinx@ubuntu:~$ sudo apt-get install scons
(2)添加AMP設(shè)備樹的調(diào)用
OK3562J-C開發(fā)板已經(jīng)添加了AMP設(shè)備樹的調(diào)用,我們可以查看相關(guān)配置文件以了解其內(nèi)容。
forlinx@ubuntu:~$ cd /home/forlinx/work/OK3562-linux-source/ forlinx@ubuntu:~/work/OK3562-linux-source$ vi kernel-5.10/arch/arm64/boot/dts/rockchip/OK3562-C-common.dtsi +include "rk3562-amp.dtsi"
rk3562-amp.dtsi 主要內(nèi)容包括:
/ { /* 描述設(shè)備 */ rockchip_amp: rockchip-amp { compatible = "rockchip,amp"; clocks = <&cru FCLK_BUS_CM0_CORE>, <&cru CLK_BUS_CM0_RTC>, <&cru PCLK_MAILBOX>, <&cru PCLK_INTC>, // <&cru SCLK_UART7>, <&cru PCLK_UART7>, <&cru PCLK_TIMER>, <&cru CLK_TIMER4>, <&cru CLK_TIMER5>; //pinctrl-names = "default"; //pinctrl-0 = <&uart7m1_xfer>; amp-cpu-aff-maskbits = /bits/ 64 <0x0 0x1 0x1 0x2 0x2 0x4 0x3 0x8>; amp-irqs = /bits/ 64 ; status = "okay"; }; /* 定義了一些保留內(nèi)存區(qū)域 */ reserved-memory { #address-cells = <2>; #size-cells = <2>; ranges; /* remote amp core address */ amp_shmem_reserved: amp-shmem@7800000 { reg = <0x0 0x7800000 0x0 0x400000>; no-map; }; rpmsg_reserved: rpmsg@7c00000 { reg = <0x0 0x07c00000 0x0 0x400000>; no-map; }; rpmsg_dma_reserved: rpmsg-dma@8000000 { compatible = "shared-dma-pool"; reg = <0x0 0x08000000 0x0 0x100000>; no-map; }; /* mcu address */ mcu_reserved: mcu@8200000 { reg = <0x0 0x8200000 0x0 0x100000>; no-map; }; }; /* 實(shí)現(xiàn)Rockchip RPMsg功能 */ rpmsg: rpmsg@7c00000 { compatible = "rockchip,rpmsg"; mbox-names = "rpmsg-rx", "rpmsg-tx"; mboxes = <&mailbox 0 &mailbox 3>; rockchip,vdev-nums = <1>; /* CPU3: link-id 0x03; MCU: link-id 0x04; */ rockchip,link-id = <0x03>; reg = <0x0 0x7c00000 0x0 0x20000>; memory-region = <&rpmsg_dma_reserved>; status = "okay"; }; };
3. 生成配置文件
接下來,我們需要生成M0核固件的配置文件。在RTOS源碼目錄下,通過復(fù)制默認(rèn)配置文件并運(yùn)行SCons菜單配置界面來生成所需的配置文件。雖然在此示例中無需進(jìn)行額外配置,但用戶可以根據(jù)需求進(jìn)行相應(yīng)的配置。
forlinx@ubuntu:~/work/OK3562-linux-source$ cd rtos/bsp/rockchip/rk3562-32 forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp board/rk3562_evb1_lp4x/defconfig .config forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ scons --menuconfig
打開圖形化配置界面后,無需配置,直接退出即可。
若有其他功能需求,可進(jìn)行相應(yīng)配置后再退出并保存。
forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp .config board/rk3562_evb1_lp4x/defconfig forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cp rtconfig.h board/rk3562_evb1_lp4x/defconfig.h
4. 編譯源碼
完成配置文件的生成后,我們可以開始編譯源碼。通過運(yùn)行構(gòu)建腳本,選擇相應(yīng)的defconfig配置,并分別編譯Linux系統(tǒng)和M0核固件。編譯成功后,會(huì)在指定目錄下生成 amp.img 鏡像文件。
forlinx@ubuntu:~/work/OK3562-linux-source/rtos/bsp/rockchip/rk3562-32$ cd forlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh chip Log colors: message notice warning error fatal Log saved at /home/forlinx/work/3562/git/OK3562-linux-source/output/sessions/2024-08-27_15-48-21 Switching to chip: ok3562Pick a defconfig: 1. forlinx_defconfig 2. forlinx_ok3562_linux_defconfig 3. forlinx_ok3562_linux_mcu_defconfig 4. forlinx_ok3562_linux_rtos_defconfigWhich would you like? [1]: 4 //選擇第四個(gè)配置forlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh rtos forlinx@ubuntu:~/work/OK3562-linux-source$ ./build.sh mcu
編譯后在rockdev目錄下生成amp.img:
forlinx@ubuntu:~/work/OK3562-linux-source$ ls rockdev/ amp.img boot.img linux-headers.tar MiniLoaderAll.bin misc.img oem.img parameter.txt recovery.img rootfs.img uboot.img update.img userdata.img
3、燒寫鏡像
將生成的 amp.img 鏡像文件拷貝到電腦中,并將開發(fā)板切換到燒寫模式。使用燒寫工具配置 amp.img 的路徑。
點(diǎn)擊“設(shè)備分區(qū)表”,讀取成功后點(diǎn)擊“執(zhí)行”。
4、驗(yàn)證啟動(dòng)
重新啟動(dòng)開發(fā)板時(shí)按下空格鍵進(jìn)入U(xiǎn)-Boot菜單。在U-Boot菜單中,輸入 3 將 amp start 配置成 on。
然后輸入 1 重啟開發(fā)板。在啟動(dòng)過程中,觀察U-Boot階段的打印信息,如果看到與M0核固件啟動(dòng)相關(guān)的打印信息,則說明已成功使用U-Boot啟動(dòng)M0核固件。
5、?總結(jié)
上述操作僅為簡(jiǎn)單啟動(dòng)M0核并打印信息。實(shí)際上,M0核的功能非常強(qiáng)大,支持UART、PWM、I2C、SPI等多種外設(shè)接口。(目前飛凌嵌入式暫無更多M0核接口的測(cè)試?yán)?,您若有相關(guān)需求,可以聯(lián)系技術(shù)支持獲取瑞芯微官方資料進(jìn)行深入學(xué)習(xí)和開發(fā))。
希望通過本文的介紹和實(shí)踐操作,能讓您對(duì)RK3562J處理器的M0核有更進(jìn)一步的了解,并為后續(xù)的開發(fā)工作提供幫助。
-
Linux
+關(guān)注
關(guān)注
87文章
11341瀏覽量
210133 -
瑞芯微
+關(guān)注
關(guān)注
24文章
432瀏覽量
51467 -
RK3562
+關(guān)注
關(guān)注
0文章
39瀏覽量
68
發(fā)布評(píng)論請(qǐng)先 登錄
相關(guān)推薦
評(píng)論