新聞中心

        EEPW首頁 > 嵌入式系統 > 設計應用 > 米爾STM32MP25x開發板Bring Up培訓課程(三)

        米爾STM32MP25x開發板Bring Up培訓課程(三)

        作者: 時間:2025-02-28 來源:EEPW 收藏

        1.概述

        本文引用地址:http://www.104case.com/article/202502/467459.htm

        本文將以 MYIR 的 MYC-LD25X 核心模塊及MYD-LD25X開發平臺為例,講解如何使用 STM32CubeMX 來實現Developer package最小系統和外設資源的配置。

        1740741532988657.png

        更多介紹請關注上一期介紹

        或關注電子公眾號

        1.1.TF-A的啟動(接上一期)

        進入到FIP_artifacts目錄下

        myir@myir-vm:~/stm32mp25x-BringUp-bsp/FIP_artifacts$ tree arm-trusted-firmware/ -L 1

        arm-trusted-firmware/

        ├── bl31

        ├── debug

        ├── fwconfig

        ├── metadata.bin

        ├── tf-a-stm32mp257d-bringup-mx-optee-emmc.stm32

        └── tf-a-stm32mp257d-bringup-mx-usb.stm32

        部署到開發板燒寫環境(部署前請確認板子上電,串口線以及 USB 線正確連接):

        將開發板撥碼開關全部設置為0,接上USB OTG和電源,上電,測試連接環境

        1740741570550891.png

        串口線連接J15接口:

        image.png

        1740741599190835.png

        手動連接虛擬機

        image.png

        配置STM32cubeprogrammer環境

        測試燒寫環境

        myir@myir-vm:~/stm32mp25x-BringUp-bsp$ STM32_Programmer_CLI -c port=usb1

        1740741635341845.png

        注意:如無法輸入此命令,客戶重新配置環境變量

        myir@myir-vm:~/stm32mp25x-BringUp-bsp$ export PATH=$PATH:/home/myir/STMicroelectronics/STM32Cube/STM32CubeProgrammer/bin  

        使用下列命令進行TF-a USB下載模式

        myir@myir-vm:~/stm32mp25x-BringUp-bsp$ cd FIP_artifacts

        myir@myir-vm:~/stm32mp25x-BringUp-bsp/FIP_artifacts$ STM32_Programmer_CLI -c port=usb1 -d arm-trusted-firmware/tf-a-stm32mp257d-bringup-mx-usb.stm32 0x1 -s 0x1 -d fip/fip-stm32mp257d-bringup-mx-ddr-optee-emmc.bin 0x2 -s 0x2

        成功啟動。

        image.png

        1.2.Optee-OS和Uboot啟動

        使用下列命令進行FIP文件的燒寫和啟動

        myir@myir-vm:~/stm32mp25x-BringUp-bsp$ cd FIP_artifacts

        myir@myir-vm:~/stm32mp25x-BringUp-bsp/FIP_artifacts$ STM32_Programmer_CLI -c port=usb1 -d arm-trusted-firmware/tf-a-stm32mp257d-bringup-mx-usb.stm32 0x1 -s 0x1 -d fip/fip-stm32mp257d-bringup-mx-ddr-optee-emmc.bin 0x2 -s 0x2 -d fip/fip-stm32mp257d-bringup-mx-optee-emmc.bin 0x3 -s 0x3

        注:執行該命令時板卡重新上下電。

        將生成的fip寫到板子上,可以看到串口輸出的optee-os的啟動log如下:

        1740741664480175.png

        uboot的啟動log如下

        1740741680117483.png

        2.eMMC燒錄與啟動

        2.1.TF-a和fip文件燒錄emmc

        在FIP_artifacts文件夾下創建一個tsv后綴的文件,命名:FlashLayout_emmc_stm32mp25x-bringup-mx.tsv填入如下內容。

        注意:這個TSV文件未定義內核和內核之后的內容

        #Opt     Id     Name    Type      IP    Offset    Binary

        -   0x01 fsbl-boot     Binary    none     0x0 arm-trusted-firmware/tf-a-stm32mp257d-bringup-mx-usb.stm32

        -   0x02 fip-ddr  FIP  none     0x0 fip/fip-stm32mp257d-bringup-mx-ddr-optee-emmc.bin

        -   0x03 fip-boot FIP  none     0x0 fip/fip-stm32mp257d-bringup-mx-optee-emmc.bin

        P 0x04 fsbla1    Binary    mmc0    boot1    arm-trusted-firmware/tf-a-stm32mp257d-bringup-mx-optee-emmc.stm32

        P 0x05 fsbla2    Binary    mmc0    boot2    arm-trusted-firmware/tf-a-stm32mp257d-bringup-mx-optee-emmc.stm32

        P 0x06 metadata1   FWU_MDATA      mmc0    0x00080000 arm-trusted-firmware/metadata.bin

        P 0x07 metadata2   FWU_MDATA      mmc0    0x00100000 arm-trusted-firmware/metadata.bin

        P 0x08 fip-a      FIP  mmc0    0x00180000 fip/fip-stm32mp257d-bringup-mx-optee-emmc.bin

        PED 0x09 fip-b      FIP  mmc0    0x00580000 none

        PED 0x0A u-boot-env  ENV       mmc1    0x00980000 none

        myir@myir-vm:~/stm32mp25x-BringUp-bsp$ cd FIP_artifacts

        myir@myir-vm:~/stm32mp25x-BringUp-bsp/FIP_artifacts$ STM32_Programmer_CLI -c port=usb1 -d FlashLayout_emmc_stm32mp25x-bringup-mx.tsv

        刷寫log如下所示:

        1740741752214667.png

        1740741792554652.png

        2.2.切換到emmc啟動

        斷電,將撥碼開關切換到B0~B3(0 1 0 0)模式,重新上電即可emmc啟動,啟動log如下

        image.png

        1740741819744847.png

        可在uboot終端下進行操作,如獲取emmc信息命令mmc info

        image.png

        2.3.系統的整體燒錄和啟動

        由于時間原因,編譯整個內核代碼和文件系統需要的時間很多,我們就先體驗下整個系統的燒錄和啟動過程,后續可以查閱的軟件開發資料來詳細了解Linux系統的啟動過程。

        在下載包里已經存在培訓資料包里的myir-image-full文件夾里,使用STM32CubeProgrammer加載FlashLayout_emmc_myb-stm32mp257x-2GB-optee.tsv文件,后續的操作步驟在前面章節已經學會。

        燒錄時間較長(預計15分鐘),完成后切換啟動撥碼開關到eMMC啟動方式,即可上電進入整個Linux系統。

        myir@myir-vm:~/myir-image-full$ STM32_Programmer_CLI -c port=usb1 -w ./flashlayout_myir-image-full/optee/FlashLayout_emmc_myb-stm32mp257x-2GB-optee.tsv



        關鍵詞: 米爾 STM32MP25

        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 南康市| 克山县| 儋州市| 乌兰浩特市| 泸定县| 广昌县| 同心县| 东丰县| 淮南市| 景德镇市| 玛多县| 洞头县| 浦城县| 桐乡市| 商都县| 兴业县| 邹城市| 佛山市| 禄丰县| 甘泉县| 富源县| 察哈| 明星| 凤翔县| 汤阴县| 阳泉市| 两当县| 仙桃市| 彩票| 平山县| 宁夏| 三明市| 中宁县| 韶关市| 乌苏市| 井陉县| 常州市| 郧西县| 绵竹市| 左云县| 松桃|