]> git.dujemihanovic.xyz Git - u-boot.git/log
u-boot.git
5 months agoimx8mp-venice-gw74xx: default USB1 to host mode
Tim Harvey [Wed, 19 Jun 2024 21:44:04 +0000 (14:44 -0700)]
imx8mp-venice-gw74xx: default USB1 to host mode

The GW74xx USB1 controller connects to a dual-role connector using a GPIO
for role detection via the usb-connector Linux driver (usb-conn-gpio.c).

This drive does not exist yet in U-Boot so for now we will just default
USB1 to host mode.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
5 months agoimx8m{m,p}_venice: add NVMe to boot devices
Tim Harvey [Wed, 19 Jun 2024 21:13:58 +0000 (14:13 -0700)]
imx8m{m,p}_venice: add NVMe to boot devices

Add nvme device 0 to available boot devices.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
5 months agoboard: gateworks: venice: add print for GPY111 PHY name
Tim Harvey [Wed, 19 Jun 2024 21:13:39 +0000 (14:13 -0700)]
board: gateworks: venice: add print for GPY111 PHY name

Due to supply chain issues Venice boards use either a DP83867 or a
GPY111 RGMII PHY. We already print an identifier for the DP83867 so add
one for the GPY111 to better identify what PHY is on a board:

Example:
 Net:   GPY111 eth0: ethernet@30be0000 [PRIME]
 Net:   DP83867 eth0: ethernet@30be0000 [PRIME]

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
5 months agoboard: gateworks: venice: delay before reading GSC EEPROM
Tim Harvey [Wed, 19 Jun 2024 21:13:22 +0000 (14:13 -0700)]
board: gateworks: venice: delay before reading GSC EEPROM

Extensive testing has shown that at higher temperatures operating
without a GSC backup battery, the GSC needs a small delay after
releasing the I2C SDA/SCL pins before it is ready to handle I2C
requests.

Add a delay to avoid errors such as:
wait_for_sr_state: Arbitration lost sr=93 cr=80 state=2020
i2c_init_transfer: failed for chip 0x20 retry=0

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
5 months agoboard: gateworks: venice: enable GSC supervisor for new board models
Tim Harvey [Wed, 19 Jun 2024 21:12:58 +0000 (14:12 -0700)]
board: gateworks: venice: enable GSC supervisor for new board models

The Gateworks System Controller (GSC) has a voltage supervisor which is
disabled by default. On older boards we want to maintian this but on
newer boards we wish to enable the voltage supervisor.

The Gateworks System Controller (GSC) can disable the board primary
power supply by driving a pin to a FET high. On older board models
the leakage of the GSC may exceed the leakage of the FET causing this
signal slowly rise when the GSC battery is low and the board is in a
powered down state resulting in the board being kept in a disabled
state.

Newer boards have a hardware fix to avoid this leakage and thus should
enable the voltage supervisor.

Signed-off-by: Tim Harvey <tharvey@gateworks.com>
5 months agodt-bindings: imx: Drop redundant imports with dts/upstream
Sumit Garg [Wed, 19 Jun 2024 12:53:10 +0000 (18:23 +0530)]
dt-bindings: imx: Drop redundant imports with dts/upstream

Drop redundant header imports with dts/upstream already providing
updated headers which have been checked to be backwards compatibility.

The imx headers which aren't present in dts/upstream are as follows:

- include/dt-bindings/clock/imxrt1020-clock.h
- include/dt-bindings/clock/imx8qm-clock.h
- include/dt-bindings/clock/imxrt1170-clock.h
- include/dt-bindings/clock/imx8qxp-clock.h
- include/dt-bindings/memory/imxrt-sdram.h
- include/dt-bindings/pinctrl/pads-imx8qxp.h
- include/dt-bindings/pinctrl/pads-imx8qm.h
- include/dt-bindings/soc/imx8_pd.h
- include/dt-bindings/soc/imx_rsrc.h

hence these aren't dropped yet but there was an unused header:

- include/dt-bindings/pinctrl/pins-imx8mq.h

which has been dropped as well. There shouldn't be any funtional impact
with this change but it rather allows iMX platforms to use upstream
dt-bindings headers in a backwards compatible manner.

Signed-off-by: Sumit Garg <sumit.garg@linaro.org>
Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
5 months agoarm: fsl: imx6ulz_bsh_smm_m2: Migrate to OF_UPSTREAM
Patrick Barsanti [Thu, 13 Jun 2024 10:24:09 +0000 (12:24 +0200)]
arm: fsl: imx6ulz_bsh_smm_m2: Migrate to OF_UPSTREAM

Migrate imx6ulz_bsh_smm_m2 board to OF_UPSTREAM.

Signed-off-by: Patrick Barsanti <patrick.barsanti@amarulasolutions.com>
5 months agoarm: fsl: imx8mn_bsh_smm_s2: Migrate to OF_UPSTREAM
Patrick Barsanti [Mon, 24 Jun 2024 12:13:11 +0000 (09:13 -0300)]
arm: fsl: imx8mn_bsh_smm_s2: Migrate to OF_UPSTREAM

Migrate imx8mn_bsh_smm_s2 and imx8mn_bsh_smm_s2pro boards to OF_UPSTREAM.

Signed-off-by: Patrick Barsanti <patrick.barsanti@amarulasolutions.com>
Tested-by: Michael Trimarchi <michael@amarulasolutions.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
6 months agoMerge patch series "boot: fix crash in bootflow menu with EFI BOOTMGR support + typos"
Tom Rini [Thu, 20 Jun 2024 14:46:06 +0000 (08:46 -0600)]
Merge patch series "boot: fix crash in bootflow menu with EFI BOOTMGR support + typos"

Quentin Schulz <foss+uboot@0leil.net> says:

bootflow menu currently crashes U-Boot with a NULL pointer dereference
because bootflow->dev is NULL for global bootmeths (such as EFI BOOTMGR).
Therefore, let's check if the bootflow is associated with a global
bootmeth before trying to make it part of the menu.

While this makes U-Boot not crash anymore, bootflow menu doesn't work
for me (I have never had a happy path with it, but I haven't actually
tried it before today :) ) and this was basically just implemented
following Simon's suggestion sent over IRC. No clue if this is enough or
just a quick band-aid patch.

This also fixes typos in multiple places.

6 months agoMerge patch series "lib: smbios: Extend driver with using sysinfo driver"
Tom Rini [Thu, 20 Jun 2024 14:36:06 +0000 (08:36 -0600)]
Merge patch series "lib: smbios: Extend driver with using sysinfo driver"

Michal Simek <michal.simek@amd.com> says:

Hi,

currently only DT way is supported and it is added directly to lib/smbios.c
but I think DT and env is only one way how information can be found that's
why this series is improving handling with using sysinfo driver which can
be platform specific.
At the end of day DT should be taken from smbios.c and put to sysinfo DT
driver instead of implementing it directly in this generic file.

6 months agoboot: bootflow_menu: fix crash for EFI BOOTMGR global bootmeth
Quentin Schulz [Wed, 12 Jun 2024 14:58:49 +0000 (16:58 +0200)]
boot: bootflow_menu: fix crash for EFI BOOTMGR global bootmeth

The global bootmeths don't set the dev in bootflow struct which means
the dev_get_parent(bflow->dev) triggers a NULL-pointer dereference and
crash U-Boot.

So before trying to handle a bootflow, check that the associated
bootmeth isn't global, otherwise skip it.

Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agolib: smbios: Detect system properties via SYSINFO IDs
Michal Simek [Fri, 26 Apr 2024 13:38:13 +0000 (15:38 +0200)]
lib: smbios: Detect system properties via SYSINFO IDs

Code is pretty much supports only DT properties and completely ignore
information coming from sysinfo driver.
Code is calling smbios_add_prop() which calls with
smbios_add_prop_si(SYSINFO_ID_NONE). But SYSINFO_ID_NONE can't
differentiate different entries from sysinfo driver.
That's why introduce separate SYSINFO macros which can be used in sysinfo
driver and passed to smbios structure.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agodoc: bootstd: fix typos
Quentin Schulz [Wed, 12 Jun 2024 14:58:48 +0000 (16:58 +0200)]
doc: bootstd: fix typos

This fixes a few syntactic issues as well as typos and grammar.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agoboot: fix typos in help text of Kconfig configs
Quentin Schulz [Wed, 12 Jun 2024 14:58:47 +0000 (16:58 +0200)]
boot: fix typos in help text of Kconfig configs

This fixes a handful of typos in various help texts in Kconfig configs.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agocmd: fix typo in CMD_BOOTMETH help text
Quentin Schulz [Wed, 12 Jun 2024 14:58:46 +0000 (16:58 +0200)]
cmd: fix typo in CMD_BOOTMETH help text

It's bootmeths and not bootmethds.

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agolib: smbios: Let detect the system via sysinfo
Michal Simek [Fri, 26 Apr 2024 13:38:12 +0000 (15:38 +0200)]
lib: smbios: Let detect the system via sysinfo

Currently code looks like that it sysinfo drivers are supported but
actually none checking that system is detected. That's why call
sysinfo_detect() to make sure that priv->detected in sysinfo uclass is
setup hence information from driver can be passed to smbios.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agoxilinx: Enable SMBIOS command
Michal Simek [Fri, 26 Apr 2024 13:38:11 +0000 (15:38 +0200)]
xilinx: Enable SMBIOS command

It is good to be aware what information is shared via smbios interface
that's why enable it by default.

Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoarm: dts: corstone1000: enable secondary cores for FVP
Harsimran Singh Tungal [Wed, 12 Jun 2024 10:04:21 +0000 (11:04 +0100)]
arm: dts: corstone1000: enable secondary cores for FVP

Add the secondary cores nodes in the dts file

Signed-off-by: Harsimran Singh Tungal <harsimransingh.tungal@arm.com>
Cc: Tom Rini <trini@konsulko.com>
Cc: Rui Miguel Silva <rui.silva@linaro.org>
6 months agoMerge patch series "Enable ICSSG Driver for AM64x"
Tom Rini [Wed, 19 Jun 2024 21:25:42 +0000 (15:25 -0600)]
Merge patch series "Enable ICSSG Driver for AM64x"

MD Danish Anwar <danishanwar@ti.com> says:

This series adds config changes and env changes to enable ICSSG Ethernet
Driver on AM64x.

6 months agoboard: ti: am64x: Set storage_interface and fw_dev_part ENVs
MD Danish Anwar [Wed, 12 Jun 2024 11:07:49 +0000 (16:37 +0530)]
board: ti: am64x: Set storage_interface and fw_dev_part ENVs

When ICSSG driver is enabled (CONFIG_TI_ICSSG_PRUETH=y) set
storage_interface and fw_dev_part env variables.

These variables need be set appropriately in order to load different
ICSSG firmwares needed for ICSSG driver. By default the storage
interface is mmc and the partition is 1:2. User can modify this based on
their needs.

Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
6 months agoconfigs: am64x_evm_a53: Enable ICSSG Driver
MD Danish Anwar [Wed, 12 Jun 2024 11:07:48 +0000 (16:37 +0530)]
configs: am64x_evm_a53: Enable ICSSG Driver

Enable ICSSG driver, DP83869 phy driver, REMOTEPROC and PRU_REMOTEPROC
in am64x_evm_a53_defconfig. All these configs are needed for ICSSG
driver.

Signed-off-by: MD Danish Anwar <danishanwar@ti.com>
6 months agoMerge patch series "Add basic U-Boot Support for J722S-EVM"
Tom Rini [Wed, 19 Jun 2024 18:08:49 +0000 (12:08 -0600)]
Merge patch series "Add basic U-Boot Support for J722S-EVM"

Jayesh Choudhary <j-choudhary@ti.com> says:

Hello there,

This series add the U-Boot support for our new platform of K3-SOC
family - J722S-EVM which is a superset of AM62P. It shares the same
memory map and thus the nodes are being reused from AM62P includes
instead of duplicating the definitions.

Some highlights of J722S SoC (in addition to AM62P SoC features) are:

- Two Cortex-R5F for Functional Safety or general-purpose usage and
  two C7x floating point vector DSP with Matrix Multiply Accelerator
  for deep learning.

- Vision Processing Accelerator (VPAC) with image signal processor
  and Depth and Motion Processing Accelerator (DMPAC).

- 7xUARTs, 3xSPI, 5xI2C, 2xUSB2, 2xCAN-FD, 3xMMC and SD, GPMC for
  NAND/FPGA connection, OSPI memory controller, 5xMcASP for audio,
  4xCSI-RX for Camera, 1 PCIe Gen3 controller, USB3.0 eCAP/eQEP,
  ePWM, among other peripherals.

TRM: <https://www.ti.com/lit/zip/sprujb3>
Schematics: <https://www.ti.com/lit/zip/sprr495>

Boot test log:
<https://gist.github.com/Jayesh2000/0313e58fde377f877a9a8f1acc2579ef>

6 months agodoc: board: ti: Add J722S-EVM documentation
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:23 +0000 (14:41 +0530)]
doc: board: ti: Add J722S-EVM documentation

Introduce basic documentation for the J722S-EVM.

Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agoconfigs: introduce configs needed for the J722S
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:22 +0000 (14:41 +0530)]
configs: introduce configs needed for the J722S

Introduce the initial configs needed to support the J722S SoC family.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agoarm: dts: Introduce J722S U-Boot dts files
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:21 +0000 (14:41 +0530)]
arm: dts: Introduce J722S U-Boot dts files

Include the uboot device tree files needed to boot the board.

Co-developed-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agofirmware: ti_sci_static_data: Add static DMA channel
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:20 +0000 (14:41 +0530)]
firmware: ti_sci_static_data: Add static DMA channel

Include the static DMA channel data for using DMA at SPL stage
for J722S SoC family.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agoboard: ti: Introduce basic board files for the J722S family
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:19 +0000 (14:41 +0530)]
board: ti: Introduce basic board files for the J722S family

Introduce the basic files needed to support the TI J722S family of SoCs.

Co-developed-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agoarch: mach-k3: Introduce basic files to support J722S SoC family
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:18 +0000 (14:41 +0530)]
arch: mach-k3: Introduce basic files to support J722S SoC family

Introduce the basic functions and definitions needed to properly
initialize TI J722S family of SoCs.

Co-developed-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agoram: k3-ddrss: Enable the am62ax's DDR controller for J722S
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:17 +0000 (14:41 +0530)]
ram: k3-ddrss: Enable the am62ax's DDR controller for J722S

The J722S family of SoCs uses the same DDR controller as found on the
AM62A family. Enable this option when building for the J722S family.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agoarm: mach-k3: j722s: introduce clock and device files for wkup spl
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:16 +0000 (14:41 +0530)]
arm: mach-k3: j722s: introduce clock and device files for wkup spl

Include the clock and lpsc tree files needed for the wkup spl to
initialize the proper PLLs and power domains to boot the SoC.

Reviewed-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agoarm: mach-k3: r5: Makefile: Fix the order for entries
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:15 +0000 (14:41 +0530)]
arm: mach-k3: r5: Makefile: Fix the order for entries

Add the entries in alphabetical order.

Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agopower: domain: ti: Fix the order for platform data entries
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:14 +0000 (14:41 +0530)]
power: domain: ti: Fix the order for platform data entries

Add the power domain platform data entries in alphabetical order.

Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agoclk: ti: clk-k3: use IS_ENABLED macro and fix the clock-data order
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:13 +0000 (14:41 +0530)]
clk: ti: clk-k3: use IS_ENABLED macro and fix the clock-data order

Use IS_ENABLED macro for the platform clock-data list and add them
in alphabetical order.

Reviewed-by: Bryan Brattlof <bb@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agosoc: add info to identify the J722S SoC family
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:12 +0000 (14:41 +0530)]
soc: add info to identify the J722S SoC family

Include the part number for TI's j722s family of SoC
to identify it during boot.

Signed-off-by: Vaishnav Achath <vaishnav.a@ti.com>
Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
6 months agosoc: ti: k3-socinfo: Fix SOC JTAG entry order
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:11 +0000 (14:41 +0530)]
soc: ti: k3-socinfo: Fix SOC JTAG entry order

Add JTAG_ID_PARTNO_* in alphabetical order.

Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agoarm: mach-k3: Sort CONFIG_SOC* and K3_SOC_ID entries
Jayesh Choudhary [Wed, 12 Jun 2024 09:11:10 +0000 (14:41 +0530)]
arm: mach-k3: Sort CONFIG_SOC* and K3_SOC_ID entries

Sort CONFIG_SOC* and K3_SOC_ID alphabetically.

Signed-off-by: Jayesh Choudhary <j-choudhary@ti.com>
Reviewed-by: Andrew Davis <afd@ti.com>
Reviewed-by: Neha Malcom Francis <n-francis@ti.com>
6 months agoMerge patch series "EFI: ti: Enable EFI capsule updates"
Tom Rini [Tue, 18 Jun 2024 16:47:10 +0000 (10:47 -0600)]
Merge patch series "EFI: ti: Enable EFI capsule updates"

Jonathan Humphreys <j-humphreys@ti.com> says:

Enable on disk capsule updates, which includes defining the firmware
components (tiboot3, spl, u-boot) and enabling processing of raw capsule
updates.

This is enabled for several TI SoC based platforms: AM64, AM62, AM62p,
AM69, BeaglePlay, J7, and BeagleboneAI. The configs to enable this are in a
single base config file. This will make it more scalable to add additional
EFI capsule features (like authentication) across all TI boards that have
capsules enabled.

This series also includes enabling serial flash DFU for AM62 and MMC DFU
for beagleplay.

6 months agodoc: board: ti: j784s4: document OSPI NOR layout
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:51 +0000 (11:35 -0500)]
doc: board: ti: j784s4: document OSPI NOR layout

Added OSPI NOR flash layout diagram, as well as example commands to flash
firmware to it.  Added OSPI boot mode pin setting.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoconfigs: j784s4: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:50 +0000 (11:35 -0500)]
configs: j784s4: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: sk-am69: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:49 +0000 (11:35 -0500)]
board: sk-am69: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the AM69
SK.

TODO: possibly make the struct's sk specific.
TODO: add doc commit (and make sure doc is sk/NOR specific, and add OSIP
boot mode)
TODO: update doc to show sk defconfig when building

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agoconfigs: j784s4_evm: Enable serial flash DFU support
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:48 +0000 (11:35 -0500)]
configs: j784s4_evm: Enable serial flash DFU support

Enable serial flash DFU support for capsule update of firmware.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoconfigs: beagleboneai64: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:47 +0000 (11:35 -0500)]
configs: beagleboneai64: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: beagleboneai64: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:46 +0000 (11:35 -0500)]
board: beagleboneai64: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the
BeagleBoneAI64.

Note this involved creating BeagleBoneAI64's own beagleboneai64.h board
header file instead of reusing j721e_evm's.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agodoc: board: ti: am62px: document OSPI layout
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:45 +0000 (11:35 -0500)]
doc: board: ti: am62px: document OSPI layout

Added OSPI flash layout diagram, as well as example commands to flash
firmware to it.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: am62px: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:44 +0000 (11:35 -0500)]
configs: am62px: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: am62px: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:43 +0000 (11:35 -0500)]
board: am62px: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the AM62px
SK.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agodoc: board: ti: am62x: document OSPI layout
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:42 +0000 (11:35 -0500)]
doc: board: ti: am62x: document OSPI layout

Added OSPI flash layout diagram, as well as example commands to flash
firmware to it.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: am62x: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:41 +0000 (11:35 -0500)]
configs: am62x: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: am62x: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:40 +0000 (11:35 -0500)]
board: am62x: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the AM62x
SK.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agoconfigs: beagleplay: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:39 +0000 (11:35 -0500)]
configs: beagleplay: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoconfigs: beagleplay: Enable DFU for MMC
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:38 +0000 (11:35 -0500)]
configs: beagleplay: Enable DFU for MMC

MMC DFU is required for capsule updates.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: beagleplay: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:37 +0000 (11:35 -0500)]
board: beagleplay: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the
BeaglePlay.

Note this involved creating BeaglePlay's own beagleplay.h board header file
instead of reusing am62_evm's.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agodoc: board: ti: j721e: document OSPI layout
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:36 +0000 (11:35 -0500)]
doc: board: ti: j721e: document OSPI layout

Updated OSPI flash layout diagram.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: j721e: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:35 +0000 (11:35 -0500)]
configs: j721e: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: j721e: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:34 +0000 (11:35 -0500)]
board: j721e: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the
SK-TDA4VM.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agodoc: board: ti: am64x: document OSPI layout
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:33 +0000 (11:35 -0500)]
doc: board: ti: am64x: document OSPI layout

Added OSPI flash layout diagram, as well as example commands to flash
firmware to it.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: am64x: Enable EFI capsule update
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:32 +0000 (11:35 -0500)]
configs: am64x: Enable EFI capsule update

Enable on disk, raw capsule update.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoboard: am64x: Define capsule update firmware info
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:31 +0000 (11:35 -0500)]
board: am64x: Define capsule update firmware info

Define the firmware components updatable via EFI capsule update, including
defining capsule GUIDs for the various firmware components for the AM64x
SK.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
6 months agoconfigs: ti: Create base EFI capsule configs for TI K3 devices
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:30 +0000 (11:35 -0500)]
configs: ti: Create base EFI capsule configs for TI K3 devices

To better scale with the number of boards, separate TI K3 EFI capsule
configs into its own file that can be shared across TI K3 boards.  This
will allow any platform level config changes to be done once.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agodoc: ti: k3: Correct spelling mistakes and improve clarity
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:29 +0000 (11:35 -0500)]
doc: ti: k3: Correct spelling mistakes and improve clarity

Few cosmetic fixes for clarity and spelling mistakes.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>
6 months agodoc: uefi: capsules: Add Capsule Update porting section
Jonathan Humphreys [Fri, 14 Jun 2024 16:35:28 +0000 (11:35 -0500)]
doc: uefi: capsules: Add Capsule Update porting section

Created a capsule update porting section in the documentation that outlines
the steps a board developer must do when porting from an existing reference
board implementation.

In particular, added a big warning that new capsule GUID's need to be
defined.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
6 months agoconfigs: j784s4: Enable basic EFI CMD support
Jonathan Humphreys [Fri, 14 Jun 2024 15:53:24 +0000 (10:53 -0500)]
configs: j784s4: Enable basic EFI CMD support

Enable basic configs for EFI CMD support.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agoconfigs: j784s4: Enable RTC emulation
Jonathan Humphreys [Fri, 14 Jun 2024 15:51:18 +0000 (10:51 -0500)]
configs: j784s4: Enable RTC emulation

Enable RTC emulation for System Ready IR tests.

Signed-off-by: Jonathan Humphreys <j-humphreys@ti.com>
6 months agosmbios: only look for a SYSINFO udevice if SYSINFO support is enabled
Quentin Schulz [Mon, 10 Jun 2024 16:13:46 +0000 (18:13 +0200)]
smbios: only look for a SYSINFO udevice if SYSINFO support is enabled

If SYSINFO support isn't enabled, it's a given that uclass_first_device
for UCLASS_SYSINFO will not find anything, therefore let's skip the test
entirely.

This allows to get rid of the following debug message that may be
confusing:

Cannot find uclass for id 118: please add the UCLASS_DRIVER() declaration for this UCLASS_... id

Signed-off-by: Quentin Schulz <quentin.schulz@cherry.de>
Reviewed-by: Simon Glass <sjg@chromium.org>
6 months agoMerge patch series "*** Various fixes & improvements for phycore-AM6* SoMs ***"
Tom Rini [Tue, 18 Jun 2024 16:29:35 +0000 (10:29 -0600)]
Merge patch series "*** Various fixes & improvements for phycore-AM6* SoMs ***"

Wadim Egorov <w.egorov@phytec.de> says:

It includes various fixes and improvements for phyCORE-AM62x and
phyCORE-AM64x SoMs. Notable is the last patch which prepares for use
with future ECC memory fixups.

6 months agoboard: phytec: phycore-am62x: Use memory nodes in higher boot stages
Wadim Egorov [Mon, 10 Jun 2024 13:33:52 +0000 (15:33 +0200)]
board: phytec: phycore-am62x: Use memory nodes in higher boot stages

There is no need to reread the EEPROM multiple times in different stages
to detect the RAM size. We can do this once at an early stage and let
higher stages decode memory nodes using fdtdec.
Make sure to pass fixup memory nodes before passing to u-boot stage.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agodoc: board: phytec: phycore-am6: Use mtd commands
Wadim Egorov [Mon, 10 Jun 2024 13:33:51 +0000 (15:33 +0200)]
doc: board: phytec: phycore-am6: Use mtd commands

Update Flash to SPI NOR chapter for use with mtd commands.
This is more convenient as we do not have to remember any
offsets in the SPI.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agodoc: board: phytec: phycore-am62x: Add USB DFU switch config
Wadim Egorov [Mon, 10 Jun 2024 13:33:50 +0000 (15:33 +0200)]
doc: board: phytec: phycore-am62x: Add USB DFU switch config

Provide boot switch config for USB DFU boot.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoconfigs: phycore_am6xx: Update MTD & SPI configs
Wadim Egorov [Mon, 10 Jun 2024 13:33:49 +0000 (15:33 +0200)]
configs: phycore_am6xx: Update MTD & SPI configs

Enable mtd command and remove SPI NOR flashes we do not
populate on our SoMs.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoboard: phytec: phycore-am62x: Pull in k3_dfu.env
Wadim Egorov [Mon, 10 Jun 2024 13:33:48 +0000 (15:33 +0200)]
board: phytec: phycore-am62x: Pull in k3_dfu.env

Pull in ti/k3_dfu.env for dfu_alt_info_ram in SPL stage.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoconfigs: phycore_am62x_a53_defconfig: Enable DFU boot
Wadim Egorov [Mon, 10 Jun 2024 13:33:47 +0000 (15:33 +0200)]
configs: phycore_am62x_a53_defconfig: Enable DFU boot

Enable configs required for booting via DFU.
Configs taken from the am62x_a53_usbdfu.config config fragment.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoarm: dts: k3-am625-phyboard-lyra-rdk: Enable usb port in u-boot
Wadim Egorov [Mon, 10 Jun 2024 13:33:46 +0000 (15:33 +0200)]
arm: dts: k3-am625-phyboard-lyra-rdk: Enable usb port in u-boot

Enable usb0 in all boot phases for use with DFU.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoconfigs: phycore_am64x: Update environment location
Wadim Egorov [Mon, 10 Jun 2024 13:33:45 +0000 (15:33 +0200)]
configs: phycore_am64x: Update environment location

Update environment location to align with OSPI fixed-partition
definitions and provide a redundant environment at a 2nd location.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoconfigs: phycore_am62x: Update environment location
Wadim Egorov [Mon, 10 Jun 2024 13:33:44 +0000 (15:33 +0200)]
configs: phycore_am62x: Update environment location

Update environment location to align with OSPI fixed-partition
definitions and provide a redundant environment at a 2nd location.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoboard: phytec: phycore-am62x: Fix CONFIG_SPL_BOARD_INIT
Wadim Egorov [Mon, 10 Jun 2024 13:33:43 +0000 (15:33 +0200)]
board: phytec: phycore-am62x: Fix CONFIG_SPL_BOARD_INIT

Make sure spl_board_init() gets compiled by enabling missing
CONFIG_SPL_BOARD_INIT and including hardware.h.

Fixes: 085cd6459dae ("board: phytec: am62x: Add PHYTEC phyCORE-AM62x SoM")
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoboard: phytec: common: k3: Copy fixed partitions to OS device tree
Wadim Egorov [Mon, 10 Jun 2024 13:33:42 +0000 (15:33 +0200)]
board: phytec: common: k3: Copy fixed partitions to OS device tree

Copy fixed-partitions nodes from U-Boot device tree to OS device tree.

Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoarch: arm: dts: k3-am642-phyboard-electra: Add fixed partitions
Nathan Morrisson [Mon, 10 Jun 2024 13:33:41 +0000 (15:33 +0200)]
arch: arm: dts: k3-am642-phyboard-electra: Add fixed partitions

Add a fixed partitions node to the AM64x device tree so that it can
be used to fixup the Linux device tree.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoarch: arm: dts: k3-am625-phyboard-lyra: Add fixed partitions
Nathan Morrisson [Mon, 10 Jun 2024 13:33:40 +0000 (15:33 +0200)]
arch: arm: dts: k3-am625-phyboard-lyra: Add fixed partitions

Add a fixed partitions node to the AM62x device tree so that it can
be used to fixup the Linux device tree.

Signed-off-by: Nathan Morrisson <nmorrisson@phytec.com>
Signed-off-by: Wadim Egorov <w.egorov@phytec.de>
Reviewed-by: Daniel Schultz <d.schultz@phytec.de>
6 months agoMerge tag 'u-boot-stm32-20240618' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Tue, 18 Jun 2024 14:35:30 +0000 (08:35 -0600)]
Merge tag 'u-boot-stm32-20240618' of https://source.denx.de/u-boot/custodians/u-boot-stm into next

STM32MP15/13
------------
  _ Reserve OPTEE area in EFI memory map
  _ net: dwc_eth_qos: add support for phy-reset-gpios property
  _ Add eth1/2 support for stm32mp13
  _ Add PWR regulator support for stm32mp13
  _ Add pinmux nodes for DH electronics STM32MP13xx DHCOR SoM and DHSBC board
  _ Add support for STM32MP13xx DHCOR SoM and DHSBC board
  _ Set PLL4_P to 125Mhz for ETH_CLK for stm32mp157c-odyssey
  _ Use internal clock for Tx for stm32mp157c-odyssey
  _ Fix incorrect PHY address for stm32mp157c-odyssey
  _ Add phy-reset-gpios property to ethernet node for stm32mp157c-odyssey
  _ Add generic SoM compatible to STM32MP15xx DH electronics DHSOM
  _ Auto-detect second MAC on STM32MP15xx DH electronics DHCOM

6 months agoARM: dts: stm32: Auto-detect second MAC on STM32MP15xx DH electronics DHCOM
Marek Vasut [Thu, 6 Jun 2024 13:01:48 +0000 (15:01 +0200)]
ARM: dts: stm32: Auto-detect second MAC on STM32MP15xx DH electronics DHCOM

Test whether this system is compatible with STM32MP15xx DHCOM SoM,
if so, test whether R292 pull up is populated on pin PC3, which is
an indication that the second MAC chip, KS8851-16MLL, is populated.
Use this information to patch 'status' DT property into the second
ethernet MAC DT node and enable/disable the MAC on systems where
the chip is/isn't populated respectively.

Use spl_perform_fixups() to patch the U-Boot proper DT from SPL and
ft_board_setup() to patch Linux DT from U-Boot proper. This way both
software components are configured the same way.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: Add generic SoM compatible to STM32MP15xx DH electronics DHSOM
Marek Vasut [Thu, 16 May 2024 23:47:04 +0000 (01:47 +0200)]
ARM: dts: stm32: Add generic SoM compatible to STM32MP15xx DH electronics DHSOM

Add generic SoM compatible string into machine compatible string
for all STM32MP15xx based DH electronics DHSOM. This way, common
board code can match on this compatible. No functional change.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: add phy-reset-gpios property to ethernet node for stm32mp157c-odyssey
Heesub Shin [Sun, 28 Apr 2024 14:24:06 +0000 (23:24 +0900)]
ARM: dts: stm32: add phy-reset-gpios property to ethernet node for stm32mp157c-odyssey

In Odyssey board, we should reset the PHY chipset, toggling G0 pin.

Signed-off-by: Heesub Shin <heesub@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: fix incorrect PHY address for stm32mp157c-odyssey
Heesub Shin [Sun, 28 Apr 2024 14:24:04 +0000 (23:24 +0900)]
ARM: dts: stm32: fix incorrect PHY address for stm32mp157c-odyssey

In Odyssey board, KSZ9031 is at the PHY address 0x7, not 0x0. This
commit fixes it.

Signed-off-by: Heesub Shin <heesub@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: use internal clock for Tx for stm32mp157c-odyssey
Heesub Shin [Sun, 28 Apr 2024 14:24:03 +0000 (23:24 +0900)]
ARM: dts: stm32: use internal clock for Tx for stm32mp157c-odyssey

In Odyssey board, we should use the internal clock from RCC as the
transmit clock, instead of the external clock from ETH_CLK125 pad. This
commit adds a property, st,eth-clk-sel, so that the ETH_CLK_SEL mux
selects ETH_CLK.

Signed-off-by: Heesub Shin <heesub@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: set PLL4_P to 125Mhz for ETH_CLK for stm32mp157c-odyssey
Heesub Shin [Sun, 28 Apr 2024 14:24:02 +0000 (23:24 +0900)]
ARM: dts: stm32: set PLL4_P to 125Mhz for ETH_CLK for stm32mp157c-odyssey

Odyssey board requires ETH_CLK of 125Mhz. This commit sets PLL4_P/Q/R to
125, 62.5 and 62.5Mhz in respectively.

Signed-off-by: Heesub Shin <heesub@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: Add support for STM32MP13xx DHCOR SoM and DHSBC board
Marek Vasut [Sat, 27 Apr 2024 22:20:38 +0000 (00:20 +0200)]
ARM: dts: stm32: Add support for STM32MP13xx DHCOR SoM and DHSBC board

This stm32mp135f-dhcor-dhsbc board is a stack of DHCOR SoM based on
STM32MP135F SoC (900MHz / crypto capabilities) populated on DHSBC
carrier board.

The SoM contains the following peripherals:
- STPMIC (power delivery)
- 512MB DDR3L memory
- eMMC and SDIO WiFi module

The DHSBC carrier board contains the following peripherals:
- Two RGMII Ethernet ports
- USB-A Host port, USB-C peripheral port, USB-C power supply plug
- Expansion connector

Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
Signed-off-by: Marek Vasut <marex@denx.de>
6 months agoARM: dts: stm32: Add pinmux nodes for DH electronics STM32MP13xx DHCOR SoM and DHSBC...
Marek Vasut [Sat, 27 Apr 2024 22:20:37 +0000 (00:20 +0200)]
ARM: dts: stm32: Add pinmux nodes for DH electronics STM32MP13xx DHCOR SoM and DHSBC board

Add new pinmux nodes for DH electronics STM32MP13xx DHCOR SoM and DHSBC board.
The following pinmux nodes are added:
- ADC pins
- ADC CC pins
- ETH1 pins
- ETH2 pins
- I2C5 pins
- MCAN1 pins
- MCAN2 pins
- PWM13 pins
- PWM5 pins
- QSPI pins
- SAI1 pins
- SDMMC2 D4..D7 pins
- SPI2 pins
- SPI3 pins
- UART4 pins
- UART7 pins
- USART1 pins
- USART2 pins

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: add eth1 and eth2 support on stm32mp13
Christophe Roullier [Sun, 21 Apr 2024 23:09:47 +0000 (01:09 +0200)]
ARM: dts: stm32: add eth1 and eth2 support on stm32mp13

Add both ethernet MACs based on GMAC SNPS IP on stm32mp13.

Signed-off-by: Christophe Roullier <christophe.roullier@st.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: Make PWR regulator driver available on STM32MP13xx
Marek Vasut [Tue, 19 Mar 2024 02:45:08 +0000 (03:45 +0100)]
ARM: dts: stm32: Make PWR regulator driver available on STM32MP13xx

This patch makes STM32 PWR regulators available on stm32mp13xx.
This requires TFA to clear RCC_SECCFGR, is disabled by default
on stm32mp13xx and can only be enabled on board config level.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agoARM: dts: stm32: add PWR regulators support on stm32mp131
Marek Vasut [Tue, 19 Mar 2024 02:45:07 +0000 (03:45 +0100)]
ARM: dts: stm32: add PWR regulators support on stm32mp131

This patch adds STM32 PWR regulators DT support on stm32mp131.
This requires TFA to clear RCC_SECCFGR, is disabled by default
and can only be enabled on board DT level.

Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agonet: dwc_eth_qos: add support for phy-reset-gpios property
Heesub Shin [Sun, 28 Apr 2024 14:24:05 +0000 (23:24 +0900)]
net: dwc_eth_qos: add support for phy-reset-gpios property

This commit adds support for a property 'phy-reset-gpios' to reset PHY
chipset.

Signed-off-by: Heesub Shin <heesub@gmail.com>
Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
6 months agostm32mp: Reserve OPTEE area in EFI memory map
Patrice Chotard [Mon, 22 Apr 2024 15:06:45 +0000 (17:06 +0200)]
stm32mp: Reserve OPTEE area in EFI memory map

Since commit 7b78d6438a2b3 ("efi_loader: Reserve unaccessible memory")
memory region above ram_top is tagged in EFI memory map as
EFI_BOOT_SERVICES_DATA.
In case of STM32MP1/STM32MP13 platforms, above ram_top, there is one
reserved-memory region tagged "no-map" dedicated to OP-TEE :
 _ addr=de000000 size=2000000 for stm32mp157x-dkx and stm32mp135f-dk
 _ addr=fe000000 size=2000000 for stm32mp157c-ev1

Before booting kernel, EFI memory map is first built, the OPTEE region is
tagged as EFI_BOOT_SERVICES_DATA and when reserving LMB, the tag LMB_NONE
is used.

Then after, the LMB are completed by boot_fdt_add_mem_rsv_regions()
which try to add again the same OPTEE region (addr=de000000 size=2000000
in case of stm32mp157x-dkx / stm32mp135f-dk or addr=fe000000 size=2000000
in case for stm2mp157c-ev1)
but now with LMB_NOMAP tag which produces the following error message :

 _ for stm32mp157x-dkx / stm32mp135f-dk :
  "ERROR: reserving fdt memory region failed (addr=de000000 size=2000000 flags=4)"

 _ for stm32mp157c-ev1 :
  "ERROR: reserving fdt memory region failed (addr=fe000000 size=2000000 flags=4)"

To avoid this, OPTEE area shouldn't be used by EFI, so we need to mark
it as reserved.

Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com>
Reviewed-by: Patrick Delaunay <patrick.delaunay@foss.st.com>
6 months agoMerge tag 'xilinx-for-v2024.10-rc1' of https://source.denx.de/u-boot/custodians/u...
Tom Rini [Mon, 17 Jun 2024 17:01:35 +0000 (11:01 -0600)]
Merge tag 'xilinx-for-v2024.10-rc1' of https://source.denx.de/u-boot/custodians/u-boot-microblaze into next

AMD/Xilinx changes for v2024.10-rc1

common:
- spl: Introduce SoC specific init function

xilinx:
- Enable FF-A and NVMEM
- Rename spl_board_init() to spl_soc_init()

zynqmp:
- DT alignments
- Enable reset from SPL
- Enable USB3 for KD240
- Align multiboot register on Kria for proper reboot
- Allow multiboot environment write even in saved environment
- Move zynqmp commands from board/ to arch/
- Clean up xilinx_zynqmp.h

versal:
- Do not prioritize boot device if driver is not enabled

versal-net:
- Setup location for redundant variables in SPI

versal2:
- Add support for new SOC

mmc:
- Fix tap delay for SD on Versal NET

spi:
- Add SPI_NOR_OCTAL_READ flag for mx66uw2g345gx0 flash part

gpio:
- Cover MODEPIN firmware dependency

6 months agoxilinx: Enable FF-A for all our arm64 SoCs
Michal Simek [Tue, 11 Jun 2024 11:06:58 +0000 (13:06 +0200)]
xilinx: Enable FF-A for all our arm64 SoCs

Enable FFA_TRANSPORT which also enable FFA command.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/5a850b1558fad0f05c61de82110abe4c0e7fd2e4.1718104009.git.michal.simek@amd.com
6 months agoxilinx: versal-net: Add env redund offset
Venkatesh Yadav Abbarapu [Fri, 14 Jun 2024 12:51:10 +0000 (18:21 +0530)]
xilinx: versal-net: Add env redund offset

ENV_OFFSET_REDUND config is by default set to 0 for flashes.
Saving the env variables is overwriting data at 0 offset,
which is wrong. So add default redund env offset
ENV_OFFSET_REDUND at 0x7F00000 for Versal NET platform.

Signed-off-by: Venkatesh Yadav Abbarapu <venkatesh.abbarapu@amd.com>
Link: https://lore.kernel.org/r/20240614125110.23058-1-venkatesh.abbarapu@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agogpio: Add proper dependency on ZYNQMP_FIRMWARE
Michal Simek [Thu, 6 Jun 2024 14:44:54 +0000 (16:44 +0200)]
gpio: Add proper dependency on ZYNQMP_FIRMWARE

ZYNQMP_FIRMWARE can be disabled and driver depends on it that's why record
this dependency via Kconfig.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/c3ca38fbb2f4e6948a5ef95b369015de96259709.1717685091.git.michal.simek@amd.com
6 months agoarm64: zynqmp: Align #address/size-cells with node
Michal Simek [Thu, 6 Jun 2024 14:35:50 +0000 (16:35 +0200)]
arm64: zynqmp: Align #address/size-cells with node

zynqmp-mini-nand wasn't aligned with dt binding that's why fix it.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/3916fde2e896b8be8863505305118903e0644ab0.1717684544.git.michal.simek@amd.com
6 months agoxilinx: zynqmp: Enable reset_cpu() in SPL
Lukas Funke [Fri, 7 Jun 2024 09:26:08 +0000 (11:26 +0200)]
xilinx: zynqmp: Enable reset_cpu() in SPL

This commit enables SPL to reset the CPU via PMU-firmware. The usual
reset mechanism requires bl31 to be loaded which may not be the case in
SPL.

Signed-off-by: Lukas Funke <lukas.funke@weidmueller.com>
Link: https://lore.kernel.org/r/20240607092608.712996-2-lukas.funke-oss@weidmueller.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoarm64: zynqmp: Enable usb3 for k24 som
Neal Frager [Tue, 4 Jun 2024 08:38:54 +0000 (09:38 +0100)]
arm64: zynqmp: Enable usb3 for k24 som

This patch corrects the mio and pll configuration registers for using usb3
on the kd240 starter kit.  Without this patch, the usb3 to sd card bridge does
not initialize correctly and u-boot is unable to find the OS located on the
kd240 starter kit sd card.

In addition, this patch correctly configures mio76 and mio77 as gpio pins
which are used as reset gpio pins on the kd240 starter kit.

Signed-off-by: Neal Frager <neal.frager@amd.com>
Link: https://lore.kernel.org/r/20240604083854.2033917-1-neal.frager@amd.com
Signed-off-by: Michal Simek <michal.simek@amd.com>
6 months agoarm64: zynqmp: Setup multiboot register to 0
Michal Simek [Mon, 3 Jun 2024 13:09:01 +0000 (15:09 +0200)]
arm64: zynqmp: Setup multiboot register to 0

On Kria when board starts from Image A or Image B partition multiboot
register is already setup to that location. When reset command is called
board is issuing soft reset which start SW at already used location (offset
of multiboot * 32k).
But board should continue to run from multiboot offset 0 (start of QSPI)
and call early bootloader every reboot that's why clear multiboot register
to 0 by default to go that route all the time.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Link: https://lore.kernel.org/r/edaf714a778bdd7447533a77b3455e4fd623f9da.1717420131.git.michal.simek@amd.com