【STM32MP157系统移植】5.移植TF-A的trusted文件

目录

修改dtsi文件

修改设备树电源管理

修改TF卡和EMMC设备树

修改USB OTG设备树

编译

修改Makefile.sdk文件

开始编译

烧录

拷贝一份stm32mp157d-ed1.dts文件,重命名为stm32mp157d-atk.dts

 拷贝一份stm32mp15xx-edx.dtsi文件,重命名为stm32mp157d-atk.dtsi

 修改stm32mp157d-atk.dts文件,将12行原有的内容改为

#include "stm32mp157d-atk.dtsi"

 打开Makefile.sdk文件

        添加dts文件到编译列表,将刚刚修改的stm32mp157d-atk.dts文件进行添加,只需添加文件名,无需添加后缀,如果不添加,将不会对其进行编译

 进入源码目录,进行编译

make -f ../Makefile.sdk all		//编译,采用上一级目录的Makefile.sdk文件
make -f ../Makefile.sdk all -j8		//编译,采用上一级目录的Makefile.sdk文件,采用8个内核进行进行编译

        在build/trusted目录下,就出现了atk的文件,但是这部分文件是没有用的,源码部分完全没有修改 ​​​​​​​

修改dtsi文件

修改设备树电源管理

找到i2c4设备信息,把pmic的内容全部删除,仅留下下列信息

 更换其他设备的电源信息

 把vin信息更换为下列电源信息

vddcore: regulator-vddcore {
		compatible = "regulator-fixed";
		regulator-name = "vddcore";
		regulator-min-microvolt = <1200000>;
		regulator-max-microvolt = <1350000>;
		regulator-off-in-suspend;
		regulator-always-on;
	};

	v3v3: regulator-3p3v {
		compatible = "regulator-fixed";
		regulator-name = "v3v3";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-off-in-suspend;
		regulator-always-on;
	};

	vdd: regulator-vdd {
		compatible = "regulator-fixed";
		regulator-name = "vdd";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-off-in-suspend;
		regulator-always-on;
		};

	vdd_usb: regulator-vdd-usb {
		compatible = "regulator-fixed";
		regulator-name = "vdd_usb";
		regulator-min-microvolt = <3300000>;
		regulator-max-microvolt = <3300000>;
		regulator-off-in-suspend;
		regulator-always-on;
	};

修改TF卡和EMMC设备树

修改sdmmc1、sdmmc2信息

 修改为下面的信息

&sdmmc1 {
	pinctrl-names = "default";
	pinctrl-0 = <&sdmmc1_b4_pins_a &sdmmc1_dir_pins_a>;
	st,neg-edge;
	broken-cd;
	bus-width = <4>;
	vmmc-supply = <&v3v3>;
	status = "okay";
};

&sdmmc2 {
	pinctrl-names = "default";
	pinctrl-0 = <&sdmmc2_b4_pins_a &sdmmc2_d47_pins_a>;
	non-removable;
	st,neg-edge;
	bus-width = <8>;
	vmmc-supply = <&v3v3>;
	vqmmc-supply = <&v3v3>;
	status = "okay";
};

修改USB OTG设备树

修改为下面的内容

&usbotg_hs {
	phys = <&usbphyc_port1 0>;
	phy-names = "usb2-phy";
	usb-role-switch;
	status = "okay";
};

 再在下面添加一个设备信息

&usbphyc {
	status = "okay";
};

编译

修改Makefile.sdk文件

只需要编译atk文件,同时可以减少编译时间

 将编译的文件改为stm32mp157d-atk

开始编译

make -f ../Makefile.sdk all		//编译,采用上一级目录的Makefile.sdk文件
make -f ../Makefile.sdk all -j8		//编译,采用上一级目录的Makefile.sdk文件,采用8个内核进行进行编译

这个时候的atk文件才是有用的

烧录

        将编译好的tf-a-stm32mp157d-atk-trusted.stm32烧写进STM32MP157DAA开发板,重启开发板,串口输出TF-A信息,TF-A移植成功。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

因心,三人水

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值