“STM32MP15 U-Boot”的版本间的差异

来自百问网嵌入式Linux wiki
第1行: 第1行:
This article briefly describes the  support in [[U-Boot_overview|U-Boot]].
+
本文简要介绍了[[U-Boot_overview|U-Boot]]中的支持。
  
 
==  STM32MP15x lines support ==
 
==  STM32MP15x lines support ==
  
For detailed information, please read the file in the delivered U-Boot code = {{CodeSource | U-Boot | board/st/stm32mp1/README}}
+
有关详细信息,请阅读随附的U-Boot代码= {{CodeSource | U-Boot | board/st/stm32mp1/README}}
  
Also available in official U-Boot Git.
+
也可以在官方的U-Boot Git中使用。
  
 
Code :
 
Code :

2020年11月4日 (三) 17:40的版本

本文简要介绍了U-Boot中的支持。

STM32MP15x lines support

有关详细信息,请阅读随附的U-Boot代码= board/st/stm32mp1/README| |}} board/st/stm32mp1/README

也可以在官方的U-Boot Git中使用。

Code :

Configuration Files:

Selecting targets : choose defconfig and Device Tree

Each boot chain is supported by one U-Boot configuration with defconfig

Boot chain defconfig FSBL SSBL TEE support
Trusted Boot stm32mp15_trusted_defconfig TF-A U-Boot
u-boot.stm32
-
Trusted Boot with OP-TEE stm32mp15_optee_defconfig TF-A U-Boot
u-boot.stm32
yes
Basic Boot stm32mp15_basic_defconfig SPL
u-boot-spl.stm32
U-Boot
u-boot.img
-
Warning.png The basic boot chain is not supported/promoted by STMicroelectronics to make product (see Boot chains overview for details).

Several targets/ boards are supported with the associated device-tree (same name as kernel):

Board part number Description Device tree
}}{{#vardefine:typ|}}{{#vardefine:typ| Evaluation board}}{{#vardefine:info|More info green.png}}STM32MP157C-EV1{{#var:typ}} {{#var:info}} MB1262+MB1263 |}} stm32mp157c-ev1 ]
STM32MP157C-ED1 Evaluation daughterboard MB1263 |}} stm32mp157c-ed1 ]
}}{{#vardefine:typ|}}{{#vardefine:typ| Discovery kit}}{{#vardefine:info|More info green.png}}STM32MP157A-DK1{{#var:typ}} {{#var:info}} MB1272 |}} stm32mp157a-dk1 ]
}}{{#vardefine:typ|}}{{#vardefine:typ| Discovery kit}}{{#vardefine:info|More info green.png}}STM32MP157C-DK2{{#var:typ}} {{#var:info}} MB1272+MB1407 |}} stm32mp157c-dk2 ]

Compilation

see U-Boot_overview#U-Boot_build

With <mode> = 'basic', 'trusted' or 'optee'

 PC $> make stm32mp15_<mode>_defconfig
 PC $> make DEVICE_TREE=<device tree name> all
  • DEVICE_TREE: select in arch/arm/dts the device tree that is used
  • KBUILD_OUTPUT: change the destination directory for the build
  • EXT_DTB: select external device tree

Examples

{{#vardefine:info|}}{{#vardefine:typ|}}{{#vardefine:typ| Evaluation board}}{{#vardefine:info|More info green.png}}STM32MP157C-EV1{{#var:typ}} {{#var:info}} trusted boot

 PC $> make stm32mp15_trusted_defconfig
 PC $> make DEVICE_TREE=stm32mp157c-ev1 all

{{#vardefine:info|}}{{#vardefine:typ|}}{{#vardefine:typ| Discovery kit}}{{#vardefine:info|More info green.png}}STM32MP157C-DK2{{#var:typ}} {{#var:info}} trusted boot

Using export to select the device tree

 PC $> export KBUILD_OUTPUT=../build/trusted
 PC $> export DEVICE_TREE=stm32mp157c-dk2
 PC $> make stm32mp15_trusted_defconfig
 PC $> make all

STM32MP157C-ED1 Evaluation daughterboard basic boot

 PC $> export KBUILD_OUTPUT=../build/basic
 PC $> make stm32mp15_basic_defconfig
 PC $> make DEVICE_TREE=stm32mp157c-ed1 all

Trusted boot chain with external device tree

 PC $> make stm32mp15_trusted_defconfig
 PC $> make EXT_DTB=boot/stm32mp157c-myboard.dtb all