本文將以Myirtech的MYD-YF13X以及STM32MP135F-DK為例,講解如何使用STM32CubeMX結合Developer package實(shí)現最小系統啟動(dòng)。

1.開(kāi)發(fā)準備
1.1 Developer package準備
a.Developer package下載:

c.源碼準備(可以根據每一個(gè)source目錄下的README.HOW_TO.txt中第三點(diǎn)準備):
$> cd tf-a-stm32mp-v2.6-stm32mp-r2-r0
$> tar xf tf-a-stm32mp-v2.6-stm32mp-r2-r0.tar.xz
$> cd tf-a-stm32mp-v2.6-stm32mp-r2
$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done
$> cd optee-os-stm32mp-3.16.0-stm32mp-r2-r0
$> tar xf optee-os-stm32mp-3.16.0-stm32mp-r2-r0.tar.xz
$> cd optee-os-stm32mp-3.16.0-stm32mp-r2
$> tar xf ../fonts.tar.gz
$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done
$> cd u-boot-stm32mp-v2021.10-stm32mp-r2-r0
$> tar xf u-boot-stm32mp-v2021.10-stm32mp-r2-r0.tar.xz
$> cd u-boot-stm32mp-v2021.10-stm32mp-r2
$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done
$> cd linux-stm32mp-5.15.67-stm32mp-r2-r0
$> tar xf linux-5.15.67.tar.xz
$> cd linux-5.15.67
$> for p in `ls -1 ../*.patch`; do patch -p1 < $p; done
1.2 SDK安裝請閱讀WIKI完成 Install_the_SDK。
1.3 STM32CubeProgrammer安裝請根據WIKI給出的命令/步驟安裝 CubeProgrammer and libusb installation。2.原理框圖首先看一下Myirtech的原理圖框架:
從原理框圖中可以得出以下硬件配置信息:1.STM32MP135DAF72.DDR3L3.分離式電源設計4.支持QSPI NAND,SD卡啟動(dòng)5.雙千兆以太網(wǎng)口6.USB Host7.USB OTG (燒錄用)8.UART4 debug串口9.外部時(shí)鐘源,HSE(24MHz),LSE(32.768KHz)3. STM32CubeMX項目創(chuàng )建打開(kāi)STM32CubeMX, 根據芯片的part number選擇正確的芯片封裝開(kāi)始項目創(chuàng )建,例如:Myirtech使用的是STM32MP135DAF7,


點(diǎn)擊“Generate Code”之后會(huì )生成一個(gè)近乎空的project,設備樹(shù)結構:
Note: STM32CubeMX的規則是先生成Kernel的dts, 然后將生成的dts文件拷貝到u-boot目錄下,也就是說(shuō)u-boot的設備樹(shù)stm32mp135d-myir_bring_up-mx.dts是從kernel目錄拷貝過(guò)來(lái)的,所以在U-Boot階段修改設備樹(shù),添加User code時(shí),請同步修改kernel的設備樹(shù)或者將修改好的設備樹(shù)拷貝到Kernel目錄,防止下次使用CubeMX生成設備樹(shù)的時(shí)候,u-boot部分的修改被kernel未修改的設備樹(shù)覆蓋。創(chuàng )建設備樹(shù)軟鏈接:
PC $> cd
PC $> ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/tf-a/* fdts/
PC $> cd
PC $> ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/optee-os/* core/arch/arm/dts/
PC $> cd
PC $> ln -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/u-boot/* arch/arm/dts/
培訓資料未完,請關(guān)注下一期文章。