Commit graph

88380 commits

Author SHA1 Message Date
Heinrich Schuchardt
d14222e7c1 risc-v: implement DBCN write byte
The DBCN extension provides a Console Write Byte call.
Implement function sbi_dbcn_write_byte to invoke it.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:55 +08:00
Chanho Park
ef08687ea0 spl: add __noreturn attribute to spl_invoke_opensbi function
spl_invoke_opensbi function is not returned to SPL. Thus, we need to
set __noreturn function attribute.

Signed-off-by: Chanho Park <chanho61.park@samsung.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:51 +08:00
Shengyu Qu
f39e24496a configs: starfive: Disable SYS_MALLOC_CLEAR_ON_INIT by default
SPL_SYS_MALLOC_CLEAR_ON_INIT would enable SYS_MALLOC_CLEAR_ON_INIT by
default, but that's not need on JH7110, so disable that.

Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:46 +08:00
Shengyu Qu
64339bc1f2 riscv: cpu: jh7110: Imply SPL_SYS_MALLOC_CLEAR_ON_INIT
Starfive JH7110 needs to clear L2 LIM to zero before use or ECC error
would be triggered. Currently, we use DDR ram for SPL malloc arena on
Visionfive 2 board in defconfig, but it's also possible to use L2 LIM as
SPL malloc arena. To avoid triggering ECC error in this scenario, we
imply SPL_SYS_MALLOC_CLEAR_ON_INIT as default.

Signed-off-by: Bo Gan <ganboing@gmail.com>
Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:46 +08:00
Shengyu Qu
c9db9a2ef5 dlmalloc: Add support for SPL_SYS_MALLOC_CLEAR_ON_INIT
To support SPL_SYS_MALLOC_CLEAR_ON_INIT, we have to modify
#ifdef CONFIG_SYS_MALLOC_CLEAR_ON_INIT
to #if CONFIG_IS_ENABLED(SYS_MALLOC_CLEAR_ON_INIT)

Signed-off-by: Bo Gan <ganboing@gmail.com>
Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-09-05 10:53:46 +08:00
Shengyu Qu
dd1eb1af26 Kconfig: Add SPL_SYS_MALLOC_CLEAR_ON_INIT
Add SPL version of SYS_MALLOC_CLEAR_ON_INIT, this would help devices
that need to clear ram before use to work correctly.

Signed-off-by: Bo Gan <ganboing@gmail.com>
Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-09-05 10:53:46 +08:00
Shengyu Qu
f943417737 doc: board: starfive: Add more info about supported driver
Since PLDA PCIE driver is added and VL805 support is enabled in
defconfig for Starfive Visionfive 2, modify the document to keep
consistent.

Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Tested-by: Milan P. Stanić <mps@arvanta.net>
2023-09-05 10:53:41 +08:00
Shengyu Qu
dccf4a843a configs: starfive: Enable PCIE auto enum and NVME/USB stuff for Starfive Visionfive 2
Although PCIE driver already exists, board defconfig isn't configured to
enable PCIE enum on boot, thus USB storage device and NVME drive are not
supported by default. So modify defconfig to enable PCIE auto enum, then
start USB subsystem and scan nvme drive on boot.

Signed-off-by: Shengyu Qu <wiagn233@outlook.com>
Tested-by: Milan P. Stanić <mps@arvanta.net>
2023-09-05 10:53:41 +08:00
Torsten Duwe
6164d86984 riscv: jh7110: enable riscv,timer in the device tree
The JH7110 has the arhitectural CPU timer on all 5 rv64 cores.
Note that in the device tree.

Signed-off-by: Torsten Duwe <duwe@suse.de>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:36 +08:00
Torsten Duwe
f39f8f77a5 riscv: allow riscv timer to be instantiated via device tree
For the architectural timer on riscv, there already is a defined
device tree binding[1]. Allow timer instances to be created from
device tree matches, but for now retain the old mechanism, which
registers the timer biggy-back with the CPU.

[1] linux/Documentation/devicetree/bindings/timer/riscv,timer.yaml

Signed-off-by: Torsten Duwe <duwe@suse.de>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:36 +08:00
Seung-Woo Kim
71914337ef eeprom: starfive: set eth0 mac address properly
fdt_fixup_ethernet() sets eth0 mac address from ethaddr. Set
ethaddr to environment instead of eth0addr.

Signed-off-by: Seung-Woo Kim <sw0312.kim@samsung.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
2023-09-05 10:53:29 +08:00
Tom Rini
493fd3363f nokia_rx51: Remove platform
This platform is behind on migrations (it is the sole user of the oldest
legacy version of the USB gadget stack and is long overdue for
migration) and with Pali no longer being a maintainer, we remove this
platform.

Signed-off-by: Tom Rini <trini@konsulko.com>
2023-09-04 21:14:32 -04:00
Tom Rini
af7de99e0c MAINTAINERS: Drop Pali Rohár
Remove Pali from his listed maintainer entries due to his publicly
visible actions on the mailing list.

Signed-off-by: Tom Rini <trini@konsulko.com>
2023-09-04 21:13:38 -04:00
Fabio Estevam
a79fca7b44 thermal: imx_tmu: Increase the polling interval
Polling every second to check whether the CPU has cooled down is
too frequent.

Allow more time for the CPU to cool down by increasing the polling
interval to 5 seconds by defaut.

This value is used in the absence of the 'polling-delay' devicetree
property.

Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-09-04 17:26:44 +02:00
Fabio Estevam
f4898e4b0e thermal: imx_tmu: Fix the temperature unit
The temperature unit is millidegree Celsius, so divide by 1000 to correctly
print the temperature values in Celsius.

While at it, also change a typo: "has beyond" to "is beyond".

Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-09-04 17:26:44 +02:00
Fabio Estevam
966480fe43 thermal: imx_tmu: Increase the log level for high temperatures
dev_info() message is not printed by default. Increase the log level
to dev_crit(). This allows the critical messages related to the temperature
getting beyong the alert threshold to be displayed.

Signed-off-by: Fabio Estevam <festevam@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-09-04 17:26:44 +02:00
Fabio Estevam
402b8106ec thermal: imx_tmu: Fix the polling default
When the 'polling-delay' property is not passed via devicetree,
pdata->polling_delay keeps at 0. This causes the imx_tmu driver to get
stuck inside the busy while() loop when the CPU temperature is above
the alert point.

Fix this problem by passing a one second polling interval, which provides
a proper delay to let the system to cool down and exit the while() loop
when the temperature is below the alert point.

Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-09-04 17:26:44 +02:00
Fabio Estevam
282ff895c8 imx8mm_evk_defconfig: Select CONFIG_IMX_TMU
Select the i.MX8MM thermal driver as it is useful for displaying
the CPU temperature and its grading:

CPU:   Commercial temperature grade (0C to 95C) at 38C

It also prevents booting when the temperature is above the alert
point.

Signed-off-by: Fabio Estevam <festevam@denx.de>
2023-09-04 17:26:44 +02:00
Tom Rini
b27eeca112 Prepare v2023.10-rc4
Signed-off-by: Tom Rini <trini@konsulko.com>
2023-09-04 10:39:43 -04:00
Tom Rini
164b86f26b Merge tag 'rpi-2023.10' of https://source.denx.de/u-boot/custodians/u-boot-raspberrypi
Updates for RPi for 2023.10:

- rpi: Disable DISTRO_DEFAULTS
- arm: rpi: Switch to standard boot
- arm: rpi: Switch to a text environment
2023-09-04 10:07:48 -04:00
Oleksandr Suvorov
7f4b73fe69 usb: dwc3: Fix enabling USB_DR_MODE_HOST
The original logic always enables USB_DR_MODE_HOST operation mode in
dwc3_layerscape_bind() in u-boot. Prevent choosing USB_DR_MODE_HOST
operation mode if USB_HOST is not enabled.

Fixes: 2b0b51d0be ("usb: dwc3: add layerscape support")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-09-04 15:51:38 +02:00
Oleksandr Suvorov
da93ea6a9a usb: dwc3: Fix renaming SPL_USB_HOST_SUPPORT to SPL_USB_HOST
In the usb/dwc3-layerscape driver the first option should be renamed
to the latter as well. Do it.

Fix original logic in dwc3_layerscape_bind() - do not enable

Fixes: 333e4a621d ("Rename SPL_USB_HOST_SUPPORT to SPL_USB_HOST")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-09-04 15:51:38 +02:00
Marek Vasut
2629b18ed4 ARM: imx: Use default SAVED_DRAM_TIMING_BASE on Data Modul i.MX8M Plus eDM SBC
Use default SAVED_DRAM_TIMING_BASE as that is what upstream TFA expects.
Without this change, the board will fail to suspend/resume e.g. in Linux.

Signed-off-by: Marek Vasut <marex@denx.de>
2023-09-04 10:21:20 +02:00
Marek Vasut
7e4e4ff6ec ARM: imx: Use default SAVED_DRAM_TIMING_BASE on Data Modul i.MX8M Mini eDM SBC
Use default SAVED_DRAM_TIMING_BASE as that is what upstream TFA expects.
Without this change, the board will fail to suspend/resume e.g. in Linux.

Signed-off-by: Marek Vasut <marex@denx.de>
2023-09-04 10:21:20 +02:00
Marek Vasut
bd7606d142 ARM: imx: Use default SAVED_DRAM_TIMING_BASE on DH i.MX8M Plus DHCOM
Use default SAVED_DRAM_TIMING_BASE as that is what upstream TFA expects.
Without this change, the board will fail to suspend/resume e.g. in Linux.

Signed-off-by: Marek Vasut <marex@denx.de>
2023-09-04 10:21:20 +02:00
Tim Harvey
99eb21cfcc board: gateworks: venice: fix gw7904
Add missing imx8mm-venice-gw7904 to CONFIG_OF_LIST

Fixes commit 61e7f97325 ("board: gateworks: venice: add imx8mm-gw7904 support")
Signed-off-by: Tim Harvey <tharvey@gateworks.com>
2023-09-04 10:21:20 +02:00
Elena Popa
07908bf5e5 arm: imx: imx8m: imx9: Fix DRAM size calculation due to rom_pointer
If dram_init_banksize() is called from SPL, the rom_pointer, at that
point, is not correctly initialized. This causes wrong calculation of
DRAM start and size in dram_init_banksize(). The issue became apparent
only in Falcon Mode. Added an extra condition to prevent using
rom_pointer in SPL.

Signed-off-by: Elena Popa <elena.popa@nxp.com>
Reviewed-by: Marek Vasut <marex@denx.de>
Reviewed-by: Fabio Estevam <festevam@denx.de>
2023-09-04 10:21:20 +02:00
Marek Vasut
f58b0c8534 ARM: imx: Select 2 DRAM banks on Data Modul i.MX8M Mini eDM SBC
U-Boot splits DRAM bank spanning addresses below and above the 32bit
boundary into two DRAM banks. Since this platform may come with 4GiB
of DRAM, increase the DRAM bank count to 2.

Signed-off-by: Marek Vasut <marex@denx.de>
2023-09-04 10:21:20 +02:00
Marek Vasut
e47cab0fa1 ARM: imx: Drop CONFIG_USE_BOOTCOMMAND=n on i.MX6 DHSOM
This board certainly does use default 'run distro_bootcmd' boot command,
make sure this is set in 'bootcmd' variable.

Fixes: 970bf8603b ("Convert CONFIG_USE_BOOTCOMMAND et al to Kconfig")
Signed-off-by: Marek Vasut <marex@denx.de>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-09-04 10:21:20 +02:00
Simon Glass
fc2af2d978 arm: rpi: Switch to a text environment
Use the new environment format so we can drop most of the config.h file.

Signed-off-by: Simon Glass <sjg@chromium.org>
2023-09-03 23:33:04 +01:00
Simon Glass
90f626a5d8 rpi: Disable DISTRO_DEFAULTS
Disable this option to reclaim some space, since bootstd requires less
functionality to operate (e.g. hush parser).

Signed-off-by: Simon Glass <sjg@chromium.org>
2023-09-03 23:20:59 +01:00
Simon Glass
c771e5b8c2 arm: rpi: Switch to standard boot
Drop use of the distro scripts and use standard boot instead.

We don't need to specify the mmc devices individually, since they are
used in order from 0 to 2, and standard boot uses that order anyway.

Signed-off-by: Simon Glass <sjg@chromium.org>
2023-09-03 23:20:59 +01:00
Tom Rini
8999257f21 Pull request doc-2023-10-rc4-2
* Man-page for gpt command
 * Fix long text help of gpt command
 * Add events to HTML documentation
 * Update Toradex documentation
 -----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEbcT5xx8ppvoGt20zxIHbvCwFGsQFAmTy6HAACgkQxIHbvCwF
 GsQGnhAAjozx+0buHUe/7PGupsbFnLrY082ghXADj53YiVqXCg0qQ2zBk5ttFvkE
 qBDYohWIZVK5zLsAeubG2h5p4ju1uD+dSQDYjrwt3X/ML29Mv8TLyMMj91EamIcj
 ofnWNQAdVYNFYSpZ0Nhk4IKgjkq/FkAlroAhGCQoCfZjEwpVxFacBy6mEnFqUXhe
 J5XeMWm0yyNENii5PTV4Go337iP+w8yjPeAQj7IXTIw3Pi2rk2W+4iBuuDvbxJBl
 Z/qO+xDkDj6ryRU6jZb2T/q0xhY3xpXt/WUFeU76167qhLsMRglCb9Z+sQqLx8Lo
 NqfJbIM3Xnovl5KTXzc/QrmtiajrjtXsDWdHiDGyqU0aRabSBeK2s4cHU8uVguUB
 9luAK63SbXNuVvOOd3cypEtU9eWmbsB/N7XcPlEbTPWgK5jJQnZYkhi8OZirNqT7
 Tak9F9yd6TP5g2sdxRMxWdz1+oHsJdh4CHBBj4SuisYj9DMi+dtWlyb6VQ5Nkf7Y
 66W9h+W2IvyKqDeZwbmjgprc4cvRcoPe7s/hck0h01emxdHGL/Xtu6LThbz0DNI9
 VWMRMKmTluOcB6AWDjw8Xsq3wQqXcsICB+qUfbwFm8OQMVouFqDP9jT/cvVShqPJ
 fbnbYuSPxW1LpU8f3+uEhTjBRoJdfQa8EMnCtRRaHzfUWSWTQvc=
 =RoWP
 -----END PGP SIGNATURE-----

Merge tag 'doc-2023-10-rc4-2' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request doc-2023-10-rc4-2

* Man-page for gpt command
* Fix long text help of gpt command
* Add events to HTML documentation
* Update Toradex documentation
2023-09-02 09:08:54 -04:00
Joshua Watt
44c5d7764b doc: Add gpt command documentation
Adds initial documentation for the gpt command

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
2023-09-02 09:44:04 +02:00
Joshua Watt
1fa11cdcfe cmd: gpt: Remove confusing help text
This help text appears to be a fragment of the text shown when
CONFIG_CMD_GPT_RENAME is enabled, but is confusing so remove it.

Signed-off-by: Joshua Watt <JPEWhacker@gmail.com>
Reviewed-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-09-02 09:43:49 +02:00
Marcel Ziswiler
b4b7eed499 doc: board: toradex: verdin-am62: document update u-boot wrapper
Now with the update U-Boot wrappers having been sorted out, document
their usage.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-09-02 06:05:45 +02:00
Marcel Ziswiler
4d1fea9ad1 doc: board: toradex: minor documentation update
- Update SPDX-License-Identifier from obsolete GPL-2.0+ to
  GPL-2.0-or-later.
- Add links to product websites of SoM and carrier board where missing.
- Add information about update U-Boot wrapper where missing.
- Add sectionauthor where missing.
- Update information about imx-seco from version 3.7.4 to 3.8.1.
- Various minor grammatic and spelling fixes.
- Improve whitespace by adding or removing new lines.
- Change from code-block for output to just Output::.

Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com>
2023-09-02 06:05:45 +02:00
Heinrich Schuchardt
0926de2362 video: fix typo in video_sync_all documentation
%s/there/their/

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-09-02 06:04:11 +02:00
Heinrich Schuchardt
91f19550d1 doc: add events.h to documentation
Add the events.h include to the API documentation.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-09-02 06:03:42 +02:00
Heinrich Schuchardt
6a407076b2 dm: event: document all events
Provide Sphinx documentation for all events.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-09-02 06:03:42 +02:00
Tom Rini
0fe0395922 Merge branch '2023-08-28-assorted-important-fixes'
- A few platform-specific config/dts updates to fix issues, drop a
  temporary change in binman, update the MAINTAINERS file to remove
  Wolfgang Denk, fix a typo, fix a corner case with bootstd, update
  Azure to not timeout so easily, and fix a case where we would omit
  some files in SPL.
2023-08-29 10:06:08 -04:00
Ricardo Salveti
c91feda87c Revert "arm: imx: mx7: Move CONFIG_OPTEE_TZDRAM_SIZE from lib/optee"
This reverts commit c5b68ef8af.

CONFIG_OPTEE_TZDRAM_SIZE is used by imx6-based SoCs as well. Move the
option back.

Signed-off-by: Ricardo Salveti <ricardo@foundries.io>
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-08-28 15:59:22 -04:00
Simon Glass
bbbf04cc7d Revert "binman: Add a temporary hack for duplicate phandles"
The affected boards have been fixed, so drop this hack.

This reverts commit 288ae53cb7.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Tim Harvey <tharvey@gateworks.com>
2023-08-28 15:59:22 -04:00
Simon Glass
98244a8550 imx: Drop unneeded phandle in FIT template
Adding a phandle to a template node is not allowed, since when the node is
instantiated multiple times, we end up with duplicate phandles.

Drop this invalid constructs.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Tim Harvey <tharvey@gateworks.com>
2023-08-28 15:59:22 -04:00
Heinrich Schuchardt
fa140172cb MAINTAINERS: remove Wolfgang Denk
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
2023-08-28 15:59:22 -04:00
Oleksandr Suvorov
70bd471984 spl: crypto: fix including SHA* object files in SPL
If one of SHA* algorithms is disabled in u-boot, its code is not
included in SPL even if a given SHA* option is enabled in SPL. Fix
this.

Fixes: 603d15a572 ("spl: cypto: Bring back SPL_ versions of SHA")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
Reviewed-by: Tom Rini <trini@konsulko.com>
2023-08-28 15:59:22 -04:00
Tom Rini
04f7e95385 Azure: Set the timeout for jobs to the maximum
As per current Azure Pipelines documentation we qualify for 3600 minutes
per job, if specified, as the timeout. The default unspecified timeout
is 60 minutes. Rework things to specify 0 as the timeout (and so maximum
allowed) so that we don't have failures due to running slightly past 60
minutes total.

Link: https://learn.microsoft.com/en-us/azure/devops/pipelines/process/phases?view=azure-devops&tabs=yaml#timeouts
Signed-off-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-08-28 15:59:22 -04:00
Daniel Golle
dcde1f95bf configs: set CONFIG_LMB_MAX_REGIONS=64 for MT7988 boards
Similar to MT7981 and MT7986 also MT7988 can have a high number of
reserved-memory regions used by the various hardware offloading
subsystems.

Raise CONFIG_LMB_MAX_REGIONS to 64 to avoid errors when trying to boot
Linux with more then 6 reserved regions:

ERROR: reserving fdt memory region failed (addr=4f700000 size=240000 flags=4)
ERROR: reserving fdt memory region failed (addr=15194000 size=1000 flags=4)
ERROR: reserving fdt memory region failed (addr=15294000 size=1000 flags=4)
ERROR: reserving fdt memory region failed (addr=15394000 size=1000 flags=4)
ERROR: Failed to allocate 0xb161 bytes below 0x80000000.
device tree - allocation error

Fixes: bc4adc97cf ("board: mediatek: add MT7988 reference boards")
Reported-by: Lorenzo Bianconi <lorenzo@kernel.org>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
2023-08-28 15:59:22 -04:00
Andrew Davis
b982a850d0 configs: Enable CONFIG_DM_SCSI in am57xx_hs_evm_usb
This should have already been enabled but was missed when converting the
base platform defconfig, fix this here.

Fixes: 3c5aa6cacc ("configs: Enable CONFIG_BLK in am57xx_evm and am57xx_hs_evm")
Signed-off-by: Andrew Davis <afd@ti.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
2023-08-28 15:59:22 -04:00
Simon Glass
5986d46f8e bootstd: Adjust the default bootmeth order
The existing distro scripts check extlinux and scripts before EFI. Adjust
the default ordering to do the same, to avoid breaking existing flows.

Add some documentation, mentioning that this order will likely change in
future.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by: Da Xue <da@libre.computer>
2023-08-28 15:59:22 -04:00