blob: c004a8cec82aa303470c2acafcf9bf54654018b9 [file] [log] [blame]
Marek Vasut731fd502020-04-22 13:18:11 +02001/* SPDX-License-Identifier: GPL-2.0+ OR BSD-3-Clause */
2/*
3 * Copyright (C) 2020 Marek Vasut <marex@denx.de>
4 *
5 * Configuration settings for the DH STM32MP15x SoMs
6 */
7
Patrick Delaunayc67ca252021-10-22 10:19:25 +02008#ifndef __CONFIG_STM32MP15_DH_DHSOM_H__
9#define __CONFIG_STM32MP15_DH_DHSOM_H__
Marek Vasut731fd502020-04-22 13:18:11 +020010
Marek Vasute1d7b0b2021-11-13 03:26:05 +010011/* PHY needs a longer autoneg timeout */
Marek Vasute1d7b0b2021-11-13 03:26:05 +010012
Simon Glassf38956a2024-09-29 19:49:49 -060013#ifdef CONFIG_XPL_BUILD
Marek Vasut82f59422024-01-13 18:57:27 +010014#define CFG_EXTRA_ENV_SETTINGS \
Marek Vasut3919aa12021-12-06 21:58:09 +010015 "dfu_alt_info_ram=u-boot.itb ram " \
16 __stringify(CONFIG_SPL_LOAD_FIT_ADDRESS) \
17 " 0x800000\0"
18#endif
19
Marek Vasut82f59422024-01-13 18:57:27 +010020#define STM32MP_BOARD_EXTRA_ENV \
Marek Vasutf9cfc472024-11-06 20:04:14 +010021 "dh_preboot=" \
22 "run dh_testbench_backward_compat\0" \
Marek Vasutdbfe77a2023-10-02 17:52:34 +020023 "dh_update_sd_to_emmc=" /* Install U-Boot from SD to eMMC */ \
24 "setexpr loadaddr1 ${loadaddr} + 0x1000000 && " \
25 "load mmc 0:4 ${loadaddr1} boot/u-boot-spl.stm32 && " \
26 "setexpr sblkcnt ${filesize} + 0x1ff && " \
27 "setexpr sblkcnt ${sblkcnt} / 0x200 && " \
28 "load mmc 0:4 ${loadaddr} boot/u-boot.itb && " \
29 "setexpr ublkcnt ${filesize} + 0x1ff && " \
30 "setexpr ublkcnt ${ublkcnt} / 0x200 && " \
31 "mmc partconf 1 1 1 1 && mmc dev 1 1 && " \
32 "mmc write ${loadaddr1} 0 ${sblkcnt} && " \
33 "mmc dev 1 2 && " \
34 "mmc write ${loadaddr1} 0 ${sblkcnt} && " \
35 "mmc dev 1 && " \
36 "gpt write mmc 1 'name=ssbl,size=2MiB' && " \
37 "mmc write ${loadaddr} 0x22 ${ublkcnt} && " \
38 "mmc partconf 1 1 1 0 && " \
39 "setenv loadaddr1 && " \
40 "setenv sblkcnt && " \
41 "setenv ublkcnt\0" \
Marek Vasutacc781a2024-10-12 04:54:17 +020042 "dh_update_block_to_sf=" /* Erase SPI NOR and install U-Boot from block device */ \
Marek Vasut44beea22021-11-13 03:25:13 +010043 "setexpr loadaddr1 ${loadaddr} + 0x1000000 && " \
Marek Vasutacc781a2024-10-12 04:54:17 +020044 "load ${dh_update_iface} ${dh_update_dev} " \
45 "${loadaddr1} /boot/u-boot-spl.stm32 && " \
Marek Vasut44beea22021-11-13 03:25:13 +010046 "env set filesize1 ${filesize} && " \
Marek Vasutacc781a2024-10-12 04:54:17 +020047 "load ${dh_update_iface} ${dh_update_dev} " \
48 "${loadaddr} /boot/u-boot.itb && " \
Marek Vasut44beea22021-11-13 03:25:13 +010049 "sf probe && sf erase 0 0x200000 && " \
50 "sf update ${loadaddr1} 0 ${filesize1} && " \
51 "sf update ${loadaddr1} 0x40000 ${filesize1} && " \
52 "sf update ${loadaddr} 0x80000 ${filesize} && " \
Marek Vasut2ea4f972023-10-02 17:52:33 +020053 "env set filesize1 && env set loadaddr1\0" \
Marek Vasutacc781a2024-10-12 04:54:17 +020054 "dh_update_sd_to_sf=" /* Erase SPI NOR and install U-Boot from SD */ \
55 "setenv dh_update_iface mmc && " \
56 "setenv dh_update_dev 0:4 && " \
57 "run dh_update_block_to_sf\0" \
58 "dh_update_emmc_to_sf=" /* Erase SPI NOR and install U-Boot from eMMC */ \
59 "setenv dh_update_iface mmc && " \
60 "setenv dh_update_dev 1:4 && " \
61 "run dh_update_block_to_sf\0" \
Marek Vasut82f59422024-01-13 18:57:27 +010062 "stdin=serial\0" \
63 "stdout=serial\0" \
64 "stderr=serial\0" \
65 "update_sf=run dh_update_sd_to_sf\0" \
Marek Vasutf9cfc472024-11-06 20:04:14 +010066 "usb_pgood_delay=1000\0" \
67 /* Old testbench-only backward compatibility environment */ \
68 "dh_testbench_backward_compat=" \
69 "test ${board_name} = \"dh,stm32mp15xx-dhcor-testbench\" && " \
70 "run load_bootenv importbootenv\0" \
71 "importbootenv=" \
72 "echo Importing environment from DHupdate.ini...;" \
73 "env import -t ${loadaddr} ${filesize}\0" \
74 "load_bootenv=" \
75 "usb reset && " \
76 "load usb ${usbdev}:${usbpart} ${loadaddr} DHupdate.ini && " \
77 "echo \"--> Update: found DHupdate.ini (${filesize} bytes)\"\0" \
78 "usbdev=0\0" \
79 "usbpart=1\0"
Marek Vasut2ea4f972023-10-02 17:52:33 +020080
Patrick Delaunayc67ca252021-10-22 10:19:25 +020081#include <configs/stm32mp15_common.h>
Marek Vasut731fd502020-04-22 13:18:11 +020082
Marek Vasut731fd502020-04-22 13:18:11 +020083#endif