Commit graph

30 commits

Author SHA1 Message Date
Svyatoslav Ryhel
5e13730fc6 board: tegra: convert boards to text env
Convert boards to use text based env. This is the first stage of
conversion, common inclusions should be converted next.

Acked-by: Francesco Dolcini <francesco.dolcini@toradex.com> # Toradex Apalis TK1
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Svyatoslav Ryhel <clamor95@gmail.com>
2024-10-13 17:20:26 +03:00
Tom Rini
2e8dfef46c Merge patch series "Add Android 14 bootflow support for AM62X and AM62P board"
Guillaume La Roque <glaroque@baylibre.com> says:

Ths patchset add support of Android 14 with boot image version 4
for :
- AM62X-SK EVM: https://www.ti.com/tool/SK-AM62B
- BeaglePlay: https://beagleplay.org/
- AM62PX-SK EVM: https://www.ti.com/tool/SK-AM62P-LP

Android Images use to test this series are on the Official TI website:
- AM62x/BeaglePlay: https://www.ti.com/tool/PROCESSOR-SDK-AM62X
- AM62PX: https://www.ti.com/tool/PROCESSOR-SDK-AM62P
2024-10-02 13:34:35 -06:00
Guillaume La Roque
0be5309ee4 board: ti: am62x_evm: Add android bootflow
Add Android bootflow support for AM62X SK EVM board with
new android boot method.

To build for AM62x for Android, we use the
am62x_a53_android.config fragment when building A53 bootloaders:

  $ make am62x_evm_a53_defconfig
  $ make am62x_a53_android.config
  $ make

Co-developed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Guillaume La Roque <glaroque@baylibre.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Reviewed-by: Bryan Brattlof <bb@ti.com>
2024-10-02 13:33:53 -06:00
Daniel Schultz
92ff68b298 include: env: phytec: Add K3 boot logic for OSPI/QSPI flashes
This boot logic allows to boot a Kernel image, Device-Tree blob
and a initramfs from an external OSPI/QSPI NOR flash.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-09-10 13:16:01 -06:00
Daniel Schultz
d87842cd3d include: net: phytec: Add K3 network boot logic
This boot logic allows to boot a Kernel image, Device-Tree blob
and overlays via tftp/dhcp (configurable with 'net_fetch_cmd').
Additionally, it loads a rootfs via NFS.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-09-10 13:16:01 -06:00
Daniel Schultz
8cafb21215 include: env: phytec: Add raucinit to k3_mmc environment
Initialize the environment for booting an RAUC image when
'doraucboot' is set to 1.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-09-10 13:16:01 -06:00
Daniel Schultz
80c4f6f9f2 include: env: phytec: k3_mmc: Rename variables
Add a mmc prefix to 'loadimage' and 'loadfdt' because we need
similar variables for other boot sources. This will prevent
name clashes and allows to implement similar boot logic.

Also switch from loadaddr to kernel_addr_r.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
2024-09-10 13:16:01 -06:00
Daniel Schultz
59d87e6a28 include: env: phytec: k3_mmc: Apply overlays during boot
Include the overlays.env file and run the apply routine before
booting the Kernel.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Reviewed-by: Wadim Egorov <w.egorov@phytec.de>
2024-07-22 13:47:57 -06:00
Daniel Schultz
381580e31b include: env: phytec: Add common mmc boot for K3 SoMs
This environment include can be used to boot from a
MMC device for PHYTEC's K3-based SoMs.

Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Reviewed-by: Wadim Egorov <w.egorov@phytec.de>
2024-07-22 13:47:57 -06:00
Benjamin Hahn
84303dc371 include: env: phytec: renaming of variables according to bootstd doc
Rename existing environment variables according to the bootstd doc.
Renamed variables are fdto_addr, bootenv_addr, fdt_addr.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Reviewed-by: Wadim Egorov <w.egorov@phytec.de>
2024-07-22 13:47:57 -06:00
Benjamin Hahn
26b2d2c0f2 include: env: phytec: Create env file for loading and applying overlays
The env scripts for loading and applying overlays are identical for many
PHYTEC Boards. Create a common env that can be included.

The env variables bootenv_addr and fdto_addr are board specific and need
to be set in the board specific file. The env variable get_cmd also
needs to be set in board specific files and can be set to tftp or dhcp.

Signed-off-by: Benjamin Hahn <B.Hahn@phytec.de>
Signed-off-by: Daniel Schultz <d.schultz@phytec.de>
Reviewed-by: Teresa Remmet <t.remmet@phytec.de>
Reviewed-by: Wadim Egorov <w.egorov@phytec.de>
2024-07-22 13:47:57 -06:00
Dhruva Gole
b1dfe6d328 include: env: ti_common: Remove findfdt from bootcmd_ti_mmc
findfdt is used by bootcmd_ti_mmc by default which used to help populate
the fdtfile. The users of findfdt from bootcmd_ti_mmc have migrated to
ti_set_fdt_env for populating fdtfile; Hence, findfdt can be removed from
bootcmd_ti_mmc having no-impact for any platform.

Remove findfdt to not print out the warning that gets set after calling
ti_set_fdt_env. viz.
"echo WARN: fdtfile already set. Stop using findfdt in script"

Signed-off-by: Dhruva Gole <d-gole@ti.com>
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2024-07-16 13:01:46 -06:00
Manorit Chawdhry
bc2d846af7 include: env: ti: mmc: Change name_fdt usage to fdtfile
name_fdt is kept for backward compatibility but it depends on EEPROM
detection logic and some of the TI K3 platforms don't have that anymore
which causes boot failure in legacy boot flow using bootcmd_ti_mmc.

K2g platforms which uses the same file have their own override causing
this change to be no-impact for them.

Replacing name_fdt usage to fdtfile as fdtfile is populated based on
CONFIG_DEFAULT_DEVICE_TREE after using ti_set_fdt_env.

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
2024-07-16 13:01:46 -06:00
Neha Malcom Francis
4c3a9113d9 env: ti: k3_dfu: Drup mmcpart for rootfs
According to [0], raw access to mmc should not have mmcpart in the
entry. This was fixed in k3_dfu_combined.env but k3_dfu.env had been
overlooked.

[0] doc/usage/dfu.rst

Fixes: 53b406369e ("DFU: Check the number of arguments and argument string strictly")
Signed-off-by: Neha Malcom Francis <n-francis@ti.com>
2024-06-13 16:29:20 -06:00
Udit Kumar
457d0b5d43 include: env: ti: Add support for secure firmwares
Secure firmwares must be loaded if SOC is secure,
currently rproc framework chooses non-secure firmware always.

So adding support to load secure firmware, when SOC is secure

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Signed-off-by: Udit Kumar <u-kumar1@ti.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> # Intel Edison
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2024-06-07 14:00:43 -06:00
Nathan Barrett-Morrison
48a0b0b4b7 arch: arm: Add Analog Devices SC5xx machine type
Add support for the SC5xx machine type from Analog Devices. This
includes support for the SC57x, SC58x, SC59x, and SC59x-64 SoCs, which
have many common features such as common ADI IP blocks, and SHARC DSP
cores. This commit introduces core functionality required for all boards
using an SC5xx SoC, such as:

- SPL configuration
- Required CPU hooks such as reset
- Boot ROM interaction to load the stage 2 bootloader in the reference
  configuration. Other options are possible but not officially supported
  at this time
- SoC-common configuration expected to be reused by all boards
- Early initialization for system clocks and DDR controller

Co-developed-by: Greg Malysa <greg.malysa@timesys.com>
Signed-off-by: Greg Malysa <greg.malysa@timesys.com>
Co-developed-by: Ian Roberts <ian.roberts@timesys.com>
Signed-off-by: Ian Roberts <ian.roberts@timesys.com>
Signed-off-by: Vasileios Bimpikas <vasileios.bimpikas@analog.com>
Signed-off-by: Utsav Agarwal <utsav.agarwal@analog.com>
Signed-off-by: Arturs Artamonovs <arturs.artamonovs@analog.com>
Signed-off-by: Nathan Barrett-Morrison <nathan.morrison@timesys.com>
2024-05-07 19:24:00 -06:00
Leonard Anderweit
fac1bd6341 include: env: Add phytec RAUC boot logic
Add logic for booting systems with the RAUC update mechanism. This can
be reused by other phytec boards.

Signed-off-by: Leonard Anderweit <l.anderweit@phytec.de>
Tested-by: Teresa Remmet <t.remmet@phytec.de>
2024-03-17 18:39:21 -03:00
Nishanth Menon
452bab0ac7 include: env: ti: Drop default_findfdt
We shouldn't need finfdt anymore. Drop the env script.

Reviewed-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Roger Quadros <rogerq@kernel.org>
Signed-off-by: Nishanth Menon <nm@ti.com>
2024-02-20 17:57:41 -05:00
Manorit Chawdhry
27cc5951c8 include: env: ti: add default for do_main_cpsw0_qsgmii_phyinit
By default this variable is unset and this causes the test condition to
fail on devices that don't have this defined. Set a default value for
this.

   => boot
   ## Error: "main_cpsw0_qsgmii_phyinit" not defined
   [...]

Fixes: 0d72b0f2f8 ("include: env: ti: ti_common: Run main_cpsw0_qsgmii_phyinit conditionally")

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-01-18 17:50:27 -05:00
Manorit Chawdhry
a99d652ff1 include: env: ti: ti_common: Fix a missing semicolon
Fix a missing semicolon that leads to syntax error while booting j721s2.

    Importing environment from mmc1 ...
    syntax error at 'run'HUSH died!

Fixes: 0d72b0f2f8 ("include: env: ti: ti_common: Run main_cpsw0_qsgmii_phyinit conditionally")

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2024-01-18 17:50:27 -05:00
Manorit Chawdhry
0d72b0f2f8 include: env: ti: ti_common: Run main_cpsw0_qsgmii_phyinit conditionally
The main_cpsw0_qsgmii_phyinit command is defined only for certain TI
SoCs which have the do_main_cpsw0_qsgmii_phyinit variable set.

Add a check to ensure that the main_cpsw0_qsgmii_phyinit command is run
only for such SoCs.

Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-12-21 11:58:18 -05:00
Nishanth Menon
a94a4071d4 tree-wide: Replace http:// link with https:// link for ti.com
Replace instances of http://www.ti.com with https://www.ti.com

Signed-off-by: Nishanth Menon <nm@ti.com>
2023-11-10 11:01:50 -05:00
Tom Rini
ac897385bb Merge branch 'next'
Signed-off-by: Tom Rini <trini@konsulko.com>
2023-10-02 10:55:44 -04:00
Manorit Chawdhry
7ebbce535c env: ti: ti_common.env: Fix get_overlaystring for FIT Image
After the refactor with conf- nodes in fitImage, overlaystring wasn't
didn't handle the new conf- nodes in FIT Booting. Fix get_overlaystring
to handle conf- nodes.

Fixes: 837833a724 ("environment: ti: Add get_fit_config command to get FIT config string")
Reported-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Reviewed-by: Andrew Davis <afd@ti.com>
2023-09-28 16:31:43 -04:00
Nishanth Menon
03eb84c632 include: env: ti: Add a generic default_findfdt.env
ti_mmc bootmethod uses a findfdt routine that is expected to be
implemented by all platforms.

Define a default findfdt based on configured DEFAULT_DEVICE_TREE option
for u-boot. This saves duplication across multiple boards and handles
architecture folder location changes centrally.

TI ARMV7 platforms will need to override default_device_tree_subarch
in the env file to point to the appropriate platform. Note: default
"omap" is used to cater to "most common" default.

Tested-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-09-08 10:07:12 -04:00
Nishanth Menon
bf9c61acb6 include: env: ti: ti_armv7_common.env: Rename to ti_common.env
ti_armv7_common does not make any more sense as it is used by armv7
and armv8 TI based platforms.

Reported-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Tested-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
Signed-off-by: Nishanth Menon <nm@ti.com>
2023-09-08 10:07:11 -04:00
Nishanth Menon
88419bb2d6 include: env: ti: mmc: envboot: Only attempt boot.scr if BOOTSTD is not enabled
'script' bootmethod that should be used with CONFIG_BOOTSTD.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-09-08 10:07:11 -04:00
Nishanth Menon
6e869e104a include: env: ti: mmc: envboot/mmcboot: Check result of mmc dev before proceeding
If mmc dev reports that the device is not present, there is no point in
proceeding further to attempt to load the files.

Signed-off-by: Nishanth Menon <nm@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
2023-09-08 10:07:11 -04:00
Simon Glass
876bc404bd x86: Add a common include for environment settings
Create a text-file version of x86-common.h which can be used by x86
boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> # Intel Edison
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2023-08-09 23:31:12 +08:00
Simon Glass
5e541a05f7 env: Use include/env for text-environment includes
The 'environment' word is too long. We mostly use 'env' in U-Boot, so use
that as the name of the include directory too.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> # Intel Edison
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2023-08-09 23:31:12 +08:00