查看: 1230|回复: 0

[资料] ST官方基于米尔STM32MP135开发板培训课程(一)

[复制链接]
  • TA的每日心情

    2019-10-15 10:48
  • 签到天数: 7 天

    连续签到: 1 天

    [LV.3]偶尔看看II

    发表于 2023-7-27 19:09:36 | 显示全部楼层 |阅读模式
    分享到:
    本文将以Myirtech的MYD-YF13X以及STM32MP135F-DK为例,讲解如何使用STM32CubeMX结合Developer package实现最小系统启动。


    1.开发准备
    1.1 Developer package准备
    a.Developer package下载:
    b.解压后进入source目录:
    4.png

    c.源码准备(可以根据每一个source目录下的README.HOW_TO.txt中第三点准备):
    • TFA源码


    $> 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

    • OP-TEE源码

    $> 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

    • U-Boot源码

    $> 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

    • Kernel源码

    $> 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的原理图框架:
    5.png

    从原理框图中可以得出以下硬件配置信息:1.STM32MP135DAF72.DDR3L3.分离式电源设计4.支持QSPI NAND,SD卡启动5.双千兆以太网口6.USB Host7.USB OTG (烧录用)8.UART4 debug串口9.外部时钟源,HSE(24MHz),LSE(32.768KHz)
    3. STM32CubeMX项目创建打开STM32CubeMX, 根据芯片的part number选择正确的芯片封装开始项目创建,例如:Myirtech使用的是STM32MP135DAF7,
    6.png
    8.png
    7.png

    点击“Generate Code”之后会生成一个近乎空的project,设备树结构:
    9.png

    Note: STM32CubeMX的规则是先生成Kernel的dts, 然后将生成的dts文件拷贝到u-boot目录下,也就是说u-boot的设备树stm32mp135d-myir_bring_up-mx.dts是从kernel目录拷贝过来的,所以在U-Boot阶段修改设备树,添加User code时,请同步修改kernel的设备树或者将修改好的设备树拷贝到Kernel目录,防止下次使用CubeMX生成设备树的时候,u-boot部分的修改被kernel未修改的设备树覆盖。
    创建设备树软链接:
    • TFA:

    PC $> cd
    PC $> ln  -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/tf-a/* fdts/

    • OP-TEE:

    PC $> cd
    PC $> ln  -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/optee-os/* core/arch/arm/dts/


    • U-Boot:

    PC $> cd
    PC $> ln  -s /local/home/xxx/Desktop/STM32CubeMX/myir_bring_up/DeviceTree/myir_bring_up/u-boot/* arch/arm/dts/

    培训资料未完,请关注下一期文章。

    回复

    使用道具 举报

    您需要登录后才可以回帖 注册/登录

    本版积分规则

    关闭

    站长推荐上一条 /2 下一条



    手机版|小黑屋|与非网

    GMT+8, 2024-4-29 06:11 , Processed in 0.131996 second(s), 20 queries , MemCache On.

    ICP经营许可证 苏B2-20140176  苏ICP备14012660号-2   苏州灵动帧格网络科技有限公司 版权所有.

    苏公网安备 32059002001037号

    Powered by Discuz! X3.4

    Copyright © 2001-2024, Tencent Cloud.