2020-04-22 11:18:11 +00:00
|
|
|
/* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */
|
|
|
|
/*
|
|
|
|
* Copyright (C) 2020 Marek Vasut <marex@denx.de>
|
|
|
|
*
|
|
|
|
* Configuration settings for the DH STM32MP15x SoMs
|
|
|
|
*/
|
|
|
|
|
2021-10-22 08:19:25 +00:00
|
|
|
#ifndef __CONFIG_STM32MP15_DH_DHSOM_H__
|
|
|
|
#define __CONFIG_STM32MP15_DH_DHSOM_H__
|
2020-04-22 11:18:11 +00:00
|
|
|
|
2021-11-13 02:26:05 +00:00
|
|
|
/* PHY needs a longer autoneg timeout */
|
|
|
|
#define PHY_ANEG_TIMEOUT 20000
|
|
|
|
|
ARM: dts: stm32: Add DFU support for DHCOR recovery
This patch configures U-Boot SPL for DHCOR SoM to permit DFU upload of
SPL and subsequent u-boot.itb for recovery or commissioning purposes.
To start U-Boot on DHCOR based board, e.g. Avenger96, proceed as follows:
- Install dfu-util on the host PC (in debian this is package 'dfu-util')
- Power off the Avenger96 board.
- Connect both USB-serial console and USB-OTG microB ports to host PC.
- Switch Avenger96 to USB boot mode -- BOOT0..2 switches all set to 0.
- Power on the Avenger96 board.
- Verify using '$ dmesg' that a new device has been detected as follows:
New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00
New USB device strings: Mfr=1, Product=2, SerialNumber=3
Product: DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000
Manufacturer: STMicroelectronics
- Upload U-Boot SPL:
$ dfu-util -a 1 -D u-boot-spl.stm32
- Upload U-Boot proper:
$ dfu-util -a 0 -D u-boot.itb
- At this point, SPL will wait for user to press "Ctrl-C" on serial
console. When ready to interact with U-Boot, press Ctrl-C to start
the bootloader.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Patrice Chotard <patrice.chotard@foss.st.com>
Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2021-12-06 20:58:09 +00:00
|
|
|
#ifdef CONFIG_SPL_BUILD
|
2022-12-04 15:03:50 +00:00
|
|
|
#define CFG_EXTRA_ENV_SETTINGS \
|
ARM: dts: stm32: Add DFU support for DHCOR recovery
This patch configures U-Boot SPL for DHCOR SoM to permit DFU upload of
SPL and subsequent u-boot.itb for recovery or commissioning purposes.
To start U-Boot on DHCOR based board, e.g. Avenger96, proceed as follows:
- Install dfu-util on the host PC (in debian this is package 'dfu-util')
- Power off the Avenger96 board.
- Connect both USB-serial console and USB-OTG microB ports to host PC.
- Switch Avenger96 to USB boot mode -- BOOT0..2 switches all set to 0.
- Power on the Avenger96 board.
- Verify using '$ dmesg' that a new device has been detected as follows:
New USB device found, idVendor=0483, idProduct=df11, bcdDevice= 2.00
New USB device strings: Mfr=1, Product=2, SerialNumber=3
Product: DFU in HS Mode @Device ID /0x500, @Revision ID /0x0000
Manufacturer: STMicroelectronics
- Upload U-Boot SPL:
$ dfu-util -a 1 -D u-boot-spl.stm32
- Upload U-Boot proper:
$ dfu-util -a 0 -D u-boot.itb
- At this point, SPL will wait for user to press "Ctrl-C" on serial
console. When ready to interact with U-Boot, press Ctrl-C to start
the bootloader.
Signed-off-by: Marek Vasut <marex@denx.de>
Cc: Patrice Chotard <patrice.chotard@foss.st.com>
Cc: Patrick Delaunay <patrick.delaunay@foss.st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2021-12-06 20:58:09 +00:00
|
|
|
"dfu_alt_info_ram=u-boot.itb ram " \
|
|
|
|
__stringify(CONFIG_SPL_LOAD_FIT_ADDRESS) \
|
|
|
|
" 0x800000\0"
|
|
|
|
#endif
|
|
|
|
|
2021-11-13 02:24:44 +00:00
|
|
|
#define STM32MP_BOARD_EXTRA_ENV \
|
2021-11-13 02:25:13 +00:00
|
|
|
"usb_pgood_delay=1000\0" \
|
2023-10-02 15:52:34 +00:00
|
|
|
"dh_update_sd_to_emmc=" /* Install U-Boot from SD to eMMC */ \
|
|
|
|
"setexpr loadaddr1 ${loadaddr} + 0x1000000 && " \
|
|
|
|
"load mmc 0:4 ${loadaddr1} boot/u-boot-spl.stm32 && " \
|
|
|
|
"setexpr sblkcnt ${filesize} + 0x1ff && " \
|
|
|
|
"setexpr sblkcnt ${sblkcnt} / 0x200 && " \
|
|
|
|
"load mmc 0:4 ${loadaddr} boot/u-boot.itb && " \
|
|
|
|
"setexpr ublkcnt ${filesize} + 0x1ff && " \
|
|
|
|
"setexpr ublkcnt ${ublkcnt} / 0x200 && " \
|
|
|
|
"mmc partconf 1 1 1 1 && mmc dev 1 1 && " \
|
|
|
|
"mmc write ${loadaddr1} 0 ${sblkcnt} && " \
|
|
|
|
"mmc dev 1 2 && " \
|
|
|
|
"mmc write ${loadaddr1} 0 ${sblkcnt} && " \
|
|
|
|
"mmc dev 1 && " \
|
|
|
|
"gpt write mmc 1 'name=ssbl,size=2MiB' && " \
|
|
|
|
"mmc write ${loadaddr} 0x22 ${ublkcnt} && " \
|
|
|
|
"mmc partconf 1 1 1 0 && " \
|
|
|
|
"setenv loadaddr1 && " \
|
|
|
|
"setenv sblkcnt && " \
|
|
|
|
"setenv ublkcnt\0" \
|
2023-10-02 15:52:33 +00:00
|
|
|
"dh_update_sd_to_sf=" /* Erase SPI NOR and install U-Boot from SD */ \
|
2021-11-13 02:25:13 +00:00
|
|
|
"setexpr loadaddr1 ${loadaddr} + 0x1000000 && " \
|
|
|
|
"load mmc 0:4 ${loadaddr1} /boot/u-boot-spl.stm32 && " \
|
|
|
|
"env set filesize1 ${filesize} && " \
|
|
|
|
"load mmc 0:4 ${loadaddr} /boot/u-boot.itb && " \
|
|
|
|
"sf probe && sf erase 0 0x200000 && " \
|
|
|
|
"sf update ${loadaddr1} 0 ${filesize1} && " \
|
|
|
|
"sf update ${loadaddr1} 0x40000 ${filesize1} && " \
|
|
|
|
"sf update ${loadaddr} 0x80000 ${filesize} && " \
|
2023-10-02 15:52:33 +00:00
|
|
|
"env set filesize1 && env set loadaddr1\0" \
|
|
|
|
"update_sf=run dh_update_sd_to_sf\0"
|
|
|
|
|
2021-11-13 02:24:44 +00:00
|
|
|
|
2021-10-22 08:19:25 +00:00
|
|
|
#include <configs/stm32mp15_common.h>
|
2020-04-22 11:18:11 +00:00
|
|
|
|
|
|
|
#endif
|