platform/kernel/u-boot.git
2 years agovexpress64: Add ARMv8R-64 board variant
Peter Hoyes [Fri, 4 Mar 2022 16:30:18 +0000 (16:30 +0000)]
vexpress64: Add ARMv8R-64 board variant

The ARMv8-R64 architecture introduces optional VMSA (paging based MMU)
support in the EL1/0 translation regime, which makes that part mostly
compatible to ARMv8-A.

Add a new board variant to describe the "BASE-R64" FVP model, which
inherits a lot from the existing v8-A FVP support. One major difference
is that the memory map in "inverted": DRAM starts at 0x0, MMIO is at
2GB [1].

 * Create new TARGET_VEXPRESS64_BASER_FVP target, sharing most of the
   exising configuration.
 * Implement inverted memory map in vexpress_aemv8.h
 * Create vexpress_aemv8r defconfig
 * Provide an MMU memory map for the BASER_FVP
 * Update vexpress64 documentation

At the moment the boot-wrapper is the only supported secure firmware. As
there is no official DT for the board yet, we rely on it being supplied
by the boot-wrapper into U-Boot, so use OF_HAS_PRIOR_STAGE, and go with
a dummy DT for now.

[1] https://developer.arm.com/documentation/100964/1114/Base-Platform/Base---memory/BaseR-Platform-memory-map

Signed-off-by: Peter Hoyes <Peter.Hoyes@arm.com>
[Andre: rebase and add Linux kernel header]
Signed-off-by: Andre Przywara <andre.przywara@arm.com>
[trini: Add MAINTAINERS entry for Peter]

2 years agovexpress64: pick DRAM size from DT
Andre Przywara [Fri, 4 Mar 2022 16:30:17 +0000 (16:30 +0000)]
vexpress64: pick DRAM size from DT

So far the DRAM size for both the Juno and the FVP model were hardcoded
in our config header file. For the Juno this is fine, as all models have
8 GiB of DRAM, but the DRAM size can be configured on the model command
line.

Drop the fixed DRAM size setup, instead look up the size in the device
tree, that we now have for every board. This allows a user to inject
a DT with the proper size, and be able to use the full amount of DRAM.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: generalise page table generation
Andre Przywara [Fri, 4 Mar 2022 16:30:16 +0000 (16:30 +0000)]
vexpress64: generalise page table generation

In preparation for the ARMv8-R64 FVP support, which has DRAM mapped at
0x0, generalise the page table generation, by using symbolic names for
the address ranges instead of fixed numbers.

We already define the base of the DRAM and MMIO regions, so just use
those symbols in the page table description. Rename V2M_BASE to the more
speaking V2M_DRAM_BASE on the way.

On the VExpress memory map, the address space right after 4GB is of no
particular interest to software, as the whole of DRAM is mapped at 32GB
instead. The first 2 GB alias to the lower 2GB of DRAM mapped below 4GB,
so we skip this part and map some more of the high DRAM, should anyone
need it.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: defconfigs: allow default commands
Andre Przywara [Fri, 4 Mar 2022 16:30:15 +0000 (16:30 +0000)]
vexpress64: defconfigs: allow default commands

Right now the defconfig the Arm VExpress64 boards disables quite some
standard commands, for apparently no good reasons (as image size is
hardly a concern here).

Remove the lines explicitly disabling those features, leaving it to
the U-Boot default settings to set them.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: fvp: add distro_boot support
Andre Przywara [Fri, 4 Mar 2022 16:30:14 +0000 (16:30 +0000)]
vexpress64: fvp: add distro_boot support

So far the FVP model just supports booting through semihosting, so by
loading files from the host the model is running on. This allows for
quick booting of new kernels (or replacing DTBs), but prevents more
featureful boots like using UEFI.

Enable the distro_boot feature, and provide a list of possible boot
sources that U-Boot should check:
- For backwards compatibility we start with semihosting, which gets its
  commands migrated from CONFIG_BOOTCOMMAND into the distro_boot
  infrastructure. This is also slightly tweaked to fail graceful in case
  the required files could not be found.
- Next we try to use a user provided script, that could be easily
  placed into memory using the model command line.
- Since we gained virtio support with the enablement of OF_CONTROL,
  let's check virtio block devices next. This is where UEFI boot can
  be easily used, for instance by providing a distro installer .iso
  file through virtio-blk.
- Networking is now provided by virtio as well, so enable the default
  PXE and DHCP boot flows, mostly because we can.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: move hardware setting from defconfig to Kconfig
Andre Przywara [Fri, 4 Mar 2022 16:30:13 +0000 (16:30 +0000)]
vexpress64: move hardware setting from defconfig to Kconfig

The defconfigs for the Arm Juno board and the FVP model are quite large,
setting a lot of platform-fixed variables like SYS_TEXT_BASE.
As those values are not really a user choice, let's provide default
values for them in our Kconfig file, so a lot of cruft can be removed
from the defconfig files.
This also moves the driver selection out of there, since this is again
not something a user should really decide on. Instead we allow users to
enable or disable subsystems, and select the appropriate drivers based
on that in the Kconfig file.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: config header: unify environment definition
Andre Przywara [Fri, 4 Mar 2022 16:30:12 +0000 (16:30 +0000)]
vexpress64: config header: unify environment definition

The definition of the standard environment variables (kernel_addr_r and
friends) has been improved lately for the FVP model, but the Juno board
is still using some custom scheme.
Since we need to extend this to a third board soon, let's unify the
definition:
- Define the Juno addresses in the same generic way we do for the FVP
  model, and move the actual variable setting out of the board #ifdef's.
- Add the missing addresses for a PXE file and a boot script.
- Cleanup some stale comments on the way.

As the FVP model doesn't have support for distro_boot quite yet, add
a dummy definition for now, to be replaced with the real thing later.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: fvp: enable OF_CONTROL
Andre Przywara [Fri, 4 Mar 2022 16:30:11 +0000 (16:30 +0000)]
vexpress64: fvp: enable OF_CONTROL

The FVP base model is relying on a DT for Linux operation, so there is
no reason we would need to rely on hardcoded information for U-Boot.
Letting U-Boot use a DT will open up the usage of actual peripherals,
beyond the support for semihosting only.

Enable OF_CONTROL in the Kconfig, and use the latest dts files from
Linux. Depending on whether we use the boot-wrapper or TF-A, there is
already a DTB provided or not, respectively.

To cover the boot-wrapper, we add an arm64 Linux kernel header, which
allows the boot-wrapper to treat U-Boot like a Linux kernel. U-Boot will
find the pointer to the DTB in x0, and will use it.

Even though TF-A carries a DT, at the moment this is not made available
to non-secure world, so to not break users, we use the U-Boot provided
DTB copy in that case. For some reason TF-A puts some DT like structure
at the address x0 is pointing at, but that is very small and doesn't
carry any hardware information. Make the code to ignore those small DTBs.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agoarm: dts: Add Arm FVP Fastmodel RevC .dts files from Linux
Andre Przywara [Fri, 4 Mar 2022 16:30:10 +0000 (16:30 +0000)]
arm: dts: Add Arm FVP Fastmodel RevC .dts files from Linux

The Arm Fixed Virtual Platform (FVP) is a software model for an
artificial ARM platform, it is available for free on the Arm website[1].

Add the devicetree files for the latest RevC version, as we will need
them to enable OF_CONTROL for the vexpress_aemv8a_semi board.

This is a verbatim copy of the respective files from Linux v5.17-rc6,
which is unchanged from the v5.16 release.

[1] https://developer.arm.com/tools-and-software/simulation-models/fast-models

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agovexpress64: Kconfig: move board definitions out of arch/arm
Andre Przywara [Fri, 4 Mar 2022 16:30:09 +0000 (16:30 +0000)]
vexpress64: Kconfig: move board definitions out of arch/arm

At the moment we define three "VExpress64" boards in arch/arm/Kconfig,
plus have a second Kconfig file in board/armltd/Kconfig.
One of those three boards is actually bogus (TARGET_VEXPRESS64_AEMV8A),
that stanza looks like being forgotten in a previous cleanup.

To remove the clutter from the generic Kconfig file, just define some
ARCH_VEXPRESS64 symbol there, enable some common options, and do the
board/model specific configuration in the board/armltd Kconfig file.

That allows to streamline and fine tune the configuration later, and
to also pull a lot of "non user choices" out of the defconfigs.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
2 years agoMerge branch '2022-04-01-Kconfig-migrations-and-cleanups' into next
Tom Rini [Fri, 1 Apr 2022 14:35:19 +0000 (10:35 -0400)]
Merge branch '2022-04-01-Kconfig-migrations-and-cleanups' into next

- Migrate a number of CONFIG symbols to Kconfig.  Of note, with this we
  now complete migration of CONFIG_SYS_EXTRA_OPTIONS.

2 years agoconfigs: Resync with savedefconfig
Tom Rini [Fri, 1 Apr 2022 14:33:18 +0000 (10:33 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoglobal: Remove CONFIG_SYS_EXTRA_OPTIONS support
Tom Rini [Thu, 24 Mar 2022 21:18:06 +0000 (17:18 -0400)]
global: Remove CONFIG_SYS_EXTRA_OPTIONS support

All options have now been migrated to Kconfig correctly so remove this
support.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_SYS_MONITOR_BASE to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:18:05 +0000 (17:18 -0400)]
Convert CONFIG_SYS_MONITOR_BASE to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_MONITOR_BASE

Note that for how this is re-used on some PowePC platforms, we introduce
CONFIG_SPL_SYS_MONITOR_BASE and CONFIG_TPL_SYS_MONITOR_BASE and use the
CONFIG_VAL macro to get the correct value at build time, in the code.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_NORFLASH_PS32BIT to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:18:04 +0000 (17:18 -0400)]
Convert CONFIG_NORFLASH_PS32BIT to Kconfig

This converts the following to Kconfig:
   CONFIG_NORFLASH_PS32BIT

Note that we also attempt to correct the behavior of the code here,
which had been testing for "NORFLASH_PS32BIT" which would never be set,
instead check for the now set "CONFIG_NORFLASH_PS32BIT", which results
in some behavior change.

Cc: TsiChung Liew <Tsi-Chung.Liew@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoat91: Switch to SD_BOOT / CONFIG_NAND_BOOT
Tom Rini [Thu, 24 Mar 2022 21:18:03 +0000 (17:18 -0400)]
at91: Switch to SD_BOOT / CONFIG_NAND_BOOT

The values CONFIG_SYS_USE_NANDFLASH and CONFIG_SYS_USE_MMC serve the
same purpose as CONFIG_SD_BOOT / CONFIG_NAND_BOOT so migrate to using
these switches instead as they're already in Kconfig.

Cc: Stelian Pop <stelian@popies.net>
Cc: Heiko Schocher <hs@denx.de>
Cc: Daniel Gorsulowski <daniel.gorsulowski@esd.eu>
Cc: Eugen Hristev <eugen.hristev@microchip.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_SRIO_PCIE_BOOT_SLAVE to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:18:02 +0000 (17:18 -0400)]
Convert CONFIG_SRIO_PCIE_BOOT_SLAVE to Kconfig

This converts the following to Kconfig:
   CONFIG_SRIO_PCIE_BOOT_SLAVE

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_E300 et al to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:18:01 +0000 (17:18 -0400)]
Convert CONFIG_E300 et al to Kconfig

This converts the following to Kconfig:
   CONFIG_E300
   CONFIG_E5500

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agomx53loco: Convert CONFIG_DIALOG_POWER to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:18:00 +0000 (17:18 -0400)]
mx53loco: Convert CONFIG_DIALOG_POWER to Kconfig

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoexynos: Drop CONFIG_DEVICE_TREE_LIST
Tom Rini [Thu, 24 Mar 2022 21:17:59 +0000 (17:17 -0400)]
exynos: Drop CONFIG_DEVICE_TREE_LIST

This value isn't used anywhere, drop it.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_DEEP_SLEEP to Kconfig
Tom Rini [Thu, 24 Mar 2022 21:17:58 +0000 (17:17 -0400)]
Convert CONFIG_DEEP_SLEEP to Kconfig

This converts the following to Kconfig:
   CONFIG_DEEP_SLEEP

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoM5329EVB, M5373EVB: Remove CONFIG_NANDFLASH_SIZE
Tom Rini [Thu, 24 Mar 2022 21:17:57 +0000 (17:17 -0400)]
M5329EVB, M5373EVB: Remove CONFIG_NANDFLASH_SIZE

In the case of M5373EVB we always had NANDFLASH_SIZE=16, so just use it
directly.  In the case of M5329EVB we had not removed the rest of NAND
support when saying we didn't have NAND, so instead use that to key off
of rather than NANDFLASH_SIZE.

Cc: TsiChung Liew <Tsi-Chung.Liew@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agodb-mv784mp-gp: Rename CONFIG_DB_784MP_GP to CONFIG_TARGET_DB_MV784MP_GP
Tom Rini [Thu, 24 Mar 2022 21:17:56 +0000 (17:17 -0400)]
db-mv784mp-gp: Rename CONFIG_DB_784MP_GP to CONFIG_TARGET_DB_MV784MP_GP

The value CONFIG_DB_784MP_GP is only used in the DDR code to refer to
CONFIG_TARGET_DB_MV784MP_GP so just use that second value directly.

Cc: Stefan Roese <sr@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Stefan Roese <sr@denx.de>
2 years agop1_p2_rdb: Remove CONFIG_CPLD_[BO]R_PRELIM
Tom Rini [Wed, 23 Mar 2022 21:20:09 +0000 (17:20 -0400)]
p1_p2_rdb: Remove CONFIG_CPLD_[BO]R_PRELIM

These are not referenced in code, drop.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_CLOCKS to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:08 +0000 (17:20 -0400)]
Convert CONFIG_CLOCKS to Kconfig

This converts the following to Kconfig:
   CONFIG_CLOCKS

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_CLOCK_SYNTHESIZER to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:07 +0000 (17:20 -0400)]
Convert CONFIG_CLOCK_SYNTHESIZER to Kconfig

This converts the following to Kconfig:
   CONFIG_CLOCK_SYNTHESIZER

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoexynos: Drop CONFIG_CLK_*
Tom Rini [Wed, 23 Mar 2022 21:20:06 +0000 (17:20 -0400)]
exynos: Drop CONFIG_CLK_*

We only set one of these values ever at this point, so remove dead code.

Cc: Minkyu Kang <mk7.kang@samsung.com>
Cc: Jaehoon Chung <jh80.chung@samsung.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Minkyu Kang <mk7.kang@samsung.com>
Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2 years agoConvert CONFIG_SYS_USE_NORFLASH et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:05 +0000 (17:20 -0400)]
Convert CONFIG_SYS_USE_NORFLASH et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SYS_USE_NORFLASH
   CONFIG_SYS_USE_BOOT_NORFLASH

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoglobal: Remove CONFIG_SYS_USE_DATAFLASH*
Tom Rini [Wed, 23 Mar 2022 21:20:04 +0000 (17:20 -0400)]
global: Remove CONFIG_SYS_USE_DATAFLASH*

There are a handful of variants around CONFIG_SYS_USE_DATAFLASH and none
of them now control anything further within their board config.h files,
so remove these from CONFIG_SYS_EXTRA_OPTIONS and then remove the empty
blocks in the board config.h files.  In a few places further clean up
related logic.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_SDCARD et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:03 +0000 (17:20 -0400)]
Convert CONFIG_SDCARD et al to Kconfig

This converts the following to Kconfig:
   CONFIG_SDCARD
   CONFIG_SPIFLASH

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoam43xx_evm_qspiboot: Remove CONFIG_SYS_EXTRA_OPTIONS
Tom Rini [Wed, 23 Mar 2022 21:20:02 +0000 (17:20 -0400)]
am43xx_evm_qspiboot: Remove CONFIG_SYS_EXTRA_OPTIONS

CONFIG_QSPI is not used in the code, drop this.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoMPC837XERDB: Move CONFIG_PCIE to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:01 +0000 (17:20 -0400)]
MPC837XERDB: Move CONFIG_PCIE to Kconfig

Move this symbol to the board Kconfig file.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_LPUART et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:20:00 +0000 (17:20 -0400)]
Convert CONFIG_LPUART et al to Kconfig

This converts the following to Kconfig:
   CONFIG_LPUART
   CONFIG_LPUART_32B_REG

And note that CONFIG_LPUART_32B_REG is unused in code.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_LSCHLV2 to Kconfig et al
Tom Rini [Wed, 23 Mar 2022 21:19:59 +0000 (17:19 -0400)]
Convert CONFIG_LSCHLV2 to Kconfig et al

This converts the following to Kconfig:
   CONFIG_LSCHLV2
   CONFIG_LSXHL

Cc: Michael Walle <michael@walle.cc>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Michael Walle <michael@walle.cc>
2 years agompc8548cds: Rework CONFIG_LEGACY usage
Tom Rini [Wed, 23 Mar 2022 21:19:58 +0000 (17:19 -0400)]
mpc8548cds: Rework CONFIG_LEGACY usage

This CONFIG option is used in one place, so pick a more direct name and
migrate to Kconfig.  Rework the code slightly.

Cc: Priyanka Jain <priyanka.jain@nxp.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_KM_COGE5UN et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:57 +0000 (17:19 -0400)]
Convert CONFIG_KM_COGE5UN et al to Kconfig

This converts the following to Kconfig:
   CONFIG_KM_COGE5UN
   CONFIG_KM_KIRKWOOD_128M16
   CONFIG_KM_KIRKWOOD
   CONFIG_KM_KIRKWOOD_PCI
   CONFIG_KM_NUSA
   CONFIG_KM_SUSE2

Cc: Holger Brunck <holger.brunck@hitachienergy.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Holger Brunck <holger.brunck@hitachienergy.com>
2 years agokmtegr1: Drop CONFIG_KMTEGR1
Tom Rini [Wed, 23 Mar 2022 21:19:56 +0000 (17:19 -0400)]
kmtegr1: Drop CONFIG_KMTEGR1

The only usage of CONFIG_KMTEGR1 can be replaced by
CONFIG_TARGET_KMTEGR1 so do so and remove this other symbol.

Cc: Holger Brunck <holger.brunck@hitachienergy.com>
Cc: Heiko Schocher <hs@denx.de>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Heiko Schocher <hs@denx.de>
Reviewed-by: Holger Brunck <holger.brunck@hitachienergy.com>
2 years agokeymile: Move sourcing of common Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:55 +0000 (17:19 -0400)]
keymile: Move sourcing of common Kconfig

The way board/keymile/Kconfig is written protects the options there from
being parsed on non-keymile platforms.  We cannot however safely source
this file from multiple locations.  This does not manifest as a problem
currently as there are no choice statements inside of this file (nor the
sub-Kconfig files it sources).  However, moving some target selection to
one of these files exposes the underlying problem.  Rework things so
that we have this file sourced in arch/Kconfig.

Cc: Holger Brunck <holger.brunck@hitachienergy.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Holger Brunck <holger.brunck@hitachienergy.com>
2 years agoConvert CONFIG_EMMC_BOOT et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:54 +0000 (17:19 -0400)]
Convert CONFIG_EMMC_BOOT et al to Kconfig

This converts the following to Kconfig:
   CONFIG_EMMC_BOOT
   CONFIG_MAC_ADDR_IN_SPIFLASH
   CONFIG_NAND_BOOT
   CONFIG_SPL_FSL_PBL
   CONFIG_SYS_FSL_DDR4

In this case we re-sync options that had been set in
CONFIG_SYS_EXTRA_OPTIONS but should not have been as they have proper
entries.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agomx28evk_auart_console: Remove CONFIG_SYS_EXTRA_OPTIONS
Tom Rini [Wed, 23 Mar 2022 21:19:53 +0000 (17:19 -0400)]
mx28evk_auart_console: Remove CONFIG_SYS_EXTRA_OPTIONS

This was only setting values not referenced in the code so remove it.

Cc: Fabio Estevam <festevam@gmail.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agostmark2: Migrate CONFIG_SYS_EXTRA_OPTIONS to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:52 +0000 (17:19 -0400)]
stmark2: Migrate CONFIG_SYS_EXTRA_OPTIONS to Kconfig

This platform is the only one to set these options, so define them in
the board Kconfig file.

Cc: Angelo Dureghello <angelo@sysam.it>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_MCFRTC et al to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:51 +0000 (17:19 -0400)]
Convert CONFIG_MCFRTC et al to Kconfig

This converts the following to Kconfig:
   CONFIG_MCFRTC
   CONFIG_SYS_MCFRTC_BASE

While at it, remove '#undef RTC_DEBUG' from these config files.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agostmark2: Remove CONFIG_SERIAL_FLASH
Tom Rini [Wed, 23 Mar 2022 21:19:50 +0000 (17:19 -0400)]
stmark2: Remove CONFIG_SERIAL_FLASH

This is not referenced anywhere, remove it.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_MCFTMR to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:49 +0000 (17:19 -0400)]
Convert CONFIG_MCFTMR to Kconfig

This converts the following to Kconfig:
   CONFIG_MCFTMR

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_CF_DSPI to Kconfig
Tom Rini [Wed, 23 Mar 2022 21:19:48 +0000 (17:19 -0400)]
Convert CONFIG_CF_DSPI to Kconfig

This converts the following to Kconfig:
   CONFIG_CF_DSPI

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoatmel: Remove CONFIG_SPL_ATMEL_SIZE
Tom Rini [Tue, 22 Mar 2022 01:33:33 +0000 (21:33 -0400)]
atmel: Remove CONFIG_SPL_ATMEL_SIZE

This seems to be unused in the code, remove it.

Cc: Eugen Hristev <eugen.hristev@microchip.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoRemove CONFIG_BOARDNAME and CONFIG_BOARD_NAME
Tom Rini [Tue, 22 Mar 2022 01:33:32 +0000 (21:33 -0400)]
Remove CONFIG_BOARDNAME and CONFIG_BOARD_NAME

Both of these variables are used in a few hard-coded ways to set some
string values or print something to the user.  In almost all cases, it's
just as useful to hard-code the value used.  The exception here is
printing something closer to correct board name for p1_p2_rdb machines.
This can be done using something from the device tree, but for now
hard-code a non-CONFIG based value instead.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_BITBANGMII_MULTI to Kconfig
Tom Rini [Tue, 22 Mar 2022 01:33:31 +0000 (21:33 -0400)]
Convert CONFIG_BITBANGMII_MULTI to Kconfig

This converts the following to Kconfig:
   CONFIG_BITBANGMII_MULTI

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoConvert CONFIG_BCM2835_GPIO to Kconfig
Tom Rini [Tue, 22 Mar 2022 01:33:30 +0000 (21:33 -0400)]
Convert CONFIG_BCM2835_GPIO to Kconfig

This converts the following to Kconfig:
   CONFIG_BCM2835_GPIO

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoFinish converting CONFIG_BOOTM_NETBSD et al to Kconfig
Tom Rini [Tue, 22 Mar 2022 01:33:29 +0000 (21:33 -0400)]
Finish converting CONFIG_BOOTM_NETBSD et al to Kconfig

This converts the following to Kconfig:
   CONFIG_BOOTM_NETBSD
   CONFIG_BOOTM_RTEMS
   CONFIG_DESIGNWARE_WATCHDOG
   CONFIG_DISPLAY_CPUINFO
   CONFIG_DM_ETH
   CONFIG_DM_MMC
   CONFIG_DM_REGULATOR
   CONFIG_DM_SPI
   CONFIG_DM_SPI_FLASH
   CONFIG_ISO_PARTITION
   CONFIG_OF_SEPARATE
   CONFIG_SPI_FLASH_WINBOND
   CONFIG_SPL_ETH
   CONFIG_TIMER
   CONFIG_USB_DWC3
   CONFIG_USB_DWC3_GADGET
   CONFIG_USB_DWC3_OMAP
   CONFIG_USB_DWC3_PHY_OMAP
   CONFIG_USB_EHCI_TEGRA
   CONFIG_USB_GADGET_DOWNLOAD
   CONFIG_USB_GADGET_DUALSPEED
   CONFIG_USB_GADGET_MANUFACTURER
   CONFIG_USB_GADGET_PRODUCT_NUM
   CONFIG_USB_GADGET_VBUS_DRAW
   CONFIG_USB_GADGET_VENDOR_NUM

This catches a number of cases where board config files were #undef
various CONFIG options when building SPL, and that doesn't work.  Clean
up the related comments as well.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoCI: Update unmigrated symbol check
Tom Rini [Tue, 22 Mar 2022 01:33:28 +0000 (21:33 -0400)]
CI: Update unmigrated symbol check

We need to check for config header files that #undef migrated symbols as
well.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoam33xx: musb: Remove unused configuration logic
Tom Rini [Tue, 22 Mar 2022 01:33:27 +0000 (21:33 -0400)]
am33xx: musb: Remove unused configuration logic

At this point DM and OF_CONTROL are used to configure how the USB ports
are enabled, with the exception of in SPL and no SPL_OF_CONTROL.  Remove
a bunch of now unused logic to simplify the code.

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoMerge branch '2022-03-31-image-add-a-stage-pre-load' into next
Tom Rini [Thu, 31 Mar 2022 18:12:30 +0000 (14:12 -0400)]
Merge branch '2022-03-31-image-add-a-stage-pre-load' into next

To quote the author:
This series adds a stage pre-load before launching an image.  This stage
is used to read a header before the image and this header contains the
signature of the full image.  So u-boot may check the full image before
using any data of the image.

The support of this header is added to binman, and a command verify
checks the signature of a blob and set the u-boot env variable
"loadaddr_verified" to the beginning of the "real" image.

The support of this header is only added to binman, but it may also be
added to mkimage.

2 years agocmd: bootm: add subcommand preload
Philippe Reynes [Mon, 28 Mar 2022 20:57:07 +0000 (22:57 +0200)]
cmd: bootm: add subcommand preload

Add a subcommand preload to bootm that execute the preload
stage on the image. Right now, it checks the signature
of the image with the pre-load header. If the check
succeed, the u-boot env variable 'loadaddr_verified'
is set to the address of the image (without the header).

It allows to run such commands:
tftp script.img && bootm preload $loadaddr && source $loadaddr_verified

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agotest: py: vboot: add test for global image signature
Philippe Reynes [Mon, 28 Mar 2022 20:57:06 +0000 (22:57 +0200)]
test: py: vboot: add test for global image signature

Adds test units for the pre-load header signature.

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agoconfigs: sandbox_defconfig: enable stage pre-load in bootm
Philippe Reynes [Mon, 28 Mar 2022 20:57:05 +0000 (22:57 +0200)]
configs: sandbox_defconfig: enable stage pre-load in bootm

Enable the support of stage pre-load in bootm.
For the moment, this stage allow to verify the
signature of the full image with a header.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agotools: binman: add support for pre-load header
Philippe Reynes [Mon, 28 Mar 2022 20:57:04 +0000 (22:57 +0200)]
tools: binman: add support for pre-load header

Adds the support of the pre-load header with the image signature
to binman.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agoMakefile: provide sah-key to binman
Philippe Reynes [Mon, 28 Mar 2022 20:57:03 +0000 (22:57 +0200)]
Makefile: provide sah-key to binman

Set the variable pre-load-key-path with the shell variable
PRE_LOAD_KEY_PATH that contain the keys path (used for signature).
This variable pre-load-key-path is provided to binman.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agomkimage: add public key for image pre-load stage
Philippe Reynes [Mon, 28 Mar 2022 20:57:02 +0000 (22:57 +0200)]
mkimage: add public key for image pre-load stage

This commit enhances mkimage to update the node
/image/pre-load/sig with the public key.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agocommon: spl: fit_ram: allow to use image pre load
Philippe Reynes [Mon, 28 Mar 2022 20:57:01 +0000 (22:57 +0200)]
common: spl: fit_ram: allow to use image pre load

Add the support of image pre load in spl or tpl
when loading an image from ram.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agocmd: bootm: add a stage pre-load
Philippe Reynes [Mon, 28 Mar 2022 20:57:00 +0000 (22:57 +0200)]
cmd: bootm: add a stage pre-load

Add a stage pre-load to the command bootm.
Right now, this stage may be used to read a
header and check the signature of the full
image.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agoboot: image: add a stage pre-load
Philippe Reynes [Mon, 28 Mar 2022 20:56:59 +0000 (22:56 +0200)]
boot: image: add a stage pre-load

Add a stage pre-load that could
check or modify an image.

For the moment, only a header with a signature is
supported. This header has the following format:
- magic : 4 bytes
- version : 4 bytes
- header size : 4 bytes
- image size : 4 bytes
- offset image signature : 4 bytes
- flags : 4 bytes
- reserved0 : 4 bytes
- reserved1 : 4 bytes
- sha256 of the image signature : 32 bytes
- signature of the first 64 bytes : n bytes
- image signature : n bytes
- padding : up to header size

The stage uses a node /image/pre-load/sig to
get some informations:
- algo-name (mandatory) : name of the algo used to sign
- padding-name : name of padding used to sign
- signature-size : size of the signature (in the header)
- mandatory : set to yes if this sig is mandatory
- public-key (madatory) : value of the public key

Before running the image, the stage pre-load checks
the signature provided in the header.

This is an initial support, later we could add the
support of:
- ciphering
- uncompressing
- ...

Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agolib: rsa: allow rsa verify with pkey in SPL
Philippe Reynes [Mon, 28 Mar 2022 20:56:58 +0000 (22:56 +0200)]
lib: rsa: allow rsa verify with pkey in SPL

This commit adds the option SPL_RSA_VERIFY_WITH_PKEY.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agolib: crypto: allow to build crypyo in SPL
Philippe Reynes [Mon, 28 Mar 2022 20:56:57 +0000 (22:56 +0200)]
lib: crypto: allow to build crypyo in SPL

This commit adds the options:
- SPL_ASYMMETRIC_KEY_TYPE
- SPL_ASYMMETRIC_PUBLIC_KEY_SUBTYPE
- SPL_RSA_PUBLIC_KEY_PARSER

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agolib: allow to build asn1 decoder and oid registry in SPL
Philippe Reynes [Mon, 28 Mar 2022 20:56:56 +0000 (22:56 +0200)]
lib: allow to build asn1 decoder and oid registry in SPL

This commit adds the options:
- SPL_ASN1_DECODER
- SPL_OID_REGISTRY

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agolib: Kconfig: enhance the help of OID_REGISTRY
Philippe Reynes [Mon, 28 Mar 2022 20:56:55 +0000 (22:56 +0200)]
lib: Kconfig: enhance the help of OID_REGISTRY

Enhance the help for the config OID_REGISTRY.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agolib: Kconfig: enhance help for ASN1
Philippe Reynes [Mon, 28 Mar 2022 20:56:54 +0000 (22:56 +0200)]
lib: Kconfig: enhance help for ASN1

Enhance the help for configs ASN1_COMPILER
and ASN1_decoder.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agoarch: Kconfig: imply BINMAN for SANDBOX
Philippe Reynes [Mon, 28 Mar 2022 20:56:53 +0000 (22:56 +0200)]
arch: Kconfig: imply BINMAN for SANDBOX

To be able to use the tool binman on sandbox,
the config SANDBOX should imply BINMAN.

Reviewed-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Philippe Reynes <philippe.reynes@softathome.com>
2 years agoMerge tag 'clk-2022.04-next' of https://source.denx.de/u-boot/custodians/u-boot-clk...
Tom Rini [Wed, 30 Mar 2022 22:08:22 +0000 (18:08 -0400)]
Merge tag 'clk-2022.04-next' of https://source.denx.de/u-boot/custodians/u-boot-clk into next

Clock patches for u-boot/next

This is mostly cleanups/consolidations. clk_free is made to return void, and the
CCF wrappers present in almost every CCF clock are consolidated. I would
particularly like to have the latter upstream, since there are at least two
series adding support for new CCF drivers (imx8mq and imxrt1170) which can
benefit from these commits.

I had to fix up the last commit since I missed an include for at91.

CI: https://source.denx.de/u-boot/custodians/u-boot-clk/-/pipelines/11521

2 years agoclk: Use generic CCF ops where possible
Sean Anderson [Sun, 20 Mar 2022 20:34:46 +0000 (16:34 -0400)]
clk: Use generic CCF ops where possible

This converts most CCF drivers to use generic ops. imx6q is the only
outlier, where we retain the existing functionality by moving the check to
request().

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Claudiu Beznea <claudiu.beznea@microchip.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Link: https://lore.kernel.org/r/20220320203446.740178-2-seanga2@gmail.com
[ fixed missing include for at91 ]
Signed-off-by: Sean Anderson <seanga2@gmail.com>
2 years agoclk: ccf: Add some helper functions for clock ops
Sean Anderson [Sun, 20 Mar 2022 20:34:45 +0000 (16:34 -0400)]
clk: ccf: Add some helper functions for clock ops

Most CCF drivers follow a common pattern where their clock ops defer the
actual operation to the backing CCF clock. Add some generic implementations
of these functions to reduce duplication of code.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Peng Fan <peng.fan@nxp.com>
Link: https://lore.kernel.org/r/20220320203446.740178-1-seanga2@gmail.com
2 years agoclk: Consolidate some clock functions
Sean Anderson [Sun, 27 Feb 2022 19:01:13 +0000 (14:01 -0500)]
clk: Consolidate some clock functions

These functions are exactly the same as their "nodev" varients, except they
accept a device and not an ofnode. Rewrite them to just call the other
function.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220227190113.1617498-1-seanga2@gmail.com
2 years agoclk: Make clk_free return void
Sean Anderson [Sat, 15 Jan 2022 22:25:04 +0000 (17:25 -0500)]
clk: Make clk_free return void

Most callers of this function do not check the return value, and it is
unclear what action they should take if it fails. If a function is freeing
multiple clocks, it should not stop just because the first one failed.
Since the callbacks can no longer fail, just convert the return type to
void.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-8-seanga2@gmail.com
2 years agospi: dw: Don't check clk_free
Sean Anderson [Sat, 15 Jan 2022 22:25:03 +0000 (17:25 -0500)]
spi: dw: Don't check clk_free

This function always succeeds, so don't check its return value.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-7-seanga2@gmail.com
2 years agospi: bcm63xx: Don't check clk_free
Sean Anderson [Sat, 15 Jan 2022 22:25:02 +0000 (17:25 -0500)]
spi: bcm63xx: Don't check clk_free

This function always succeeds, so don't check its return value.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-6-seanga2@gmail.com
2 years agophy: bcm63xx: Don't check clk_free
Sean Anderson [Sat, 15 Jan 2022 22:25:01 +0000 (17:25 -0500)]
phy: bcm63xx: Don't check clk_free

This function always succeeds, so don't check its return value.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-5-seanga2@gmail.com
2 years agonet: bcm63xx: Don't check clk_free
Sean Anderson [Sat, 15 Jan 2022 22:25:00 +0000 (17:25 -0500)]
net: bcm63xx: Don't check clk_free

This function always succeeds, so don't check its return value.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-4-seanga2@gmail.com
2 years agodma: bcm6348: Don't check clk_free
Sean Anderson [Sat, 15 Jan 2022 22:24:59 +0000 (17:24 -0500)]
dma: bcm6348: Don't check clk_free

This function always succeeds, so don't check its return value.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Link: https://lore.kernel.org/r/20220115222504.617013-3-seanga2@gmail.com
2 years agoclk: Make rfree return void
Sean Anderson [Sat, 15 Jan 2022 22:24:58 +0000 (17:24 -0500)]
clk: Make rfree return void

When freeing a clock there is not much we can do if there is an error, and
most callers do not actually check the return value. Even e.g. checking to
make sure that clk->id is valid should have been done in request() in the
first place (unless someone is messing with the driver behind our back).
Just return void and don't bother returning an error.

Signed-off-by: Sean Anderson <seanga2@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Link: https://lore.kernel.org/r/20220115222504.617013-2-seanga2@gmail.com
2 years agoMerge tag 'next-20220328' of https://source.denx.de/u-boot/custodians/u-boot-video...
Tom Rini [Mon, 28 Mar 2022 21:04:45 +0000 (17:04 -0400)]
Merge tag 'next-20220328' of https://source.denx.de/u-boot/custodians/u-boot-video into next

 - drop old CFB code
 - drop CONFIG_LCD_BMP_RLE8

2 years agovideo: Drop CONFIG_LCD_BMP_RLE8
Simon Glass [Sun, 14 Nov 2021 03:21:56 +0000 (20:21 -0700)]
video: Drop CONFIG_LCD_BMP_RLE8

This is not defined by any board. Even sandbox doesn't actually use
it since it has migrated to DM_VIDEO.

Drop this option. Remove the dead code also, for completeness, even
though the whole lcd.c file will be dropped soon.

Signed-off-by: Simon Glass <sjg@chromium.org>
Signed-off-by: Anatolij Gustschin <agust@denx.de>
2 years agovideo: Drop formike driver
Simon Glass [Sun, 23 Jan 2022 14:04:15 +0000 (07:04 -0700)]
video: Drop formike driver

This is not used. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Convert CONFIG_VIDEO_BCM2835 to Kconfig
Simon Glass [Sun, 23 Jan 2022 14:04:14 +0000 (07:04 -0700)]
video: Convert CONFIG_VIDEO_BCM2835 to Kconfig

This converts the following to Kconfig:
   CONFIG_VIDEO_BCM2835

This is the final ad-hoc CONFIG_VIDEO_... to convert.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Matthias Brugger <mbrugger@suse.com>
2 years agovideo: mxs: Drop old video code
Simon Glass [Sun, 23 Jan 2022 14:04:13 +0000 (07:04 -0700)]
video: mxs: Drop old video code

This is no-longer used and is the last reference to video_hw_init(). Drop
it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Drop FSL DIU driver
Simon Glass [Sun, 23 Jan 2022 14:04:12 +0000 (07:04 -0700)]
video: Drop FSL DIU driver

This does not use driver model and is more than two years past the
migration date. Drop it.

It can be added back later if needed.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: fsl: colibri_vf: Drop FSL DCU driver
Simon Glass [Sun, 23 Jan 2022 14:04:11 +0000 (07:04 -0700)]
video: fsl: colibri_vf: Drop FSL DCU driver

This does not use driver model and is more than two years past the
migration date. Drop it.

It can be added back later if needed.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Drop da8xx-fb
Simon Glass [Sun, 23 Jan 2022 14:04:10 +0000 (07:04 -0700)]
video: Drop da8xx-fb

This is not used in U-Boot anymore. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Clean up the uclass header
Simon Glass [Sun, 23 Jan 2022 14:04:09 +0000 (07:04 -0700)]
video: Clean up the uclass header

Drop the unnecessary cruft from this header and update the title.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Drop references to CONFIG_VIDEO et al
Simon Glass [Sun, 23 Jan 2022 14:04:08 +0000 (07:04 -0700)]
video: Drop references to CONFIG_VIDEO et al

Drop the Kconfigs which are not used and all references to them. In
particular, this drops CONFIG_VIDEO to avoid confusion and allow us to
eventually rename CONFIG_DM_VIDEO to CONFIG_VIDEO.

Also drop the prototype for video_get_info_str() which is no-longer used.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Jason Liu <jason.hui.liu@nxp.com>
2 years agovideo: Drop CONFIG_VIDEO_BMP_LOGO
Simon Glass [Sun, 23 Jan 2022 14:04:07 +0000 (07:04 -0700)]
video: Drop CONFIG_VIDEO_BMP_LOGO

This option is not implemented anymore. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Drop video_fb header
Simon Glass [Sun, 23 Jan 2022 14:04:06 +0000 (07:04 -0700)]
video: Drop video_fb header

This is not used now. Drop it.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: nexell: Drop unused and invalid code
Simon Glass [Sun, 23 Jan 2022 14:04:05 +0000 (07:04 -0700)]
video: nexell: Drop unused and invalid code

Unfortunately this driver uses the old video structure to store things.
This is not supported with driver model.

Drop the old code and comment out the other pieces, so the maintainer can
take a look.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: siemens: Drop unused video code
Simon Glass [Sun, 23 Jan 2022 14:04:04 +0000 (07:04 -0700)]
video: siemens: Drop unused video code

Drop this old code which is not built anymore, as it depends on
CONFIG_VIDEO which has been removed.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agovideo: Drop cfg_console
Simon Glass [Sun, 23 Jan 2022 14:04:02 +0000 (07:04 -0700)]
video: Drop cfg_console

The non-driver model video support was removed two years ago. Drop this
driver, which is only used by nokia_rx51.

Signed-off-by: Simon Glass <sjg@chromium.org>
2 years agoMerge tag 'v2022.04-rc5' into next
Tom Rini [Mon, 28 Mar 2022 16:36:49 +0000 (12:36 -0400)]
Merge tag 'v2022.04-rc5' into next

Prepare v2022.04-rc5

2 years agoPrepare v2022.04-rc5
Tom Rini [Mon, 28 Mar 2022 14:14:51 +0000 (10:14 -0400)]
Prepare v2022.04-rc5

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 28 Mar 2022 14:01:11 +0000 (14:01 +0000)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
2 years agoMerge branch '2022-03-28-critical-fixes'
Tom Rini [Mon, 28 Mar 2022 13:56:05 +0000 (09:56 -0400)]
Merge branch '2022-03-28-critical-fixes'

- A zstd, two Apple M1 and an MXS NAND critical bugfix
- Clean up another file that wasn't being removed and update some
  external documentation links.

2 years agomtd: gpmi: fix the bch setting backward compatible issue
Han Xu [Fri, 25 Mar 2022 13:36:38 +0000 (08:36 -0500)]
mtd: gpmi: fix the bch setting backward compatible issue

Previous u-boot code changed the default bch setting behavior and caused
backward compatible issue. This fix choose the legacy bch geometry back
again as the default option. If the minimum ecc strength that NAND chips
required need to be chosen, it can be enabled by either adding DT flag
"fsl,use-minimum-ecc" or CONFIG_NAND_MXS_USE_MINIMUM_ECC in configs. The
unused flag "fsl,legacy-bch-geometry" get removed.

Fixes: 51cdf83eea (mtd: gpmi: provide the option to use legacy bch geometry)
Fixes: 616f03daba (mtd: gpmi: change the BCH layout setting for large oob NAND)
Tested-by: Tim Harvey <tharvey@gateworks.com>
Tested-by: Sean Nyekjaer <sean@geanix.com>
Signed-off-by: Han Xu <han.xu@nxp.com>
Reviewed-by: Miquel Raynal <miquel.raynal@bootlin.com>
2 years agoboot: image: fixup zstd decompression buffer initialization typo
Jérôme Carretero [Wed, 16 Mar 2022 19:35:36 +0000 (15:35 -0400)]
boot: image: fixup zstd decompression buffer initialization typo

The code was mistakenly initializing the input buffer twice.

Tested to be working on BeagleBone by adjusting CONFIG_SYS_BOOTM_LEN to
64MiB (probably works with less) and preparing uImage with:

 cat arch/arm/boot/Image \
  | zstd --ultra -22 --zstd=windowLog=22 \
  > linux.bin.zst

 mkimage -A arm -T kernel uImage -C zstd -d linux.bin.zst \
  -a 0x80008000 -e 0x80008000

Without the windowLog restriction, bootm fails with a zstd decompression
error 7 (window too large), which I haven't troubleshooted.

There should be a bit more documentation on the feature...

Reviewed-by: Simon Glass <sjg@chromium.org>
Fixes: 458b30af66c image: Update image_decomp() to avoid ifdefs