]> git.dujemihanovic.xyz Git - u-boot.git/log
u-boot.git
14 months agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 2 Oct 2023 17:58:20 +0000 (13:58 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
14 months agoMerge branch 'next'
Tom Rini [Mon, 2 Oct 2023 14:55:44 +0000 (10:55 -0400)]
Merge branch 'next'

Signed-off-by: Tom Rini <trini@konsulko.com>
14 months agoPrepare v2023.10
Tom Rini [Mon, 2 Oct 2023 14:39:59 +0000 (10:39 -0400)]
Prepare v2023.10

Signed-off-by: Tom Rini <trini@konsulko.com>
14 months agoconfigs: Resync with savedefconfig
Tom Rini [Mon, 2 Oct 2023 14:35:27 +0000 (10:35 -0400)]
configs: Resync with savedefconfig

Rsync all defconfig files using moveconfig.py

Signed-off-by: Tom Rini <trini@konsulko.com>
14 months agoMerge branch '2023-09-30-Kconfig-updates' into next
Tom Rini [Sun, 1 Oct 2023 15:54:31 +0000 (11:54 -0400)]
Merge branch '2023-09-30-Kconfig-updates' into next

- Migrate one symbol from CFG to CONFIG and move where another is.

14 months agoMerge branch '2023-09-30-assorted-build-related-changes' into next
Tom Rini [Sun, 1 Oct 2023 15:54:16 +0000 (11:54 -0400)]
Merge branch '2023-09-30-assorted-build-related-changes' into next

- Assorted build cleanups / changes

14 months agocmd: xxd: move xxd into shell commands
Roger Knecht [Thu, 7 Sep 2023 14:51:43 +0000 (14:51 +0000)]
cmd: xxd: move xxd into shell commands

Move xxd into shell command section.

Signed-off-by: Roger Knecht <rknecht@pm.me>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agoConvert CFG_SYS_UBOOT_START to Kconfig
Jesse Taube [Fri, 25 Aug 2023 01:59:48 +0000 (21:59 -0400)]
Convert CFG_SYS_UBOOT_START to Kconfig

Commit 65cc0e2a65d2 ("global: Move remaining CONFIG_SYS_* to CFG_SYS_*")
renamed CONFIG_SYS_UBOOT_START to CFG_SYS_UBOOT_START. Unfortunately,
this meant that the value was no longer available to the Makefile. This
caused imxrt to fail to boot. All the other boards that used this
variable were unaffected because they were using the default value
which is CONFIG_TEXT_BASE.

This commit converts CFG_SYS_UBOOT_START to Kconfig and sets the default
value to CONFIG_TEXT_BASE.

Suggested-by: Marek Vasut <marek.vasut+renesas@gmail.com>
Suggested-by: Tom Rini <trini@konsulko.com>
Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agoCI: allow jobs to be run in merge requests
Andrejs Cainikovs [Wed, 13 Sep 2023 14:15:36 +0000 (16:15 +0200)]
CI: allow jobs to be run in merge requests

Out-of-tree users could run an out-of-tree CI with limited coverage,
however it is convenient to be able to run the upstream CI from time
to time. To enable that we would need to change job rules to be able
to run on any GitLab event. Excerpt from GitLab documentation:

> Jobs with no rules default to except: merge_requests

Signed-off-by: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
14 months agotest: build dependency for event unit tests
Heinrich Schuchardt [Thu, 7 Sep 2023 16:43:17 +0000 (18:43 +0200)]
test: build dependency for event unit tests

The test_event_base and test_event_probe unit tests use function
event_register() which depends on CONFIG_EVENT_DYNAMIC=y.

Fixes: 7d02645fe4c0 ("event: Add a simple test")
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agoAdjust gitignore for /build
Rong Tao [Mon, 4 Sep 2023 02:50:04 +0000 (10:50 +0800)]
Adjust gitignore for /build

/build-* can't ignore /build.

Signed-off-by: Rong Tao <rongtao@cestc.cn>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agotest: fix comment indentation on tpm tests
Ilias Apalodimas [Thu, 1 Jun 2023 06:18:44 +0000 (09:18 +0300)]
test: fix comment indentation on tpm tests

One out comments is off by one, adjust it

Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agoMAINTAINERS: ufs: Change Bhupesh's email address
Bhupesh Sharma [Fri, 15 Sep 2023 18:14:41 +0000 (23:44 +0530)]
MAINTAINERS: ufs: Change Bhupesh's email address

Set my current personal email in the MAINTAINERS file.

Signed-off-by: Bhupesh Sharma <bhupesh.linux@gmail.com>
14 months agoMerge tag 'u-boot-at91-fixes-2023.10-b' of https://source.denx.de/u-boot/custodians...
Tom Rini [Fri, 29 Sep 2023 14:40:34 +0000 (10:40 -0400)]
Merge tag 'u-boot-at91-fixes-2023.10-b' of https://source.denx.de/u-boot/custodians/u-boot-at91

Second set of u-boot-atmel fixes for the 2023.10 cycle:

Two small fixes , one for an array not initialized and the second one
fixes an error case when a DT property is missing for the atmel NAND
driver.

14 months agoclk: at91: Fix initializing arrays
Francois Berder [Sun, 24 Sep 2023 09:58:54 +0000 (11:58 +0200)]
clk: at91: Fix initializing arrays

Arrays are not cleared entirely because ARRAY_SIZE
returns the number of elements in an array, not the size
in bytes.
This commit fixes the calls to memset by providing the
array size in bytes instead of the number of elements
in the array.

Signed-off-by: Francois Berder <fberder@outlook.fr>
14 months agoMerge tag 'doc-2023-10-rc5-3' of https://source.denx.de/u-boot/custodians/u-boot-efi
Tom Rini [Fri, 29 Sep 2023 11:49:57 +0000 (07:49 -0400)]
Merge tag 'doc-2023-10-rc5-3' of https://source.denx.de/u-boot/custodians/u-boot-efi

Pull request doc-2023-10-rc5-3

Documentation:

* describe that partition numbers are hexadecimal in load command
* remove obsolete half sentence in tools/binman/binman.rst

14 months agoMerge branch '2023-09-28-assorted-minor-fixes'
Tom Rini [Fri, 29 Sep 2023 11:49:24 +0000 (07:49 -0400)]
Merge branch '2023-09-28-assorted-minor-fixes'

- Fixes for two board builds and a script fix for many TI platforms

14 months agobinman: doc: Remove incomplete sentence
Heinrich Schuchardt [Tue, 19 Sep 2023 10:02:22 +0000 (12:02 +0200)]
binman: doc: Remove incomplete sentence

This is the difference between version 1 and 2 of Massimo's patch:

binman: doc: fix reference tag placement for Logging section
v2: https://lore.kernel.org/u-boot/20230913161633.999542-1-massimo.pegorer+oss@gmail.com/
v1: https://lore.kernel.org/u-boot/20230909135235.21242-1-massimo.pegorer+oss@gmail.com/

Fixes: 0f40e23fd22 ("binman: add documentation for binman sign option")
Signed-off-by: Massimo Pegorer <massimo.pegorer+oss@gmail.com>
Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
Acked-by: Massimo Pegorer <massimo.pegorer+oss@gmail.com>
14 months agodoc: usage: load: document part as hexadecimal
Mickaël Tansorier [Fri, 15 Sep 2023 22:11:53 +0000 (00:11 +0200)]
doc: usage: load: document part as hexadecimal

`part` option is in hexadecimal, so information is missing in usage
documentation.

Callgraph for `part` parsing is :
do_load -> fs_set_blk_dev -> part_get_info_by_dev_and_name_or_num ->
blk_get_device_part_str -> hextoul (This is why it is hexadecimal)

Signed-off-by: Mickaël Tansorier <mickael.tansorier@smile.fr>
Reviewed-by: Yoann Congal <yoann.congal@smile.fr>
Reviewed-by: Simon Glass <sjg@chromium.org>
14 months agoconfigs: iot2050: Disable CONFIG_CONSOLE_MUX
Jan Kiszka [Wed, 27 Sep 2023 17:22:04 +0000 (19:22 +0200)]
configs: iot2050: Disable CONFIG_CONSOLE_MUX

We only have serial as console option, and leaving this on turns on
SYS_CONSOLE_IS_IN_ENV which is also not true for these devices, leaving
an ugly

In:    No input devices available!
Out:   No output devices available!
Err:   No error devices available!

behind.

Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>
14 months agosmegw01: Fix inverted CONFIG_SYS_BOOT_LOCKED logic
Eduard Strehlau [Mon, 25 Sep 2023 16:32:59 +0000 (13:32 -0300)]
smegw01: Fix inverted CONFIG_SYS_BOOT_LOCKED logic

CONFIG_SYS_BOOT_LOCKED means that a restricted boot environment will
be used. In this case, hab_auth_img_or_fail should be called to prevent
U-Boot to continue running when the fitImage authentication fails.

Fix the logic accordingly.

Additionally, select CONFIG_SYS_BOOT_LOCKED by default.

Signed-off-by: Eduard Strehlau <eduard@lionizers.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
14 months agoenv: ti: ti_common.env: Fix get_overlaystring for FIT Image
Manorit Chawdhry [Mon, 25 Sep 2023 06:23:42 +0000 (11:53 +0530)]
env: ti: ti_common.env: Fix get_overlaystring for FIT Image

After the refactor with conf- nodes in fitImage, overlaystring wasn't
didn't handle the new conf- nodes in FIT Booting. Fix get_overlaystring
to handle conf- nodes.

Fixes: 837833a724b7 ("environment: ti: Add get_fit_config command to get FIT config string")
Reported-by: Aniket Limaye <a-limaye@ti.com>
Signed-off-by: Manorit Chawdhry <m-chawdhry@ti.com>
Reviewed-by: Andrew Davis <afd@ti.com>
15 months agomtd: nand: raw: atmel: Add error handling when rb-gpios missing
Alexander Dahl [Fri, 22 Sep 2023 09:08:56 +0000 (11:08 +0200)]
mtd: nand: raw: atmel: Add error handling when rb-gpios missing

Adapt behaviour to Linux kernel driver.

The return value of gpio_request_by_name_nodev() was not checked before,
and thus in case 'rb-gpios' was missing in DT, rb.type was set to
ATMEL_NAND_GPIO_RB nevertheless, leading to output like this for
example (on sam9x60-curiosity with the line removed from dts):

    NAND:  Could not find valid ONFI parameter page; aborting
    device found, Manufacturer ID: 0xc2, Chip ID: 0xdc
    Macronix NAND 512MiB 3,3V 8-bit
    512 MiB, SLC, erase size: 256 KiB, page size: 4096, OOB size: 64
    atmel-nand-controller nand-controller: NAND scan failed: -22
    Failed to probe nand driver (err = -22)
    Failed to initialize NAND controller. (error -22)
    0 MiB

Note: not having that gpio assigned in dts is possible, the driver does
not override nand_chip->dev_ready() then and a generic solution is used.

Fixes: 6a8dfd57220d ("nand: atmel: Add DM based NAND driver")
Signed-off-by: Alexander Dahl <ada@thorsis.com>
Reviewed-by: Eugen Hristev <eugen.hristev@collabora.com>
Acked-by: Michael Trimarchi <michael@amarulasolutions.com>
15 months agoMerge https://source.denx.de/u-boot/custodians/u-boot-riscv
Tom Rini [Tue, 26 Sep 2023 13:45:41 +0000 (09:45 -0400)]
Merge https://source.denx.de/u-boot/custodians/u-boot-riscv

+ Fix VisionFive2 booting issue by providing the correct FDT.

15 months agoriscv: set fdtfile on VisionFive 2
Heinrich Schuchardt [Thu, 7 Sep 2023 11:21:28 +0000 (13:21 +0200)]
riscv: set fdtfile on VisionFive 2

Multiple revisions of the StarFive VisionFive 2 board exist. They can be
identified by reading their EEPROM.

Linux uses two differently named device-tree files. To load the correct
device-tree we need to set $fdtfile to the device-tree file name that
matches the board revision.

Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com>
Reviewed-by: Leo Yu-Chi Liang <ycliang@andestech.com>
Tested-by: Milan P. Stanić <mps@arvanta.net>
15 months agoMerge tag 'u-boot-imx-20230923' of https://source.denx.de/u-boot/custodians/u-boot-imx
Tom Rini [Sun, 24 Sep 2023 21:15:31 +0000 (17:15 -0400)]
Merge tag 'u-boot-imx-20230923' of https://source.denx.de/u-boot/custodians/u-boot-imx

Fixes for 2023.10
-----------------

CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/17831

15 months agoMerge tag 'dm-pull-23sep23' of https://source.denx.de/u-boot/custodians/u-boot-dm
Tom Rini [Sun, 24 Sep 2023 21:15:15 +0000 (17:15 -0400)]
Merge tag 'dm-pull-23sep23' of https://source.denx.de/u-boot/custodians/u-boot-dm

trace: correct format of flyrecord
minor bug fixes

15 months agoMerge tag 'dm-next-23sep23' of https://source.denx.de/u-boot/custodians/u-boot-dm...
Tom Rini [Sun, 24 Sep 2023 16:43:00 +0000 (12:43 -0400)]
Merge tag 'dm-next-23sep23' of https://source.denx.de/u-boot/custodians/u-boot-dm into next

buildman file-keeping and build-progress improvements
dm tree enhancement
adjust meaning of bootph-pre-ram/sram

15 months agocommon: Drop linux/printk.h from common header
Simon Glass [Fri, 15 Sep 2023 00:21:46 +0000 (18:21 -0600)]
common: Drop linux/printk.h from common header

This old patch was marked as deferred. Bring it back to life, to continue
towards the removal of common.h

Move this out of the common header and include it only where needed.

Signed-off-by: Simon Glass <sjg@chromium.org>
15 months agokontron_sl28: Use u-boot-update.bin instead of u-boot.update
Simon Glass [Thu, 7 Sep 2023 16:00:20 +0000 (10:00 -0600)]
kontron_sl28: Use u-boot-update.bin instead of u-boot.update

A '.update' extension does not get preserved by buildman, so change it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Acked-by: Michael Walle <michael@walle.cc>
15 months agobuildman: Start the clock when the build starts
Simon Glass [Thu, 7 Sep 2023 16:00:19 +0000 (10:00 -0600)]
buildman: Start the clock when the build starts

The Kconfig and maintainer processing can take a while, sometimes 5
seconds or more. This skews the timing printed by buildmand when the build
completes. Start the clock when the threads start to avoid this problem.

Signed-off-by: Simon Glass <sjg@chromium.org>
Suggested-by: Tom Rini <trini@konsulko.com>
15 months agobuildman: Show progress when regenerating the board.cfg file
Simon Glass [Thu, 7 Sep 2023 16:00:18 +0000 (10:00 -0600)]
buildman: Show progress when regenerating the board.cfg file

This can take a while, so show a message when starting.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reported-by Tom Rini <trini@konsulko.com>

15 months agobuildman: Keep all common output files
Simon Glass [Thu, 7 Sep 2023 16:00:17 +0000 (10:00 -0600)]
buildman: Keep all common output files

Make a list of common output extensions and use it to ensure that the -k
option preserves all of these.

Signed-off-by: Simon Glass <sjg@chromium.org>
Suggested-by: Tom Rini <trini@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
15 months agocmd: dm: allow for selecting uclass and device
AKASHI Takahiro [Wed, 23 Aug 2023 01:49:47 +0000 (10:49 +0900)]
cmd: dm: allow for selecting uclass and device

The output from "dm tree" or "dm uclass" is a bit annoying
if the number of devices available on the system is huge.
(This is especially true on sandbox when I debug some DM code.)

With this patch, we can specify the uclass name or the device
name that we are interested in in order to limit the output.

For instance,

=> dm uclass usb
uclass 121: usb
0     usb@1 @ 0bcff8b0, seq 1

uclass 124: usb

=> dm tree usb:usb@1
 Class     Index  Probed  Driver                Name
-----------------------------------------------------------
 usb           0  [   ]   usb_sandbox           usb@1
 usb_hub       0  [   ]   usb_hub               `-- hub
 usb_emul      0  [   ]   usb_sandbox_hub           `-- hub-emul
 usb_emul      1  [   ]   usb_sandbox_flash             |-- flash-stick@0
 usb_emul      2  [   ]   usb_sandbox_flash             |-- flash-stick@1
 usb_emul      3  [   ]   usb_sandbox_flash             |-- flash-stick@2
 usb_emul      4  [   ]   usb_sandbox_keyb              `-- keyb@3

If you want forward-matching against a uclass or udevice name,
you can specify "-e" option.

=> dm uclass -e usb
uclass 15: usb_emul
0     hub-emul @ 0bcffb00, seq 0
1     flash-stick@0 @ 0bcffc30, seq 1
2     flash-stick@1 @ 0bcffdc0, seq 2
3     flash-stick@2 @ 0bcfff50, seq 3
4     keyb@3 @ 0bd000e0, seq 4

uclass 64: usb_mass_storage

uclass 121: usb
0     usb@1 @ 0bcff8b0, seq 1

uclass 122: usb_dev_generic

uclass 123: usb_hub
0     hub @ 0bcff9b0, seq 0

uclass 124: usb

=> dm tree -e usb
 Class     Index  Probed  Driver                Name
-----------------------------------------------------------
 usb           0  [   ]   usb_sandbox           usb@1
 usb_hub       0  [   ]   usb_hub               `-- hub
 usb_emul      0  [   ]   usb_sandbox_hub           `-- hub-emul
 usb_emul      1  [   ]   usb_sandbox_flash             |-- flash-stick@0
 usb_emul      2  [   ]   usb_sandbox_flash             |-- flash-stick@1
 usb_emul      3  [   ]   usb_sandbox_flash             |-- flash-stick@2
 usb_emul      4  [   ]   usb_sandbox_keyb              `-- keyb@3

Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agodm: core: Report bootph-pre-ram/sram node as pre-reloc after relocation
Jonas Karlman [Sun, 20 Aug 2023 22:03:18 +0000 (22:03 +0000)]
dm: core: Report bootph-pre-ram/sram node as pre-reloc after relocation

Nodes with bootph-pre-sram/ram props are bound in multiple phases:
1. At TPL (bootph-pre-sram) or SPL (bootph-pre-ram) phase
2. At U-Boot proper pre-relocation phase
3. At U-Boot proper normal phase

However the binding and U-Boot Driver Model documentation indicate that
only nodes marked with bootph-all or bootph-some-ram should be bound in
the U-Boot proper pre-relocation phase.

Change ofnode_pre_reloc to report a node with bootph-pre-ram/sram prop
with a pre-reloc status only after U-Boot proper pre-relocation phase.
Also update the ofnode_pre_reloc documentation to closer reflect the
binding and driver model documentation.

This changes behavior of what nodes are bound in the U-Boot proper
pre-relocation phase. Change to bootph-all or add bootph-some-ram prop
to restore prior behavior.

Signed-off-by: Jonas Karlman <jonas@kwiboo.se>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agosmegw01: Use CONFIG_SYS_LOAD_ADDR for loading fitImage
Eduard Strehlau [Wed, 20 Sep 2023 10:49:08 +0000 (07:49 -0300)]
smegw01: Use CONFIG_SYS_LOAD_ADDR for loading fitImage

Set CONFIG_SYS_LOAD_ADDR=0x88000000 and use this address for
loading fitImage.

Also pass the standard CONFIG_BOOTFILE option to indicate
the fitImage file.

Signed-off-by: Eduard Strehlau <eduard@lionizers.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agoimx7: Disable CAAM Job Ring 0
Fabio Estevam [Tue, 12 Sep 2023 15:11:00 +0000 (12:11 -0300)]
imx7: Disable CAAM Job Ring 0

Trying to boot a fitImage after a successful hab_auth_img operation
causes the following error:

 ## Loading kernel from FIT Image at 88000000 ...
   Using 'conf-imx7d-smegw01.dtb' configuration
   Trying 'kernel-1' kernel subimage
     Description:  Linux kernel
     Type:         Kernel Image
     Compression:  uncompressed
     Data Start:   0x8800010c
     Data Size:    9901752 Bytes = 9.4 MiB
     Architecture: ARM
     OS:           Linux
     Load Address: 0x80800000
     Entry Point:  0x80800000
     Hash algo:    sha256
     Hash value:   28f8779bbf010780f16dd3d84ecb9b604c44c5c2cf7acd098c264a2d3f68e969
   Verifying Hash Integrity ... sha256Error in SEC deq
   CAAM was not setup properly or it is faulty error!

The reason for this error is that the BootROM uses the CAAM Job Ring 0,
so disable its node in U-Boot to avoid the resource conflict.

imx8m dtsi files also have the Job Ring 0 disable since the following
kernel commit:

https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/arch?h=v6.5&id=dc9c1ceb555ff661e6fc1081434600771f29657c

For a temporary solution, disable the Job Ring 0 in imx7s-u-boot.dtsi.

Reported-by: Eduard Strehlau <eduard@lionizers.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agoimx: hab: Explain that ivt_offset is optional
Fabio Estevam [Thu, 7 Sep 2023 01:47:27 +0000 (22:47 -0300)]
imx: hab: Explain that ivt_offset is optional

The ivt_offset parameter is optional for both hab_auth_img_or_fail
and hab_auth_img commands.

Document it in their usage texts to make it clearer.

Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agoimx: hab: Improve the hab_auth_img_or_fail usage text
Fabio Estevam [Thu, 7 Sep 2023 01:47:26 +0000 (22:47 -0300)]
imx: hab: Improve the hab_auth_img_or_fail usage text

Split the hab_auth_img_or_fail usage text in two sentences to make it
clearer.

Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agoimx: hab: Allow hab_auth_img_or_fail to be called without ivt_offset
Eduard Strehlau [Thu, 7 Sep 2023 01:47:25 +0000 (22:47 -0300)]
imx: hab: Allow hab_auth_img_or_fail to be called without ivt_offset

Since commit ea91031b2232 ("imx: hab: extend hab_auth_img to calculate
ivt_offset"), it is possible to call the hab_auth_img command without the
last ivt_offset argument.

Currently, calling hab_auth_img_or_fail without the last
ivt_offset parameter causes a failure and the command usage text is shown.

Fix this problem by adjusting the argc logic to allow
calling hab_auth_img_or_fail with only the address and size parameters.

This way, both hab_auth_img and hab_auth_img_or_fail have the same
behavior with respect to the allowed number of command parameters.

Signed-off-by: Eduard Strehlau <eduard@lionizers.com>
Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agomach-imx: bootaux: fix building with disabled bootelf
Oleksandr Suvorov [Thu, 31 Aug 2023 14:03:52 +0000 (17:03 +0300)]
mach-imx: bootaux: fix building with disabled bootelf

If CMD_ELF disabled and IMX_BOOTAUX enabled, the u-boot building ends
up with a linking error [1]. Select LIB_ELF to fix the building
issue.

[1]
ld: /tmp/ccaF1rpv.ltrans0.ltrans.o: in function `do_bootaux':
arch/arm/mach-imx/imx_bootaux.c:108: undefined reference to `valid_elf_image'

Fixes: c0f037f6a2a ("mach-imx: bootaux: elf firmware support")
Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
15 months agotrace: Fix alignment logic in flyrecord header
Michal Simek [Fri, 15 Sep 2023 12:12:05 +0000 (14:12 +0200)]
trace: Fix alignment logic in flyrecord header

Current alignment which is using 16 bytes is not correct in connection to
trace_clocks description and it's length.
That's why use start_addr variable and record proper size based on used
entries.

Fixes: be16fc81b2ed ("trace: Update proftool to use new binary format").
Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agotrace: Move trace_clocks description above record offset calculation
Michal Simek [Fri, 15 Sep 2023 12:12:04 +0000 (14:12 +0200)]
trace: Move trace_clocks description above record offset calculation

Flyrecord tracing data are page aligned that's why it is necessary to
calculate alignment properly. Because trace_clocks description is the part
of record length it is necessary to have information about length earlier.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agotrace: Use 64bit variable for start and len
Michal Simek [Fri, 15 Sep 2023 12:12:03 +0000 (14:12 +0200)]
trace: Use 64bit variable for start and len

tputq() requires variables to have 64bit width that's why make them 64bit
to clean alignment requirement.

Signed-off-by: Michal Simek <michal.simek@amd.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agopatman: Respect include directive on Git config lookup
Fei Shao [Fri, 8 Sep 2023 14:15:59 +0000 (22:15 +0800)]
patman: Respect include directive on Git config lookup

People may put their user name and email in a local config file and
reference it by the include.* directives, however `git config --global`
doesn't look up the included configs by default.

Enable the --includes option explicitly to support such use cases.

Signed-off-by: Fei Shao <fshao@chromium.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agosandbox: test: Fix typo in test.dts
Michal Simek [Thu, 7 Sep 2023 12:55:48 +0000 (14:55 +0200)]
sandbox: test: Fix typo in test.dts

s/parititon/partition/

Signed-off-by: Michal Simek <michal.simek@amd.com>
Acked-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agobinman: Fix SyntaxWarning: invalid escape sequence '\('
Rong Tao [Tue, 5 Sep 2023 11:41:04 +0000 (19:41 +0800)]
binman: Fix SyntaxWarning: invalid escape sequence '\('

Reproduct warning:

    $ git clean -dfx
    $ make CROSS_COMPILE="" qemu-x86_64_defconfig
    $ make -j8
    ...
    u-boot/tools/binman/etype/section.py:25:
    SyntaxWarning: invalid escape sequence '\('
    """Entry that contains other entries

Signed-off-by: Rong Tao <rongtao@cestc.cn>
15 months agobuildman: Fix full help for Python 3.8
Simon Glass [Mon, 4 Sep 2023 15:54:59 +0000 (09:54 -0600)]
buildman: Fix full help for Python 3.8

With Python versions older than 3.9 Buildman produces an error on
start-up. Fix this with a workaround for importlib.

There is already a workaround for v3.6 but I am not sure if that is still
functioning.

Signed-off-by: Simon Glass <sjg@chromium.org>
15 months agotools: Fix patman launcher script.
Maxim Cournoyer [Fri, 1 Sep 2023 05:05:12 +0000 (01:05 -0400)]
tools: Fix patman launcher script.

There is no "run_patman" procedure in patman's __main__.py file, which
would cause the following error at execution:

  "AttributeError: module 'patman.__main__' has no attribute 'run_patman'"

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agoMerge branch '2023-09-22-assorted-bugfixes'
Tom Rini [Fri, 22 Sep 2023 22:25:37 +0000 (18:25 -0400)]
Merge branch '2023-09-22-assorted-bugfixes'

- A few driver fixes and MAINTAINER updates

15 months agoMAINTAINERS: Step up as maintainers of UniPhier SoC platform
Kunihiko Hayashi [Fri, 22 Sep 2023 08:54:09 +0000 (17:54 +0900)]
MAINTAINERS: Step up as maintainers of UniPhier SoC platform

Update maintainers for UniPhier SoC platform.

Signed-off-by: Kunihiko Hayashi <hayashi.kunihiko@socionext.com>
15 months agopico-imx7d: Remove Vanessa from MAINTAINERS
Fabio Estevam [Tue, 19 Sep 2023 13:39:11 +0000 (10:39 -0300)]
pico-imx7d: Remove Vanessa from MAINTAINERS

Vanessa's NXP e-mail is no longer active.

Contacted her offline and she told me that she does not have
access to the board anymore and it is OK to remove her
from MAINTAINERS.

Signed-off-by: Fabio Estevam <festevam@denx.de>
15 months agodrivers: mediatek: Fix error handling in mtk_i2c_do_transfer
Francois Berder [Fri, 8 Sep 2023 16:47:46 +0000 (18:47 +0200)]
drivers: mediatek: Fix error handling in mtk_i2c_do_transfer

Errors were handled only if an I2C transfer timed out
and received a NACK which is very unlikely. This commit
changes the condition such that errors are handled if
an I2C transfer times out or received a NACK.

Signed-off-by: Francois Berder <fberder@outlook.fr>
Reviewed-by: Heiko Schocher <hs@denx.de>
15 months agonet: sni_netsec: Add workaround for timeout error
Ryosuke Saito [Thu, 3 Aug 2023 14:56:48 +0000 (23:56 +0900)]
net: sni_netsec: Add workaround for timeout error

The NETSEC GMAC occasionally falls into a weird state where
MAC_REG_DESC_SOFT_RST has never been cleared and shows errors like the
below when networking commands are issued:

    => ping 192.168.1.1
    ethernet@522d0000 Waiting for PHY auto negotiation to complete... done
    netsec_wait_while_busy: timeout
    Using ethernet@522d0000 device

    ARP Retry count exceeded; starting again
    ping failed; host 192.168.1.1 is not alive

It happens on not only 'ping' but also 'dhcp', 'tftp' and so on.

Luckily, restarting the NETSEC GMAC and trying again seems to fix the
problematic state. So first ensure that we haven't entered the state by
checking MAC_REG_DESC_SOFT_RST to be cleared; otherwise, restarting
NETSEC/PHY and trying again would work as a workaround.

Signed-off-by: Ryosuke Saito <ryosuke.saito@linaro.org>
Tested-by: Masahisa Kojima <masahisa.kojima@linaro.org>
15 months agoconfigs: am65x_evm_r5_usbmsc_defconfig: Enable DWC3 wrapper for SPL
Ravi Gunasekaran [Fri, 8 Sep 2023 11:03:51 +0000 (16:33 +0530)]
configs: am65x_evm_r5_usbmsc_defconfig: Enable DWC3 wrapper for SPL

commit 280f45d23977 ("configs: get rid of build warnings due to
SPL_USB_DWC3_GENERIC") missed enabling DWC3 glue layer for
usbmsc_defconfig and this broke boot from USB mass storage.
Fix this by enabling DWC3 glue layer.

Fixes: 280f45d23977 ("configs: get rid of build warnings due to SPL_USB_DWC3_GENERIC")
Signed-off-by: Ravi Gunasekaran <r-gunasekaran@ti.com>
15 months agonet: wget: Avoid packet queue overflow
Richard Weinberger [Thu, 20 Jul 2023 12:51:56 +0000 (14:51 +0200)]
net: wget: Avoid packet queue overflow

Make sure to stay within bounds, as a misbehaving HTTP server
can trigger a buffer overflow if not properly handled.

Cc: Joe Hershberger <joe.hershberger@ni.com>
Cc: Ramon Fried <rfried.dev@gmail.com>
Signed-off-by: Richard Weinberger <richard@nod.at>
15 months agoMerge tag 'x86-pull-20230922' of https://source.denx.de/u-boot/custodians/u-boot...
Tom Rini [Fri, 22 Sep 2023 15:16:22 +0000 (11:16 -0400)]
Merge tag 'x86-pull-20230922' of https://source.denx.de/u-boot/custodians/u-boot-x86 into next

- Add bootstd support to 64-bit efi payload
- Fix a bug of missing setting size of initrd in pxeboot
- Allow Python packages to be dropped
- Reland "x86: Move FACP table into separate functions"
- Fixes for chromebook_link64 and chromebook_samus_tpl
- Fixes and improvements for coreboot
- x86 documentation updates

15 months agox86: doc: coreboot: Mention 64-bit Linux distros
Simon Glass [Wed, 20 Sep 2023 03:00:21 +0000 (21:00 -0600)]
x86: doc: coreboot: Mention 64-bit Linux distros

Add a little more detail as to why coreboot64 is preferred for booting
Linux distros.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: doc: Split out manual booting into its own file
Simon Glass [Wed, 20 Sep 2023 03:00:20 +0000 (21:00 -0600)]
x86: doc: Split out manual booting into its own file

Move this out of the main file since for simple users it is easier to
rely on standard boot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: doc: Update summaries and add links
Simon Glass [Thu, 21 Sep 2023 13:37:45 +0000 (07:37 -0600)]
x86: doc: Update summaries and add links

Refresh the summary information so it is more up-to-date. Add links to
the coreboot and slimbootloader docs.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: doc: Move into its own directory
Simon Glass [Wed, 20 Sep 2023 03:00:18 +0000 (21:00 -0600)]
x86: doc: Move into its own directory

There is enough material that it makes sense to split this up into
several files. Create an x86/ directory for this purpose.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Record the position of the SMBIOS tables
Simon Glass [Wed, 20 Sep 2023 03:00:17 +0000 (21:00 -0600)]
x86: coreboot: Record the position of the SMBIOS tables

Make a note of where coreboot installed the SMBIOS tables so that we can
pass this on to EFI.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoefi: Use the installed SMBIOS tables
Simon Glass [Wed, 20 Sep 2023 13:29:51 +0000 (07:29 -0600)]
efi: Use the installed SMBIOS tables

U-Boot should set up the SMBIOS tables during startup, as it does on x86.
Ensure that it does this correctly on non-x86 machines too, by creating
an event spy for last-stage init.

Tidy up the installation-condition code while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoRecord the position of the SMBIOS tables
Simon Glass [Wed, 20 Sep 2023 03:00:15 +0000 (21:00 -0600)]
Record the position of the SMBIOS tables

Remember where these end up so that we can pass this information on to
the EFI layer.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agobootstd: Keep track of use of usb stop
Simon Glass [Wed, 20 Sep 2023 13:29:49 +0000 (07:29 -0600)]
bootstd: Keep track of use of usb stop

When 'usb stop' is run, doing 'bootflow scan' does not run the USB hunter
again so does not see any devices. Fix this by telling bootstd about the
state of USB.

Signed-off-by: Simon Glass <sjg@chromium.org>
15 months agox86: smbios: Add a Kconfig indicating SMBIOS-table presence
Simon Glass [Wed, 20 Sep 2023 03:00:13 +0000 (21:00 -0600)]
x86: smbios: Add a Kconfig indicating SMBIOS-table presence

When booted from coreboot, U-Boot does not build the SMBIOS tables, but
it should still pass them on to the OS. Add a new option which indicates
whether SMBIOS tables are present, however they were built.

Flip the ordering so that the dependency is listed first, which is less
confusing.

Adjust GENERATE_SMBIOS_TABLE to depend on this new symbol.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoefi: x86: Correct the condition for installing ACPI tables
Simon Glass [Wed, 20 Sep 2023 03:00:12 +0000 (21:00 -0600)]
efi: x86: Correct the condition for installing ACPI tables

It is not always the case that U-Boot builds the ACPI tables itself. For
example, when booting from coreboot, the ACPI tables are built by
coreboot.

Correct the Makefile condition so that U-Boot can pass on tables built
by a previous firmware stage.

Tidy up the installation-condition code while we are here.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Enable VIDEO_COPY
Simon Glass [Wed, 20 Sep 2023 03:00:11 +0000 (21:00 -0600)]
x86: coreboot: Enable VIDEO_COPY

At least on modern machines the write-back mechanism for the frame buffer
is quite slow when scrolling, since it must read the entire frame buffer
and write it back.

Enable the VIDEO_COPY feature to resolve this problem.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Align options between coreboot and coreboot64
Simon Glass [Wed, 20 Sep 2023 03:00:10 +0000 (21:00 -0600)]
x86: coreboot: Align options between coreboot and coreboot64

These two builds are similar but have some different options for not good
reason. Line them up to be as similar as possible.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Drop USB init on startup
Simon Glass [Thu, 21 Sep 2023 13:37:44 +0000 (07:37 -0600)]
x86: coreboot: Drop USB init on startup

This is very annoying as it is quite slow on many machines. Also, U-Boot
has an existing 'preboot' mechanism to enable this feature if desired.

Drop this code so that it is possible to choose whether to init USB or
not.

Use the existing USE_PREBOOT mechanism instead.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Enable CONFIG_SYS_NS16550_MEM32
Simon Glass [Wed, 20 Sep 2023 03:00:08 +0000 (21:00 -0600)]
x86: coreboot: Enable CONFIG_SYS_NS16550_MEM32

The debug UART on modern machines uses a 32-bit wide transfer. Without
this, setting debug output causes a hang or no output. It is not obvious
(when enabling CONFIG_DEBUG_UART) that this is needed.

Enable 32-bit access to avoid this trap.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Look for DBG2 UART in SPL too
Simon Glass [Wed, 20 Sep 2023 03:00:07 +0000 (21:00 -0600)]
x86: coreboot: Look for DBG2 UART in SPL too

If coreboot does not set up sysinfo for the UART, SPL currently hangs.
Use the DBG2 technique there as well. This allows coreboot64 to boot from
coreboot even if the console info is missing from sysinfo

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: Allow APCI in SPL
Simon Glass [Wed, 20 Sep 2023 03:00:06 +0000 (21:00 -0600)]
x86: Allow APCI in SPL

This is needed so we can find the DBG2 table provided by coreboot. Add a
Kconfig so it can be enabled.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: Set the CPU vendor in SPL
Simon Glass [Wed, 20 Sep 2023 03:00:05 +0000 (21:00 -0600)]
x86: Set the CPU vendor in SPL

We don't read this information in 64-bit mode, since we don't have the
macros for doing it. Set it to Intel by default. This allows the TSC timer
to work correctly.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Rearrange arch_cpu_init()
Simon Glass [Wed, 20 Sep 2023 03:00:04 +0000 (21:00 -0600)]
x86: coreboot: Rearrange arch_cpu_init()

Init errors in SPL are currently ignored by this function.

Change the code to init the CPU, reporting an error if something is wrong.
After that, look for the coreboot table.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Enable standard boot
Simon Glass [Wed, 20 Sep 2023 03:00:03 +0000 (21:00 -0600)]
x86: coreboot: Enable standard boot

Enable bootstd options and provide instructions on how to boot a linux
distro using coreboot.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Add IDE and SATA
Simon Glass [Wed, 20 Sep 2023 03:00:02 +0000 (21:00 -0600)]
x86: coreboot: Add IDE and SATA

Add these options to permit access to more disk types.

Add some documentation as well.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: Update cbmem driver
Simon Glass [Sun, 10 Sep 2023 19:13:02 +0000 (13:13 -0600)]
x86: Update cbmem driver

This driver is not actually built since a Kconfig was never created for
it.

Add a Kconfig (which is already implied by COREBOOT) and update the
implementation to avoid using unnecessary memory. Drop the #ifdef at the
top since we can rely on Kconfig to get that right.

To enable it (in addition to serial and video), use:

   setenv stdout serial,vidconsole,cbmem

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
[Modified the comment about overflow a little bit]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: coreboot: Document cbmem console struct
Simon Glass [Sun, 10 Sep 2023 19:13:01 +0000 (13:13 -0600)]
x86: coreboot: Document cbmem console struct

Coreboot changed a few years ago to include an overflow flag. Update the
structure to match this.

This comes from coreboot commit:

   6f5ead14b4 ("mb/google/nissa/var/joxer: Update eMMC DLL settings")

Note: There are several implementations of this in coreboot. I have chosen
to follow the one in src/lib/cbmem_console.c

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: doc: Update the list of supported Chromebooks
Simon Glass [Thu, 7 Sep 2023 15:58:21 +0000 (09:58 -0600)]
x86: doc: Update the list of supported Chromebooks

One is missing, so add it. Also mention the SoC used in each.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: dm: Mark driver model as dead when disabling CAR
Simon Glass [Thu, 7 Sep 2023 15:58:20 +0000 (09:58 -0600)]
x86: dm: Mark driver model as dead when disabling CAR

When turning off CAR, set the flag to make sure that nothing tries to use
driver model in SPL before jumping to U-Bot proper, since its tables are
in CAR.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: broadwell: Set up MTRRs
Simon Glass [Thu, 7 Sep 2023 15:58:19 +0000 (09:58 -0600)]
x86: broadwell: Set up MTRRs

The current condition does not handle the samus_tpl case where it sets
up the RAM in SPL but needs to commit the MTRRs in U-Boot proper.

Add another case to handle this and update the comment.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: broadwell: Avoid initing the CPU twice
Simon Glass [Thu, 7 Sep 2023 15:58:18 +0000 (09:58 -0600)]
x86: broadwell: Avoid initing the CPU twice

When TPL has already set up the CPU, don't do it again. This existing
code actually has this backwards, so fix it.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: spl: Change the condition for copying U-Boot to RAM
Simon Glass [Thu, 7 Sep 2023 15:58:17 +0000 (09:58 -0600)]
x86: spl: Change the condition for copying U-Boot to RAM

Make this depend on whether the address matches the offset, rather than
a particular board build. For samus_tpl we don't need to copy, for
example.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: samus_tpl: Correct text base and alloc sizes
Simon Glass [Thu, 7 Sep 2023 15:58:16 +0000 (09:58 -0600)]
x86: samus_tpl: Correct text base and alloc sizes

Make sure that CONFIG_X86_OFFSET_U_BOOT is the same as CONFIG_TEXT_BASE
as it is changing CONFIG_X86_OFFSET_U_BOOT

Samus boots into U-Boot proper in flash, not RAM. Also expand the SPL
malloc() size a little, to avoid an error.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: Add some log categories
Simon Glass [Thu, 7 Sep 2023 15:58:15 +0000 (09:58 -0600)]
x86: Add some log categories

Add some missing log categories to a few files.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: broadwell: Show the memory delay
Simon Glass [Thu, 7 Sep 2023 15:58:14 +0000 (09:58 -0600)]
x86: broadwell: Show the memory delay

Samus only takes 7 seconds but it is long enough to think it has hung. Add
a message about what it is doing, similar to the approach on coral.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agodm: core: Allow marking driver model as dead
Simon Glass [Thu, 7 Sep 2023 15:58:13 +0000 (09:58 -0600)]
dm: core: Allow marking driver model as dead

On x86 devices we use CAR (Cache-As-RAM) to hold the malloc() region in
SPL, since SDRAM is not set up yet. This means that driver model stores
its tables in this region.

When preparing to jump from SPL to U-Boot proper, we must disable CAR, so
that the CPU can uses the caches normally. This means that driver model
tables become inaccessible. From there until we jump to U-Boot proper, we
must avoid using driver model.

This is only a problem on boards which operate this way, for example
chromebook_link64

Add a flag to indicate that driver model is dead and should not be used.
It can be used in SPL to avoid hanging the machine.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: doc: Document the -cdrom issues I ran into
Simon Glass [Fri, 1 Sep 2023 18:08:23 +0000 (12:08 -0600)]
x86: doc: Document the -cdrom issues I ran into

Add a note about using -cdrom with QEMU.

Suggested-by: Bin Meng <bmeng@tinylab.org>
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng@tinylab.org>
15 months agox86: Prevent from missing the FADT chaining
Andy Shevchenko [Fri, 1 Sep 2023 17:27:10 +0000 (11:27 -0600)]
x86: Prevent from missing the FADT chaining

Recent approach with FADT writer shows that there is
a room for subtle errors. Prevent this from happening
again by introducing acpi_add_fadt() helper.

Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoReland "x86: Move FACP table into separate functions""
Simon Glass [Fri, 1 Sep 2023 17:27:09 +0000 (11:27 -0600)]
Reland "x86: Move FACP table into separate functions""

Each board has its own way of creating this table. Rather than calling the
acpi_create_fadt() function for each one from a common acpi_write_fadt()
function, just move the writer into the board-specific code.

Co-developed-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
Signed-off-by: Simon Glass <sjg@chromium.org>
Tested-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
15 months agox86: coreboot: Avoid a declaration after a label
Simon Glass [Thu, 31 Aug 2023 17:20:53 +0000 (11:20 -0600)]
x86: coreboot: Avoid a declaration after a label

Declare the global_data pointer at the top of the file, to avoid an
error:

   arch/x86/include/asm/global_data.h:143:35: error: a label can
      only be part of a statement and a declaration is not a statement
   board/coreboot/coreboot/coreboot.c:60:2: note: in expansion of macro
      ‘DECLARE_GLOBAL_DATA_PTR’

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoAllow Python packages to be dropped
Simon Glass [Thu, 31 Aug 2023 17:20:52 +0000 (11:20 -0600)]
Allow Python packages to be dropped

When building in a portage chroot, we do not have the environment needed
to build pylibfdt. It is instead build as a separate package.

Provide a build option to tell U-Boot to skip this part of the build. We
still need it to use binman, etc. but don't need it to build its
dependencies.

Signed-off-by: Simon Glass <sjg@chromium.org>
Reviewed-by: Mike Frysinger <vapier@chromium.org>
[s/build bytes/builds bytes in tools.rst]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: pxeboot: bugfix: Set variable for size of initrd
Thomas Mittelstaedt [Thu, 4 May 2023 13:42:55 +0000 (13:42 +0000)]
x86: pxeboot: bugfix: Set variable for size of initrd

The problem was, that zboot() didn't work because of missing
ramdisc size.

Signed-off-by: Thomas Mittelstaedt <thomas.mittelstaedt@de.bosch.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
15 months agox86: efi-payload64: Add bootstd support
Thomas Mittelstaedt [Thu, 4 May 2023 13:42:54 +0000 (13:42 +0000)]
x86: efi-payload64: Add bootstd support

Enable bootstd support for U-Boot at VirtualBox described at
https://source.denx.de/u-boot/u-boot/-/blob/master/doc/develop/bootstd.rst

This is used to boot system images at Virtualbox via
- distroboot (extlinux.conf)
- boot script

Signed-off-by: Thomas Mittelstaedt <thomas.mittelstaedt@bosch.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[Added 'efi-payload64' tag]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: efi-payload64: Add support for SCSI devices
Thomas Mittelstaedt [Thu, 4 May 2023 13:42:53 +0000 (13:42 +0000)]
x86: efi-payload64: Add support for SCSI devices

U-Boot at VirtualBox must load Linux and boot configuration from disk devices.
Here the discs at AHCI (scsi) bus are used to load the needed boot data.

Signed-off-by: Thomas Mittelstaedt <thomas.mittelstaedt@de.bosch.com>
Reviewed-by: Simon Glass <sjg@chromium.org>
[Added 'efi-payload64' tag and rebased on top of u-boot/master]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
15 months agox86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI)
Troy Kisky [Mon, 13 Mar 2023 21:31:43 +0000 (14:31 -0700)]
x86: cpu: i386: cpu: only set pci_ram_top if CONFIG_IS_ENABLED(PCI)

This avoids an error when ifdef CONFIG_PCI is changed to
if CONFIG_IS_ENABLED(PCI)

Signed-off-by: Troy Kisky <troykiskyboundary@gmail.com>
[Rebased on top of u-boot/master]
Signed-off-by: Bin Meng <bmeng.cn@gmail.com>
15 months agoMerge https://source.denx.de/u-boot/custodians/u-boot-riscv
Tom Rini [Thu, 21 Sep 2023 19:56:47 +0000 (15:56 -0400)]
Merge https://source.denx.de/u-boot/custodians/u-boot-riscv

- Fixup memory size passed to kernel on visionfive2

15 months agoMerge tag 'xilinx-for-v2024.01-rc1-v2' of https://source.denx.de/u-boot/custodians...
Tom Rini [Thu, 21 Sep 2023 14:51:58 +0000 (10:51 -0400)]
Merge tag 'xilinx-for-v2024.01-rc1-v2' of https://source.denx.de/u-boot/custodians/u-boot-microblaze into next

Xilinx changes for v2024.01-rc1

clk:
- Dont return error when assigned-clocks is empty or missing

dm:
- Support reading a single indexed u64 value
- Add support for reading bootscript address/flash address from DT

cmd:
- Fix flash_is_unlocked API

fpga:
- Define fpga_load() for debug build

global:
- U-Boot project name cleanup (next2)

net:
- zynq_gem: Use generic_phy_valid() helper
- axienet: Convert to ofnode functions
- gmii2rgmii: Read bridge address from DT

pytest:
- skip tpm2_startup when env__tpm_device_test_skip=True

spi-nor:
- Add mx25u25635f support
- zynqmp_qspi: Tune cache behavior

trace:
- Fix flyrecord alignment issue

xilinx:
- Move scriptaddr to DT as bootscr-address
- Pick script_offset_f/script_size_f from DT as bootscr-flash-offset/size
- Do not generate distro boot variables if disabled

versal:
- Extend memory ranges to cover HBM
- Enable TPM, sha1sum and KASLRSEED
- Fix distroboot prioritization in connection to available devices
- Clean mini targets bootcommand
- Fix clock driver

versal-net:
- Enable TPM, sha1sum and KASLRSEED
- Fix distroboot prioritization in connection to available devices

zynqmp;
- Allow AES to run from SPL
- Enable CMD_KASLRSEED
- Add proper dependencies for USB and remove ZYNQMP_USB
- Fix user si570 default frequency for zcu* boards
- Cover SOM rev2 revision
- Various DT changes
- Add firmware and pinctrl support for tristate configuration
  (high impedance/output enable)
- Add output-enable pins to SOMs
- Fix distroboot prioritization in connection to available devices
- Read bootscript address/flash address from DT
- Fix pcap_prog address

15 months agoMerge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-riscv into...
Tom Rini [Thu, 21 Sep 2023 14:51:15 +0000 (10:51 -0400)]
Merge branch 'next' of https://source.denx.de/u-boot/custodians/u-boot-riscv into next

+ Add NVMe & USB boot devices for VisionFive2
+ Add StarFive SPL image support in mkimage tool