你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

stm32mp135d无STPMIC1DPQR电源管理芯片方案,SDK配置哪里有问题?

[复制链接]
qingbiuci 提问时间:2024-6-19 20:10 / 已解决

第一部分:平台描述 开发板:正点原子ATK-DLMP135

MPU:STM32MP135DAE7

DDR:512MB DDR3L

SDK: en.SDK-x86_64-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz

SOURCES: en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz

image.png

开发板不带 STPMIC1DPQR 电源管理芯片

TF-A修改的文件列表如下:

image.png

其中stm32mp1_def.h修改的部分如下:

/******************************************************************************
 * REGULATORS
******************************************************************************/
/* 3 PWR + 1 VREFBUF + 14 PMIC regulators + 1 FIXED */
#define PLAT_NB_RDEVS           U(19)
/* 2 FIXED */
#define PLAT_NB_FIXED_REGS      U(17)
/* Number of low power modes defined in the device tree */
#define PLAT_NB_SUSPEND_MODES       7

uboot修改的文件列表如下:

image.png

optee修改的文件列表如下:

image.png

其中regulator_fixed.c修改的部分如下:

#define FIXED_REGULATOR_NAME_LEN    24

第二部分: 使用

en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15.tar.xz

进行编译测试,结果有报错,但可以进uboot

因为芯片为STM32MP135DAE7

设备树头文件使用 #include "stm32mp13xd.dtsi" 进行编译结果如下:

image.png

image.png

有一个报错但可以正常进入uboot,可以运行。

第三部分: 使用

en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz

进行编译测试,结果有报错,无法进uboot

设备树头文件使用 #include "stm32mp13xd.dtsi" 进行编译结果如下:

image.png

image.png

结果有报错,无法进uboot

然后将TF-A,uboot,optee中设备树头文件由

#include "stm32mp13xd.dtsi"

更换为

#include "stm32mp13xf.dtsi",

同时在optee的设备树文件stm32mp135d-dk-atk.dts 增加以下内容:

&saes {
    status = "okay";
};

进行编译结果如下:

image.png

image.png

虽然有报错,但是可以进入uboot。

第四部分: 使用

en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz

进行编译测试,结果有报错,无法进uboot

设备树头文件使用 #include "stm32mp13xd.dtsi" 进行编译结果如下:

image.png

各位老师,各位前辈,麻烦大家指导一下,STM32MP135D 测试了3个版本的源码,有的能运行,有的不行,帮忙看一下有哪里可能没有配置对的,谢谢!

en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.06.15.tar.gz

en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz

en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz

正常应该都能运行起来的吧。修改的文件见附件(附件上传在楼下)。

收藏 评论8 发布时间:2024-6-19 20:10

举报

8个回答
wgzzz 最优答案 回答时间:2024-6-26 13:01:41

你好,对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,编译OP-TEE的时候,在Makefile.sdk修改下面的参数,增加一些debug log看看有没有新的发现。

CFG_TEE_CORE_LOG_LEVEL=4

对于en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz的版本,编译OP-TEE的时候,修改Makefile.sdk 增加下面的参数,不使能加密外设。因为135D系列没有这些外设。

CFG_STM32_CRYP=n CFG_STM32_PKA=n CFG_STM32_SAES=n

wgzzz 回答时间:2024-7-4 11:44:22

解决这个错误需要在设备树 stm32mp135d-dk-atk-u-boot.dtsi 中加入下面的节点:

&vdd_usb {

u-boot,dm-pre-reloc;

};

qingbiuci 回答时间:2024-6-19 20:31:31
修改的文件见附件。

stm32mp135 problem soltion-20240619.rar

下载

807.54 KB, 下载次数: 1, 下载积分: ST金币 -1

修改的文件见附件。

qingbiuci 回答时间:2024-6-28 00:34:26
因为不知道这一层我怎么才能删除,就放一下附件了。
en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,编译OP-TEE的时候,在Makefile.sdk修改下面的参数,增加一些debug log看看有没有新的发现。
CFG_TEE_CORE_LOG_LEVEL=4
的附件


屏幕截图 2024-06-28 001014.png
屏幕截图 2024-06-28 001039.png
屏幕截图 2024-06-28 001014.png
屏幕截图 2024-06-28 001039.png
屏幕截图 2024-06-28 001014.png
屏幕截图 2024-06-28 001039.png
屏幕截图 2024-06-28 001014.png
屏幕截图 2024-06-28 001039.png
屏幕截图 2024-06-28 002007.png

MobaXterm - COM13 (USB-SERIAL CH340 (COM13)).pdf

下载

134.24 KB, 下载次数: 1, 下载积分: ST金币 -1

qingbiuci 回答时间:2024-6-28 00:57:45

wgzzz 发表于 2024-6-26 13:01
你好,对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,编译OP- ...

[md]您好!感谢您的指导!

以下为测试的情况。

对于en.SOURCES-stm32mp1-openstlinux-5.15-yocto-kirkstone-mp1-v22.11.23.tar.gz的版本,编译OP-TEE的时候,修改Makefile.sdk 增加下面的参数,不使能加密外设。因为135D系列没有这些外设。

CFG_STM32_CRYP=n CFG_STM32_PKA=n CFG_STM32_SAES=n

测试结果如下,可以正常启动到uboot:

屏幕截图2024-06-28001014.png

屏幕截图2024-06-28001039.png

对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,编译OP-TEE的时候,在Makefile.sdk修改下面的参数,增加一些debug log看看有没有新的发现。

CFG_TEE_CORE_LOG_LEVEL=4

结果如下(附件见楼上PDF附件):屏幕截图2024-06-28002007.png

wgzzz 回答时间:2024-7-1 09:54:08

对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,在OP-TEE设备树中加入下面的节点,重新编译烧录:


&sdmmc1_io {
    vddsd1-supply = <&vdd>;
};

&sdmmc2_io {
    vddsd2-supply = <&vdd>;
};
qingbiuci 回答时间:2024-7-3 10:15:55

wgzzz 发表于 2024-7-1 09:54
对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,在OP-TEE设备 ...

[md]您好!感谢您的回复。

对于en.sources-stm32mp1-openstlinux-6.1-yocto-mickledore-mp1-v23.06.21.tar.gz版本,在OP-TEE设备树中加入下面的节点,重新编译烧录:

&sdmmc1_io {
vddsd1-supply = <&vdd>;
};

&sdmmc2_io {
vddsd2-supply = <&vdd>;
};

编译报错,如下图。

报错.png

后来我是在根节点下增加了以下内容:

vddsd1: regulator-vddsd1 {
    compatible = "regulator-fixed";
    regulator-name = "vddsd1";
    regulator-min-microvolt = <3300000>;
    regulator-max-microvolt = <3300000>;
    regulator-always-on;

    standby-ddr-sr {
        regulator-off-in-suspend;
    };
    standby-ddr-off {
        regulator-off-in-suspend;
    };
};

vddsd2: regulator-vddsd2 {
    compatible = "regulator-fixed";
    regulator-name = "vddsd2";
    regulator-min-microvolt = <3300000>;
    regulator-max-microvolt = <3300000>;
    regulator-always-on;

    standby-ddr-sr {
        regulator-off-in-suspend;
    };
    standby-ddr-off {
        regulator-off-in-suspend;
    };
};

测试结果如下:

屏幕截图2024-07-03000252.png

屏幕截图2024-07-03000350.png

可以正常启动到uboot了,感谢您的帮助和支持,谢谢!

可以帮忙看一下,uboot上面一点的报错需要怎么修改吗?

stm32-usbphyc usbphyc@5a006000:Can`t get phy-supply regulator
clk_register:failed to get ck_usb0_48 device (parent of usb0_ck)
qingbiuci 回答时间:2024-7-7 23:50:19

wgzzz 发表于 2024-7-4 11:44
解决这个错误需要在设备树 stm32mp135d-dk-atk-u-boot.dtsi 中加入下面的节点:</p>
<p>&amp;vdd_usb {

[md]您好!谢谢!报错没有了。测试结果如下:

解决这个错误需要在设备树 stm32mp135d-dk-atk-u-boot.dtsi 中加入下面的节点:

&vdd_usb {

u-boot,dm-pre-reloc;

};

屏幕截图2024-07-07234730.png

屏幕截图2024-07-07234758.png

关于意法半导体
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
招聘信息
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
关注我们
st-img 微信公众号
st-img 手机版