platform/kernel/u-boot.git
16 months agoDockerfile: Add m68k-softmmu to qemu
Tom Rini [Tue, 21 Mar 2023 19:28:00 +0000 (15:28 -0400)]
Dockerfile: Add m68k-softmmu to qemu

Given efforts to add an m68k target to CI, build qemu for it.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh
Tom Rini [Tue, 21 Mar 2023 15:52:55 +0000 (11:52 -0400)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sh

A single reset controller driver (part of the clock driver) fix
for v2023.04 release.

16 months agoMerge tag 'u-boot-rockchip-20230319' of https://source.denx.de/u-boot/custodians...
Tom Rini [Mon, 20 Mar 2023 21:52:42 +0000 (17:52 -0400)]
Merge tag 'u-boot-rockchip-20230319' of https://source.denx.de/u-boot/custodians/u-boot-rockchip

- Fix for rockchip timer driver;
- Fix for rk3568 and rk3588 boot device and clock driver;
- Fix for rk3568 reset handler;
- Fix for rk3568 sdhci DLL at 52MHz;

16 months agoMerge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-sh into next
Tom Rini [Mon, 20 Mar 2023 21:51:10 +0000 (17:51 -0400)]
Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-sh into next

16 months agoMerge branch '2023-03-17-improve-read-command-add-write-command' into next
Tom Rini [Mon, 20 Mar 2023 20:31:52 +0000 (16:31 -0400)]
Merge branch '2023-03-17-improve-read-command-add-write-command' into next

To quote the author:
The first patch simplies do_read somewhat by making use of an existing
helper instead of parsing the dev_part string manually. As a bonus
(and my actual motivation), it now understands dev#partname syntax -
hard-coded partition numbers are so last decade.

I also need the symmetrical operation, being able to write to a named
raw partition, and fortunately it doesn't require that many lines of
code to implement that.

There's a very minor change in the error reporting due to using
cmdtp->name to generate the new messages, but I don't think "Error
reading blocks" offers much that "read error" doesn't.

New in v2: the last three patches add documentation, ensure CMD_WRITE
is set for sandbox and adds some basic test cases for the various ways
of accessing the partitions (by number, name, or as raw offset within
the whole disk).

v3: Add Simon's R-b to patches 2, 4, 5, fixup whitespace in patch 5.

I don't want to duplicate the documentation, but I can see the value
in 'write' having its own entry in the TOC, so I added a stub
write.rst that just refers to the read.rst, which then explicitly
documents both.

16 months agoclk: renesas: Pack reset identifier before look up
Marek Vasut [Sat, 18 Mar 2023 11:30:53 +0000 (12:30 +0100)]
clk: renesas: Pack reset identifier before look up

The reset identifier must be processed via MOD_CLK_PACK() before it is
used to look up register and bit within reset_regs or reset_clear_regs
arrays, otherwise completely bogus register and bit is picked from the
arrays, one which may even be out of range.

Fixes: 326e05c5e21 ("clk: renesas: Add and enable CPG reset driver")
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoarm: dts: rockchip: rk3188-radxarock-u-boot: remove timer compatible replacement
Johan Jonker [Tue, 7 Mar 2023 15:32:00 +0000 (16:32 +0100)]
arm: dts: rockchip: rk3188-radxarock-u-boot: remove timer compatible replacement

The Rockchip timer driver has been renamed after the fall back compatible.
There's no need to replace the timer compatible in rk3188-radxarock-u-boot.dtsi
anymore, so remove.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: timer: rockchip_timer: fix compatible and driver name
Johan Jonker [Tue, 7 Mar 2023 15:30:58 +0000 (16:30 +0100)]
rockchip: timer: rockchip_timer: fix compatible and driver name

In the binding for the Rockchip timer the compatible string
consists of a SoC orientated string and a fall back string
"rockchip,rk3288-timer", so remove all unneeded ones and
fix driver name.

Signed-off-by: Johan Jonker <jbx6244@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: sdhci: rk3568: bypass DLL when clk <= 52 MHz
Vasily Khoruzhick [Thu, 9 Mar 2023 01:28:30 +0000 (17:28 -0800)]
rockchip: sdhci: rk3568: bypass DLL when clk <= 52 MHz

For Rockchip platform, DLL bypass bit and start bit need to be set if
DLL is not locked.

With this change applied eMMC in my NanoPi R5S can run at 52 MHz.

Based on linux commit b75a52b0dda3 ("mmc: sdhci-of-dwcmshc: Update DLL
and pre-change delay for rockchip platform")

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agoRevert "arm64: dts: rk356x-u-boot: Drop combphy1 assigned-clocks/rates"
Vasily Khoruzhick [Tue, 7 Mar 2023 22:08:27 +0000 (14:08 -0800)]
Revert "arm64: dts: rk356x-u-boot: Drop combphy1 assigned-clocks/rates"

This reverts commit 5bec4b0de7851a254fb4447b3599a60f95550141.

Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agoclk: rockchip: rk3568: add stubs for CLK_PCIEPHY_REF clocks
Vasily Khoruzhick [Wed, 8 Mar 2023 05:16:10 +0000 (21:16 -0800)]
clk: rockchip: rk3568: add stubs for CLK_PCIEPHY_REF clocks

Device tree contains assigned-clock-rates property for these,
but default value will work just fine

Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Signed-off-by: Vasily Khoruzhick <anarsoul@gmail.com>
16 months agorockchip: include: configs: Remove unused SDRAM_BANK_SIZE
Jonas Karlman [Tue, 14 Mar 2023 00:38:37 +0000 (00:38 +0000)]
rockchip: include: configs: Remove unused SDRAM_BANK_SIZE

Remove unused SDRAM_BANK_SIZE define.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: include: configs: Remove dangling comments
Jonas Karlman [Tue, 14 Mar 2023 00:38:34 +0000 (00:38 +0000)]
rockchip: include: configs: Remove dangling comments

This removes dangling comments that no longer serve a purpose and has
been left after conversion of defines to Kconfig option.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agommc: rockchip_dw_mmc: Fix get_mmc_clk return value
Jonas Karlman [Tue, 14 Mar 2023 00:38:32 +0000 (00:38 +0000)]
mmc: rockchip_dw_mmc: Fix get_mmc_clk return value

The get_mmc_clk ops is expected to set a clock rate and return the
configured rate as an unsigned value. However, if clk_set_rate fails,
e.g. using a fixed rate clock, a negative error value is returned.

The mmc core will treat this as a valid unsigned rate and tries to
configure a divider based on this bogus clock rate.

Use 0 as the return value when setting clock rate fails, the mmc core
will configure to use bypass mode instead of using a bogus divider.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: tinker-rk3288: Use common BOOT_TARGET_DEVICES
Jonas Karlman [Tue, 14 Mar 2023 00:38:31 +0000 (00:38 +0000)]
rockchip: tinker-rk3288: Use common BOOT_TARGET_DEVICES

Building U-Boot for Tinker Board with USB or NET Kconfig option disabled
result in the following build error:

  In file included from include/configs/rk3288_common.h:29,
                   from include/configs/tinker_rk3288.h:14,
                   from include/config.h:3,
                   from include/common.h:16,
                   from env/common.c:10:
  include/config_distro_bootcmd.h:302:9: error: expected '}' before 'BOOT_TARGET_DEVICES_references_USB_without_CONFIG_CMD_USB'
    302 |         BOOT_TARGET_DEVICES_references_USB_without_CONFIG_CMD_USB
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  include/config_distro_bootcmd.h:302:9: note: in definition of macro 'BOOTENV_DEV_NAME_USB'
    302 |         BOOT_TARGET_DEVICES_references_USB_without_CONFIG_CMD_USB
        |         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  include/configs/tinker_rk3288.h:21:9: note: in expansion of macro 'BOOTENV_DEV_NAME'
     21 |         func(USB, usb, 0) \
        |         ^~~~
  include/config_distro_bootcmd.h:454:25: note: in expansion of macro 'BOOT_TARGET_DEVICES'
    454 |         "boot_targets=" BOOT_TARGET_DEVICES(BOOTENV_DEV_NAME) "\0"
        |                         ^~~~~~~~~~~~~~~~~~~
  include/config_distro_bootcmd.h:474:9: note: in expansion of macro 'BOOTENV_BOOT_TARGETS'
    474 |         BOOTENV_BOOT_TARGETS \
        |         ^~~~~~~~~~~~~~~~~~~~
  include/configs/rk3288_common.h:40:9: note: in expansion of macro 'BOOTENV'
     40 |         BOOTENV
        |         ^~~~~~~
  include/env_default.h:122:9: note: in expansion of macro 'CFG_EXTRA_ENV_SETTINGS'
    122 |         CFG_EXTRA_ENV_SETTINGS
        |         ^~~~~~~~~~~~~~~~~~~~~~
  In file included from env/common.c:32:
  include/env_default.h:29:36: note: to match this '{'
     29 | const char default_environment[] = {
        |                                    ^
  make[2]: *** [scripts/Makefile.build:256: env/common.o] Error 1

The BOOT_TARGET_DEVICES defined in rockchip-common.h include the same
devices as defined in tinker_rk3288.h, remove the board specific one to
fix building with USB or NET option disabled.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: rk3588: Add boot device detection
Jonas Karlman [Tue, 14 Mar 2023 00:38:30 +0000 (00:38 +0000)]
rockchip: rk3588: Add boot device detection

Enable SPL on RK3588 to detect which device it was booted from.
Fixes use of same-as-spl in u-boot,spl-boot-order prop.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agoclk: rockchip: rk3588: Fix clk_aux16m in clock driver
Jonas Karlman [Tue, 14 Mar 2023 00:38:27 +0000 (00:38 +0000)]
clk: rockchip: rk3588: Fix clk_aux16m in clock driver

The rate and error value is not returned for aux16m clocks, fix this.

Fixes: 7a474df74023 ("clk: rockchip: Add rk3588 clk support")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agoclk: rockchip: rk3568: Fix reset handler
Peter Geis [Tue, 14 Mar 2023 00:38:26 +0000 (00:38 +0000)]
clk: rockchip: rk3568: Fix reset handler

The reset handler for rk3568 is missing its private data. This leads to
an abort when a reset is triggered.

  => reset
  resetting ...
  "Synchronous Abort" handler, esr 0x96000045
  elr: 0000000000a2bc04 lr : 0000000000a2bbd4 (reloc)
  elr: 00000000eff9bc04 lr : 00000000eff9bbd4
  x0 : 00000000fdd20000 x1 : 0000000014000001
  x2 : 000000000000fdb9 x3 : 00000000edf77e88
  x4 : 00000000edf50e78 x5 : 00000000edf77530
  x6 : 000000000000001d x7 : 00000000edf8a1d0
  x8 : 00000000ffffffd8 x9 : 0000000000000008
  x10: 000000000000000d x11: 0000000000000006
  x12: 000000000001869f x13: 0000000086c290c5
  x14: 000000009118e878 x15: 0000000000000000
  x16: 00000000eff9bbb8 x17: 0000000012f8c119
  x18: 00000000edf50dc0 x19: 0000000000000000
  x20: 0000000000000001 x21: 0000000000000000
  x22: 00000000edf85900 x23: 0000000000000001
  x24: 00000000effe8bbc x25: 0000000000000000
  x26: 00000000edf85940 x27: 0000000000000000
  x28: 0000000000000000 x29: 00000000edf3c8e0

  Code: d65f03c0 d5033fbf b9400661 529d9502 (b8216802)
  Resetting CPU ...

Add the missing dev_set_priv to the rk3568 clk driver to fix this.

Fixes: 4a262feba3a5 ("rockchip: rk3568: add clock driver")
Signed-off-by: Peter Geis <pgwipeout@gmail.com>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
Tested-by: Jagan Teki <jagan@amarulasolutions.com> # radxa-cm3
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
16 months agorockchip: rk3568-rock-3a: Sync device tree from linux
Jonas Karlman [Tue, 14 Mar 2023 00:38:24 +0000 (00:38 +0000)]
rockchip: rk3568-rock-3a: Sync device tree from linux

Running U-Boot from eMMC on a ROCK 3 Model A result in the following:

  U-Boot SPL 2023.04-rc3 (Mar 11 2023 - 17:24:48 +0000)
  Trying to boot from MMC1
  Card did not respond to voltage select! : -110
  spl: mmc init failed with error: -95
  SPL: failed to boot from all boot devices
  ### ERROR ### Please RESET the board ###

The sdhci node is missing in board device tree, sync device tree from
linux v6.3-rc1 to fix booting from eMMC. Also disable sdmmc2 and uart1
nodes related to using a WiFi and BT module in the M2 slot.

Fixes: b44c54f600ab ("arm64: dts: rockchip: rk3568: Add Radxa ROCK 3 Model A board support")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: rk3568: Fix boot device detection
Jonas Karlman [Tue, 14 Mar 2023 00:38:23 +0000 (00:38 +0000)]
rockchip: rk3568: Fix boot device detection

The boot source node path for emmc is using the old sdhci name.
Replace with correct mmc name and also add same-as-spl to boot order.

Fixes: 0d61f8e5f1c0 ("rockchip: rk3568: add boot device detection")
Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agorockchip: Fix early use of bootph props
Jonas Karlman [Tue, 14 Mar 2023 00:38:21 +0000 (00:38 +0000)]
rockchip: Fix early use of bootph props

Running U-Boot on a ROCK 3 Model A result in the following:

  No serial driver found
  resetting ...
  no sysreset
  ### ERROR ### Please RESET the board ###

Replace bootph- props with u-boot,dm- props to fix this.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Kever Yang <kever.yang@rock-chips.com>
16 months agoserial: sh: Make indent consistent
Marek Vasut [Tue, 28 Feb 2023 21:19:30 +0000 (22:19 +0100)]
serial: sh: Make indent consistent

Make the indent of these macro elements consistent with the
rest of this table. No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoserial: sh: Add DEBUG_UART support
Marek Vasut [Tue, 28 Feb 2023 21:17:22 +0000 (22:17 +0100)]
serial: sh: Add DEBUG_UART support

Add support for debug output very early during boot using the DEBUG_UART
mechanism. This uses a static fixed UART port configuration selected via
Kconfig options and dedicated print functions from debug_uart.h. This is
useful e.g. when debugging problems so early during boot, that not even
the DM is initialized at that point, and thus DM_SERIAL is not available
either.

This functionality is disabled by default. To activate it, define the
following Kconfig options and select SCIF type using CFG_SCI/CFG_SCIF_A/
CFG_HSCIF/<nothing for regular SCIF>:

CONFIG_DEBUG_UART=y
CONFIG_DEBUG_UART_SCIF=y
CONFIG_DEBUG_UART_BASE=0xe6540000
CONFIG_DEBUG_UART_CLOCK=24000000

The later two options define the SCIF physical base address and SCIF
input clock in Hz. Optionally, to validate DEBUG_UART works, enable
the following as well to get early serial output message by default:

CONFIG_DEBUG_UART_ANNOUNCE=y

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoserial: sh: Rename CONFIG_SCI and CONFIG_SCIF_USE_EXT_CLK to CFG_ variants
Marek Vasut [Tue, 28 Feb 2023 21:17:21 +0000 (22:17 +0100)]
serial: sh: Rename CONFIG_SCI and CONFIG_SCIF_USE_EXT_CLK to CFG_ variants

Both CONFIG_SCI and CONFIG_SCIF_USE_EXT_CLK options do not have a
matching Kconfig entry because they are internal to the SCIF driver.
Change their prefix to CFG_, i.e. CFG_SCIF_USE_EXT_CLK and CFG_SCI,
to reflect that and avoid interferring with Kconfig symbols. Since
neither of those options are defined elsewhere, no functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agopinctrl: renesas: Replace ifdeffery with IS_ENABLED()
Marek Vasut [Tue, 28 Feb 2023 06:25:52 +0000 (07:25 +0100)]
pinctrl: renesas: Replace ifdeffery with IS_ENABLED()

Switch ifdef in sh_gpio_get_value() to IS_ENABLED() macro.
The CONFIG_RCAR_GEN3 will never have SPL counterpart, so
the IS_ENABLED() macro is the right one here. No functional
change, except for improved build test coverage.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agonet: ravb: Support fixed PHY in R-Car
Mikhail Lappo [Mon, 27 Feb 2023 23:04:11 +0000 (00:04 +0100)]
net: ravb: Support fixed PHY in R-Car

Calling old U-Boot API doesn't allow to use fixed PHY.
Searching by mask is the part of new function, after
scanning FDT for a fixed PHY definition

Fixes: e821a7bdb13 ("net: ravb: Detect PHY correctly")
Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Mikhail Lappo <mikhail.lappo@esrlabs.com>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
[Hai Pham: Drop phy_connect_dev since it's called in phy_connect]
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
[Marek: Use mask -1 instead of 0 to reinstate the search behavior
        over all PHY addresses. Add Fixes tag, sort the tag list.]

16 months agoi2c: rcar_i2c: Sort Kconfig depends list ascending
Marek Vasut [Mon, 27 Feb 2023 23:03:46 +0000 (00:03 +0100)]
i2c: rcar_i2c: Sort Kconfig depends list ascending

Sort the list of "depends" symbols in ascending order.
No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Heiko Schocher <hs@denx.de>
16 months agoi2c: rcar_iic: Sort Kconfig depends list ascending
Marek Vasut [Mon, 27 Feb 2023 23:03:45 +0000 (00:03 +0100)]
i2c: rcar_iic: Sort Kconfig depends list ascending

Sort the list of "depends" symbols in ascending order.
No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Heiko Schocher <hs@denx.de>
16 months agoclk: renesas: rcar-gen3: Replace SSCG caching with MDSEL/PE caching
Marek Vasut [Tue, 28 Feb 2023 06:25:11 +0000 (07:25 +0100)]
clk: renesas: rcar-gen3: Replace SSCG caching with MDSEL/PE caching

Do not cache the single CPG MODE register bit 12, instead cache the
entire register value, and only pick the matching bit from the cached
value when core clock of type MDSEL or PE are used. Both MDSEL and PE
clock type currently define .offset field as 12 on Gen3, which means
this code will use bit 12 on Gen3 again, however there are additional
clock on Gen4 which use different bits, and having this flexibility
in place now will be useful when adding Gen4.

No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: rmobile: Split R-Car Gen3 into separate Kconfig from common 64bit options
Marek Vasut [Tue, 28 Feb 2023 06:28:57 +0000 (07:28 +0100)]
ARM: rmobile: Split R-Car Gen3 into separate Kconfig from common 64bit options

There are multiple shared Kconfig options between R-Car Gen3 and Gen4.
Keep the common options in Kconfig.64 and move the R-Car Gen3 specific
options into separate Kconfig.rcar3 . The Kconfig.rcar3 contains SoC
and board list, which is limited to R-Car Gen3.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: rmobile: Introduce CONFIG_RCAR_64 symbol
Marek Vasut [Tue, 28 Feb 2023 06:28:56 +0000 (07:28 +0100)]
ARM: rmobile: Introduce CONFIG_RCAR_64 symbol

Introduce common Kconfig symbol for 64bit R-Car platforms and move
common configuration options into it. This is preparatory patch to
prevent duplication of Kconfig lists later on, when Gen4 is added.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: rmobile: Factor out SYS_SOC Kconfig option
Marek Vasut [Tue, 28 Feb 2023 06:28:55 +0000 (07:28 +0100)]
ARM: rmobile: Factor out SYS_SOC Kconfig option

Pull the SYS_SOC Kconfig option to avoid duplication of this option
in Kconfig.{32,64,rza1} . The default value is the same, so just set
it in one location.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: rmobile: Sort R-Car Gen3 Kconfig lists
Marek Vasut [Tue, 28 Feb 2023 06:28:54 +0000 (07:28 +0100)]
ARM: rmobile: Sort R-Car Gen3 Kconfig lists

Sort the 'imply' and 'select' lists in R-Car Gen3 Kconfig options.
No functional change.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: rmobile: Convert ifdef in rmobile_get_prr() to IS_ENABLED()
Marek Vasut [Tue, 28 Feb 2023 06:27:51 +0000 (07:27 +0100)]
ARM: rmobile: Convert ifdef in rmobile_get_prr() to IS_ENABLED()

Switch ifdef in rmobile_get_prr() to IS_ENABLED() macro.
The CONFIG_RCAR_GEN3 will never have SPL counterpart, so
the IS_ENABLED() macro is the right one here. No functional
change, except for improved build test coverage.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: renesas: falcon: Enable RWDT reset for V3U Falcon
Hai Pham [Mon, 27 Feb 2023 23:02:19 +0000 (00:02 +0100)]
ARM: renesas: falcon: Enable RWDT reset for V3U Falcon

Enable RWDT reset on Reset Controller so that it can be used as
reset trigger source for V3U Falcon.

Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> # Use one current_el() in board_init
16 months agoARM: renesas: falcon: Initialize ARM generic timer and GICv3 if EL3
Hai Pham [Mon, 27 Feb 2023 23:02:18 +0000 (00:02 +0100)]
ARM: renesas: falcon: Initialize ARM generic timer and GICv3 if EL3

U-Boot executes at EL3 is required to initalize those settings.
In other cases, they will be done by prior-stage firmware instead.

This fixes crash when U-Boot is at non-secure exception level.

Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: renesas: Enable DTO support by default on R-Car Gen3
Marek Vasut [Mon, 27 Feb 2023 23:00:19 +0000 (00:00 +0100)]
ARM: renesas: Enable DTO support by default on R-Car Gen3

All R-Car Gen3 defconfigs present in U-Boot do enable DTO support,
enable it for all of R-Car Gen3 by default in Kconfig instead, so
that no new boards would miss this functionality.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: renesas: Demote overlap memory nodes message to debug on Gen3
Hai Pham [Mon, 27 Feb 2023 23:00:01 +0000 (00:00 +0100)]
ARM: renesas: Demote overlap memory nodes message to debug on Gen3

The R-Car DTs might contains multiple /memory@* nodes from various
sources, i.e. prior firmware, u-boot itself or the OS

The duplicates are likely to happen so the messages are not meaningful
in the default setting since we have already handled that.

Reduce the message to debug level.

Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoARM: renesas: Remove defines for USB on Eagle/Condor
Hai Pham [Mon, 27 Feb 2023 22:59:32 +0000 (23:59 +0100)]
ARM: renesas: Remove defines for USB on Eagle/Condor

The Eagle board based on R-Car V3M, which does not support any USB
interfaces. The same applies for the Condor board based on R-Car V3H.

Remove the defines.

Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Signed-off-by: Hai Pham <hai.pham.ud@renesas.com>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agotest: add tests of 'read' and 'write' shell commands
Rasmus Villemoes [Thu, 2 Mar 2023 08:12:25 +0000 (09:12 +0100)]
test: add tests of 'read' and 'write' shell commands

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
16 months agosandbox: enable CMD_WRITE
Rasmus Villemoes [Thu, 2 Mar 2023 08:12:24 +0000 (09:12 +0100)]
sandbox: enable CMD_WRITE

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
16 months agodoc: document read/write commands
Rasmus Villemoes [Thu, 2 Mar 2023 08:12:23 +0000 (09:12 +0100)]
doc: document read/write commands

The read and write commands are, deliberately, implemented in the same
file, so that they stay feature-compatible (e.g. if someone implements
support for "read the full partition, however large that is", that
same syntax should also work for write). In order to ensure the
documentation for both are similarly kept in sync, and to avoid
duplication, document them both in read.rst, and add a stub write.rst
referring to read.rst.

Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agocmd: introduce 'write' command
Rasmus Villemoes [Thu, 2 Mar 2023 08:12:22 +0000 (09:12 +0100)]
cmd: introduce 'write' command

It's almost no extra code to hook up a buddy to the 'read' command. In
fact, since the command is passed its own 'struct cmd_tbl', we can use
the exact same callback, and let it figure out for itself whether it
was invoked as "read" or "write".

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
16 months agocmd: read: use part_get_info_by_dev_and_name_or_num() instead of open-coded dev_part...
Rasmus Villemoes [Thu, 2 Mar 2023 08:12:21 +0000 (09:12 +0100)]
cmd: read: use part_get_info_by_dev_and_name_or_num() instead of open-coded dev_part parsing

Use the helper part_get_info_by_dev_and_name_or_num() for parsing a
dev[:part] string and obtaining the partition info in one go, instead
of open-coding all that.

As a bonus, this will automatically allow using the dev#partname
syntax as well, for accessing raw partitions by name.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
16 months agoMerge tag 'xilinx-for-v2023.07-rc1' of https://source.denx.de/u-boot/custodians/u...
Tom Rini [Thu, 16 Mar 2023 16:18:30 +0000 (12:18 -0400)]
Merge tag 'xilinx-for-v2023.07-rc1' of https://source.denx.de/u-boot/custodians/u-boot-microblaze into next

Xilinx changes for v2023.07-rc1

cmd:
- Print results in hex instead of dec in smc command

firmware:
- Cover missing ZYNQMP_FIRMWARE dependencies

fpga:
- fix loads for unencrypted use case

relocation
- Add support for BE systems

spi:
- Fix xilinx_spi init reset sequence

arasan nand:
- Remove hardcoded bbt option
- Set ofnode value

xilinx:
- Enable SMC command
- Fix some sparse issues

zynqmp:
- Remove cdns,zynq-gem compatible string
- Add optee node
- Some DT cleanups

zynq:
- Some DT cleanups

microblaze
- Remove MANUAL_RELOC option

16 months agoMerge tag 'fsl-qoriq-next-2023-3-14' of https://source.denx.de/u-boot/custodians...
Tom Rini [Thu, 16 Mar 2023 16:17:48 +0000 (12:17 -0400)]
Merge tag 'fsl-qoriq-next-2023-3-14' of https://source.denx.de/u-boot/custodians/u-boot-fsl-qoriq into next

Enable DM_SERIAL for freescale ls2080a
Drop non DM_ETH code for freescale:
  lx2160a/ls2080rdb/ls2080aqds/ls1088a

16 months agoRevert 9f62a472dfb2 ("video: Remove duplicate cursor-positioning function")
Tom Rini [Wed, 15 Mar 2023 15:58:58 +0000 (11:58 -0400)]
Revert 9f62a472dfb2 ("video: Remove duplicate cursor-positioning function")

This reverts commit 9f62a472dfb26ec14408a27938ddd2a25700009d.

The changes here aren't quite right, and on platforms such as Raspberry
Pi where we can have both serial and video output, the change above
causes output to change. This can be seen as the hush tests we have now
fail.

Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agoMerge tag 'dm-next-12mar23a' of git://git.denx.de/u-boot-dm into next
Tom Rini [Thu, 16 Mar 2023 16:16:14 +0000 (12:16 -0400)]
Merge tag 'dm-next-12mar23a' of git://git.denx.de/u-boot-dm into next

More tests and fixes for fdt command
binman signing feature
fix buildman -A bug introduced recently

Signed-off-by: Tom Rini <trini@konsulko.com>
16 months agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-coldfire
Tom Rini [Wed, 15 Mar 2023 16:03:17 +0000 (12:03 -0400)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-coldfire

16 months agoMerge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxi
Tom Rini [Wed, 15 Mar 2023 16:01:55 +0000 (12:01 -0400)]
Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-sunxi

Per Andre:

[T]hese two patches containing just devicetree updates for
Allwinner boards.
I was still hoping for a review, since we cannot import the files from
the Linux tree verbatim, but managed to write some filter script that
convinced me that the changes are fine.
The files are from Linux v6.2-rc2, but are identical to the v6.2
release.

16 months agoboard: m5253demo: remove floating point flash size calculation
Angelo Dureghello [Tue, 14 Mar 2023 23:43:07 +0000 (00:43 +0100)]
board: m5253demo: remove floating point flash size calculation

This board is using floating point arithmetic to display
the SST39VF6401B flash size.

This actually generates errors with toolchains without
appropriate sw fp math functions available.

SST39VF6401B is the only flash for wich the size is displayed,
it's size is 8192KB and floating point calculation seems not
needed. Removing it.

Signed-off-by: Angelo Dureghello <angelo@kernel-space.org>
16 months agom68k: add private libgcc ashrdi3
Angelo Dureghello [Tue, 14 Mar 2023 09:06:58 +0000 (10:06 +0100)]
m68k: add private libgcc ashrdi3

Add ashrdi3.c to private libgcc.

Signed-off-by: Angelo Dureghello <angelo@kernel-space.org>
16 months agoboard: amcore: fix config options namespace
Angelo Dureghello [Sat, 25 Feb 2023 23:16:39 +0000 (00:16 +0100)]
board: amcore: fix config options namespace

Remove CONFIG_ namespace options from .h, moving them to
defconfig, while changing non-defconfig options to CFG_ namespace.

Signed-off-by: Angelo Durgehello <angelo@kernel-space.org>
16 months agom68k: rename CONFIG_MCFTMR to CFG_MCFTMR
Angelo Dureghello [Sat, 25 Feb 2023 22:25:26 +0000 (23:25 +0100)]
m68k: rename CONFIG_MCFTMR to CFG_MCFTMR

This is not a Kconfig option so changing to _CFG.

Signed-off-by: Angelo Durgehello <angelo@kernel-space.org>
16 months agom68k: dts: stmark2: set correct compatible field for spi nor
Angelo Dureghello [Wed, 15 Feb 2023 22:54:18 +0000 (23:54 +0100)]
m68k: dts: stmark2: set correct compatible field for spi nor

Fix error:

Invalid chip select 0:1 (err=-19)

update spi nor "compatible" property with "jedec,spi-nor"
to have spi nor properly bound as a child device.

Signed-off-by: Angelo Durgehello <angelo@kernel-space.org>
16 months agoarch: enable private libgcc for m68k
Angelo Dureghello [Tue, 7 Feb 2023 22:45:03 +0000 (23:45 +0100)]
arch: enable private libgcc for m68k

This patch fixes u-boot hanging on the first printf("%x", val).

Some toolchains built without multilib enabled may produce
u-boot freezing on first u64 shift operation, as in
lib/vsprintf.c number() function.
Using our private libgcc solves the issue.

Setting private libgcc enabled at architecture level to avoid
similar issues, it should not harm.

Signed-off-by: Angelo Durgehello <angelo@kernel-space.org>
16 months agoboard: stmark2: fix clock value
Angelo Dureghello [Mon, 6 Feb 2023 21:54:37 +0000 (22:54 +0100)]
board: stmark2: fix clock value

Fix totally blank console at boot, clock value must be decimal,
as for the 30Mhz external crystal.

Fixes: 26e5944ec90c ("stmark2: Migrate CONFIG_SYS_EXTRA_OPTIONS to Kconfig")
Signed-off-by: Angelo Dureghello <angelo@kernel-space.org>
Reviewed-by: Tom Rini <trini@konsulko.com>
16 months agom68k: add global variable sdhc_per_clk for m68k
Angelo Dureghello [Tue, 7 Feb 2023 20:28:00 +0000 (21:28 +0100)]
m68k: add global variable sdhc_per_clk for m68k

The FSL eSDHC controller supports two reference clocks. They are
platform clock and periperhal clock. The global variable sdhc_clk
has already been used for platform clock.
ColdFire also uses eSHDC controller, as in arm and powerpc,
so adding sdhc_per_clk to arch_global_data.

Signed-off-by: Angelo Durgehello <angelo@kernel-space.org>
16 months agom68k: use longword-based jumps
Angelo Dureghello [Fri, 24 Feb 2023 00:43:19 +0000 (01:43 +0100)]
m68k: use longword-based jumps

Increasing of binary size requires longword-based jumps.

Signed-off-by: Angelo Durgehello <angelo.dureghello@timesys.com>
16 months agoboard: amcore: fix u-boot mtd partition
Angelo Dureghello [Fri, 24 Feb 2023 00:42:39 +0000 (01:42 +0100)]
board: amcore: fix u-boot mtd partition

Signed-off-by: Angelo Dureghello <angelo@kernel-space.org>
16 months agobuildman: Fix CROSS_COMPILE output for sandbox
Simon Glass [Fri, 10 Mar 2023 20:48:51 +0000 (12:48 -0800)]
buildman: Fix CROSS_COMPILE output for sandbox

The previous attempt at fixing this broke the normal usage of the -A
flag.

At present, 'buildman -A sandbox' adds the path containing the
toolchain. We can assume that this is in the path and we don't want to
set CROSS_COMPILE=/bin/

Change this to align with what MakeEnvironment() does, but only for
sandbox boards.

Signed-off-by: Simon Glass <sjg@chromium.org>
16 months agoRevert "buildman: Correct CROSS_COMPILE output for sandbox"
Simon Glass [Fri, 10 Mar 2023 20:48:50 +0000 (12:48 -0800)]
Revert "buildman: Correct CROSS_COMPILE output for sandbox"

This reverts commit bd0a548ad4a155fec29473d4cc8e135832926973.

Signed-off-by: Simon Glass <sjg@chromium.org>
16 months agotools: add fdt_add_pubkey
Roman Kopytin [Wed, 8 Mar 2023 01:13:41 +0000 (01:13 +0000)]
tools: add fdt_add_pubkey

Having to use the -K option to mkimage to populate U-Boot's .dtb with the
public key while signing the kernel FIT image is often a little
awkward. In particular, when using a meta-build system such as
bitbake/Yocto, having the tasks of the kernel and U-Boot recipes
intertwined, modifying deployed artifacts and rebuilding U-Boot with
an updated .dtb is quite cumbersome. Also, in some scenarios one may
wish to build U-Boot complete with the public key(s) embedded in the
.dtb without the corresponding private keys being present on the same
build host.

So this adds a simple tool that allows one to disentangle the kernel
and U-Boot builds, by simply copy-pasting just enough of the mkimage
code to allow one to add a public key to a .dtb. When using mkimage,
some of the information is taken from the .its used to build the
kernel (algorithm and key name), so that of course needs to be
supplied on the command line.

Signed-off-by: Roman Kopytin <Roman.Kopytin@kaspersky.com>
Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
Cc: Rasmus Villemoes <rasmus.villemoes@prevas.dk>
16 months agobinman: add tests for sign option
Ivan Mikhaylov [Wed, 8 Mar 2023 01:13:40 +0000 (01:13 +0000)]
binman: add tests for sign option

Add the test which provides sequence of actions:
  1. create the image from binman dts
  2. create public and private keys
  3. add public key into dtb with fdt_add_pubkey
  4. 1. sign FIT container with new sign option with extracting from
        image
     2. sign exact FIT container with replacing of it in image
  5. check with fit_check_sign

Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
Renumber test file from 277 to 280;
   Move UpdateSignatures() to Entry base class;
   Don't allow missing mkimage as it doesn't make sense;
   Propagate --toolpath for CI;
   Call mark_build_done() to avoid regenerating FIT:
Signed-off-by: Simon Glass <sjg@chromium.org>
16 months agobinman: add sign option for binman
Ivan Mikhaylov [Wed, 8 Mar 2023 01:13:39 +0000 (01:13 +0000)]
binman: add sign option for binman

Introduce proof of concept for binman's new option which provides sign
and replace FIT containers in binary images.

Usage as example:

from:
mkimage -G privateky -r -o sha256,rsa4096 -F fit
binman replace -i flash.bin -f fit.fit fit

to:
binman sign -i flash.bin -k privatekey -a sha256,rsa4096 -f fit.fit fit

and to this one if it's need to be extracted, signed with key and put it
back in image:
binman sign -i flash.bin -k privatekey -a sha256,rsa4096 fit

Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
16 months agobinman: add documentation for binman sign option
Ivan Mikhaylov [Wed, 8 Mar 2023 01:13:38 +0000 (01:13 +0000)]
binman: add documentation for binman sign option

Add the documentation about binman sign option and providing an
example.

Signed-off-by: Ivan Mikhaylov <fr0st61te@gmail.com>
Add a section about 'binman sign' at the bottom:
Signed-off-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt apply
Marek Vasut [Thu, 2 Mar 2023 03:08:44 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt apply

Add 'fdt chosen' test which works as follows:
- Create basic DT, map it to sysmem
- Apply DTO which adds single property via fragment (without address spec)
- Apply DTO which adds more properties (string, u32, empty) and a subnode,
  with phandle via frament@0 and thus tests /__symbols__ node
- Apply DTO which modifies property of the previous DTO via phandle and thus
  tests the /__fixups__ node
- Print modified DT, verify it contains updates from DTOs

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt chosen
Marek Vasut [Thu, 2 Mar 2023 03:08:43 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt chosen

Add 'fdt chosen' test which works as follows:
- Create basic DT, map it to sysmem
- Print /chosen node, verify it is nonexistent
- Create chosen node
- Print /chosen node, verify it contains only version
- Create /chosen node with initrd entries
- Print /chosen node, verify it contains version and initrd entries

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt rsvmem
Marek Vasut [Thu, 2 Mar 2023 03:08:42 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt rsvmem

Add 'fdt rsvmem' test which works as follows:
- Create custom FDT with single reserved memory (rsvmem) entry, map it to sysmem
- Add new rsvmem entry
- Delete existing older rsvmem entry
- Add new rsvmem entry again
- Always print the rsvmem list and validate it

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt memory
Marek Vasut [Thu, 2 Mar 2023 03:08:41 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt memory

Add 'fdt memory' test which works as follows:
- Create custom FDT with /memory node, with select #*cells, map it to sysmem
- Perform memory fixup
- Read back the /memory node and validate its content

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt header
Marek Vasut [Thu, 2 Mar 2023 03:08:39 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt header

Add 'fdt header' test which works as follows:
- Create basic FDT, map it to sysmem
- Print the FDT header
- Get all members of the FDT header into variable and
  verify the variables contain correct data

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
Merged in test: cmd: fdt: Drop unused fdt_test_header_get() fdt parameter:
Signed-off-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Test fdt print and list
Marek Vasut [Thu, 2 Mar 2023 03:08:32 +0000 (04:08 +0100)]
test: cmd: fdt: Test fdt print and list

Add 'fdt print' and 'fdt list' test which works as follows:
- Create fuller FDT, map it to sysmem
- Print the entire FDT, parts of the FDT and select properties
- Compare output from the print or list

The test case can be triggered using:
"
./u-boot -Dc 'ut fdt'
"
To dump the full output from commands used during test, add '-v' flag.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agocmd: fdt: Drop the 0x prefix
Marek Vasut [Thu, 2 Mar 2023 03:04:40 +0000 (04:04 +0100)]
cmd: fdt: Drop the 0x prefix

The 'fdt get addr' is always assumed to be hex value, drop the prefix.
Since this might break existing users who depend on the existing
behavior with 0x prefix, this is a separate patch. Revert if this
breaks anything.

Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoconsole: Use only 0x00 as line separator for console recording
Marek Vasut [Mon, 27 Feb 2023 19:55:39 +0000 (20:55 +0100)]
console: Use only 0x00 as line separator for console recording

In case character 0x20 (space) is used as line separator,
character 0x9 (tab) is treated end of line. Commands which
output a lot of tabs, i.e. various tree printing commands
like 'fdt print' then end up generating a lot of newlines
in the recorded output, and the recorded output is corrupted.

Use character 0x00 (NUL) as separator instead to treat the
tabs as valid part of recorded line.

Suggested-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
16 months agotest: cmd: fdt: Drop new unneeded curly brackets
Marek Vasut [Fri, 10 Mar 2023 03:33:14 +0000 (04:33 +0100)]
test: cmd: fdt: Drop new unneeded curly brackets

Drop no longer needed { } around ut_assert*() functions in FDT test.
No functional change.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agotest: Wrap assert macros in ({ ... }) and fix missing semicolons
Marek Vasut [Fri, 10 Mar 2023 03:33:13 +0000 (04:33 +0100)]
test: Wrap assert macros in ({ ... }) and fix missing semicolons

Wrap the assert macros in ({ ... }) so they can be safely used both as
right side argument as well as in conditionals without curly brackets
around them. In the process, find a bunch of missing semicolons, fix
them.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
16 months agoMerge tag 'v2023.04-rc4' into next
Tom Rini [Tue, 14 Mar 2023 14:58:41 +0000 (10:58 -0400)]
Merge tag 'v2023.04-rc4' into next

Prepare v2023.04-rc4

Signed-off-by: Tom Rini <trini@konsulko.com>
16 months agoMerge branch '2023-03-14-revert-two-TI-patches' into next
Tom Rini [Tue, 14 Mar 2023 14:53:50 +0000 (10:53 -0400)]
Merge branch '2023-03-14-revert-two-TI-patches' into next

Per request of the author, these two patches weren't quite ready to be
applied yet, so revert them.

16 months agoRevert "configs: j721s2: merge HS and non-HS defconfigs"
Tom Rini [Tue, 14 Mar 2023 14:53:44 +0000 (10:53 -0400)]
Revert "configs: j721s2: merge HS and non-HS defconfigs"

This reverts commit c714045cc3c0c36bc836c909e74db3273a7dd390.

Signed-off-by: Tom Rini <trini@konsulko.com>
16 months agoRevert "configs: j7200: Merge HS and non-HS defconfigs"
Tom Rini [Tue, 14 Mar 2023 14:53:38 +0000 (10:53 -0400)]
Revert "configs: j7200: Merge HS and non-HS defconfigs"

This reverts commit e352e1061f4c9a8adb70b6ff819890c42e5b3ef7.

Signed-off-by: Tom Rini <trini@konsulko.com>
16 months agorpi: Update the RPi Zero 2W DT filename
Peter Robinson [Tue, 28 Feb 2023 10:17:26 +0000 (10:17 +0000)]
rpi: Update the RPi Zero 2W DT filename

Update the Raspberry Pi Zero 2W device tree file
name to match what landed upstream.

Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
16 months agorpi: Copy eth PHY address from fw DT to loaded DT
Antoine Mazeas [Fri, 19 Aug 2022 08:56:46 +0000 (10:56 +0200)]
rpi: Copy eth PHY address from fw DT to loaded DT

Some Raspberry Pi 400 boards, specifically rev 1.1, have a different
address for the ethernet PHY device than what is provided by the kernel
DTB. The correct address is provided by the firmware, so we should carry
it over into the loaded device tree so that ethernet works on such boards.

Signed-off-by: Antoine Mazeas <antoine@karthanis.net>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
16 months agorpi: Copy properties from firmware dtb to the loaded dtb
Antoine Mazeas [Fri, 19 Aug 2022 08:56:45 +0000 (10:56 +0200)]
rpi: Copy properties from firmware dtb to the loaded dtb

The RPI firmware adjusts several property values in the dtb it passes
to u-boot depending on the board/SoC revision. Inherit some of these
when u-boot loads a dtb itself. Specificaly copy:

* /model: The firmware provides a more specific string
* /memreserve: The firmware defines a reserved range, better keep it
* emmc2bus and pcie0 dma-ranges: The C0T revision of the bcm2711 Soc (as
  present on rpi 400 and some rpi 4B boards) has different values for
  these then the B0T revision. So these need to be adjusted to boot on
  these boards
* blconfig: The firmware defines the memory area where the blconfig
  stored. Copy those over so it can be enabled.
* /chosen/kaslr-seed: The firmware generates a kaslr seed, take advantage
  of that.

Signed-off-by: Sjoerd Simons <sjoerd@collabora.com>
Signed-off-by: Antoine Mazeas <antoine@karthanis.net>
Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Peter Robinson <pbrobinson@gmail.com>
16 months agoconfigs: ls208x: enable DM_SERIAL
Ioana Ciornei [Tue, 28 Feb 2023 16:32:12 +0000 (18:32 +0200)]
configs: ls208x: enable DM_SERIAL

Now that the DT nodes for the serial devices are in place for these
boards, enable DM_SERIAL in the associated configs.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoarch: arm: dst: fsl-ls2080a.dts: tag serial nodes with bootph-all
Ioana Ciornei [Tue, 28 Feb 2023 16:32:11 +0000 (18:32 +0200)]
arch: arm: dst: fsl-ls2080a.dts: tag serial nodes with bootph-all

Tag the serial nodes with bootph-all in order to have these nodes and
the drivers available before relocation.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoarch: arm: dst: fsl-ls2080a.dts: sync serial nodes with Linux
Ioana Ciornei [Tue, 28 Feb 2023 16:32:10 +0000 (18:32 +0200)]
arch: arm: dst: fsl-ls2080a.dts: sync serial nodes with Linux

Sync the serial nodes of the LS208XA RDB/QDS boards with their
representation in Linux. We also imported the clockgen and sysclk nodes
which are dependencies.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoarch: arm: dst: fsl-ls2080a.dtsi: move the serial nodes under soc
Ioana Ciornei [Tue, 28 Feb 2023 16:32:09 +0000 (18:32 +0200)]
arch: arm: dst: fsl-ls2080a.dtsi: move the serial nodes under soc

Move the serial nodes under the soc node. No changes are made to the
nodes, just their location is changed.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoarch: arm: dst: fsl-ls2080a.dtsi: add an 'soc' node
Ioana Ciornei [Tue, 28 Feb 2023 16:32:08 +0000 (18:32 +0200)]
arch: arm: dst: fsl-ls2080a.dtsi: add an 'soc' node

The u-boot dts for these boards do not have an soc node, unlike its
Linux counterpart. This patch just adds the soc node as seen in Linux,
the next patches will move some nodes under it.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Vladimir Oltean <vladimir.oltean@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoarm: dts: ls1088a-rdb: replace 'xgmii' with '10gbase-r'
Ioana Ciornei [Wed, 22 Feb 2023 14:17:40 +0000 (16:17 +0200)]
arm: dts: ls1088a-rdb: replace 'xgmii' with '10gbase-r'

When the first device tree description was added for the ethernet nodes,
the 2 10G ports on the LS1088ARDB were wrongly described as 'xgmii'.

Fix this by replacing the two last occurrences of 'xgmii' in the device
trees of the Layerscape DPAA2 devices.

Fixes: 68c7c008e84a ("arm: dts: ls1088ardb: add DPMAC and PHY nodes")
Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoboard: freescale: ls1088a: remove code under !CONFIG_DM_ETH
Ioana Ciornei [Wed, 15 Feb 2023 15:31:19 +0000 (17:31 +0200)]
board: freescale: ls1088a: remove code under !CONFIG_DM_ETH

Now that DM_ETH is enabled by default, there is no point in keeping the
non-DM_ETH code which initialized the ethernet interfaces.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoboard: freescale: ls2080aqds: remove code under !CONFIG_DM_ETH
Ioana Ciornei [Wed, 15 Feb 2023 15:31:18 +0000 (17:31 +0200)]
board: freescale: ls2080aqds: remove code under !CONFIG_DM_ETH

Now that DM_ETH is enabled by default, there is no point in keeping the
non-DM_ETH code which initialized the ethernet interfaces.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoboard: freescale: ls2080rdb: remove code under !CONFIG_DM_ETH
Ioana Ciornei [Wed, 15 Feb 2023 15:31:17 +0000 (17:31 +0200)]
board: freescale: ls2080rdb: remove code under !CONFIG_DM_ETH

Now that DM_ETH is enabled by default, there is no point in keeping the
non-DM_ETH code which initialized the ethernet interfaces.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoboard: freescale: lx2160a: remove code under !CONFIG_DM_ETH
Ioana Ciornei [Wed, 15 Feb 2023 15:31:16 +0000 (17:31 +0200)]
board: freescale: lx2160a: remove code under !CONFIG_DM_ETH

Now that DM_ETH is enabled by default, there is no point in keeping the
non-DM_ETH code which initialized the ethernet interfaces.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoboard: freescale: lx2160a: remove hardcoded ethernet initialization
Ioana Ciornei [Wed, 15 Feb 2023 15:31:15 +0000 (17:31 +0200)]
board: freescale: lx2160a: remove hardcoded ethernet initialization

The LX2160ARDB board has support for DM_ETH probed devices, which means
that we do not need to manually create an MDIO controller, register it,
create PHYs on it etc.

In order to cleanup the board file a bit, just remove this code entirely.

Signed-off-by: Ioana Ciornei <ioana.ciornei@nxp.com>
Signed-off-by: Peng Fan <peng.fan@nxp.com>
16 months agoARM: meson: odroid-go-ultra: setup PMIC regulators are board init
Neil Armstrong [Fri, 10 Feb 2023 10:25:07 +0000 (11:25 +0100)]
ARM: meson: odroid-go-ultra: setup PMIC regulators are board init

The Odroid Go Ultra has 2 chained PMICs RK818 and RK818, and needs
an adjustment on the BUCK and LDO values.

Add the initial regulators values in -u-boot.dtsi & run the initial
regulator setup in a new odroid-go-ultra board.

Proper OTG and BOOST regulators are still missing to have USB-A
host properly working.

Link: https://lore.kernel.org/r/20230210-u-boot-odroid-go-ultra-pmics-setup-v1-1-1f16d62b76af@linaro.org
Signed-off-by: Neil Armstrong <neil.armstrong@linaro.org>
16 months agoPrepare v2023.04-rc4
Tom Rini [Tue, 14 Mar 2023 00:52:48 +0000 (20:52 -0400)]
Prepare v2023.04-rc4

Signed-off-by: Tom Rini <trini@konsulko.com>
16 months agoMerge tag 'efi-next-20230313' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Mon, 13 Mar 2023 19:36:52 +0000 (15:36 -0400)]
Merge tag 'efi-next-20230313' of https://source.denx.de/u-boot/custodians/u-boot-efi into next

Pull request efi-next-20230313

UEFI:

* Improve graphics support in EFI app

Others:

* x86: Add a few more items to bdinfo
* video: Remove duplicate cursor-positioning function
* video: Clear the vidconsole rather than the video

16 months agoMerge tag 'efi-2023-04-rc4' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Mon, 13 Mar 2023 15:39:21 +0000 (11:39 -0400)]
Merge tag 'efi-2023-04-rc4' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request for efi-2023-04-rc4

Documentation:

* man-page for panic command

UEFI:

* Correct parameter check for SetVariable()

Other:

 * Provide unit test for crc8

16 months agoefi_loader: describe term_get_char()
Heinrich Schuchardt [Fri, 3 Mar 2023 21:04:26 +0000 (22:04 +0100)]
efi_loader: describe term_get_char()

Add a function description.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
16 months agoefi_loader: update SetVariable attribute check
Masahisa Kojima [Tue, 21 Feb 2023 02:33:17 +0000 (11:33 +0900)]
efi_loader: update SetVariable attribute check

UEFI specification v2.10 says that
EFI_VARIABLE_AUTHENTICATED_WRITE_ACCESS is deprecated and
EFI_UNSUPPORTED should be returned in SetVariable variable service.
Current implementation returns EFI_INVALID_PARAMETER,
let's fix the return value.

Together with above change, this commit also updates the SetVariable
attribute check to be aligned with the EDK2 reference implementation.

Signed-off-by: Masahisa Kojima <masahisa.kojima@linaro.org>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>