| Age | Commit message (Collapse) | Author |
|
- Move DMA software reset and pad calibration in xgmac_start() to occur
after the PHY is initialized and connected.
- This ensures the PHY is ready before performing these operations,
which is necessary for proper recovery after reboot.
This change fixes issues where the PHY did not recover from power-down
state after a Linux reboot, for the board using Micrel KSZ90x1 PHY.
Signed-off-by: Boon Khai Ng <[email protected]>
|
|
As exposed by "make randconfig", we have a few dependency issues with
some network drivers:
- Both HIFEMAC_ETH and HIGMACV300_ETH functionally require both DM and
OF_CONTROL. Further, HIFEMAC_ETH needs DM_CLK not just CLK to be
selected.
- BNXT_ETH deals with it's PCI requirement in a backwards way. The
symbol PCI_INIT_R is board specific, PCI alone is required to build.
Signed-off-by: Tom Rini <[email protected]>
|
|
Airoha PCS driver depends on ARCH_AIROHA, so it should not be built
by allyesconfig configuration.
Signed-off-by: Mikhail Kshevetskiy <[email protected]>
|
|
Use common code to get CHIP_SCU registers instead of driver one.
Signed-off-by: Mikhail Kshevetskiy <[email protected]>
|
|
Airoha switch mdio maybe used not only by GDM1, but also by other GDM
ports (ex: as21xxx phy connected to GDM2 port). So it's better probe
airoha switch mdio a bit early in the airoha_eth_probe() code.
Also remove useless eth_phy_set_mdio_bus() call and related code.
Signed-off-by: Mikhail Kshevetskiy <[email protected]>
|
|
This allows us to expose MMC devices to the host for easy
flashing via USB.
Signed-off-by: Wadim Egorov <[email protected]>
Reviewed-by: Primoz Fiser <[email protected]>
|
|
This allows us to expose MMC devices to the host for easy
flashing via USB.
Signed-off-by: Wadim Egorov <[email protected]>
|
|
Adjust the scan for default console stdio device to prefer the
currently selected serial device. This is useful in combination
with CONFIG_SERIAL_PROBE_ALL=y, in which case the system would
instantiate all serial devices as stdio devices in the order in
which they are listed in control DT. The currently selected serial
device may not be the first device listed in DT, in which case the
current console_init_r() implementation unexpectedly switches to
another serial console after listing stderr using "Err:" line, and
just before showing U-Boot shell, which is not the desired behavior.
The scan now iterates over the entire list of stdio devices. If the
current iterator stdio device is the current serial device, or there
is no input or output stdio device assigned to the input or output
stream yet, then the current iterator stdio device is assigned to that
stream. This way, the first suitable stdio device is assigned to the
stream, but the current serial console stdio device can override that
assignment.
As a small optimization, if the current iterator stdio device is the
current serial device and both input and output streams as assigned,
then the loop can terminate, because the current serial device has a
chance to be used as a stdio device at this point.
Signed-off-by: Marek Vasut <[email protected]>
Reviewed-by: Simon Glass <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for REGMAP (and xPL variants). As this is a library function, it should
always be selected and not depended on by other functionality. This is
largely done correctly today, so just correct the few outliers.
Acked-by: Anshul Dalal <[email protected]>
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for USB_ISP1760. It depends on DM && OF_CONTROL being set and
functionally requires REGMAP. As part of fixing that issue, we change
"tristate" to "bool" and remove mentions of module support as that's not
a thing in U-Boot.
Reviewed-by: Marek Vasut <[email protected]>
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for SPL_UNIT_TEST. In order to test SPL_DM_DEVICE_REMOVE we also need to
have ensured that SPL_DM is enabled, so select that as well.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for SPL_TIMER. This depends not just on SPL but also SPL_DM to function,
so add that.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for PINCTRL_TH1520. It really needs to depend on PINCTRL_GENERIC rather
than select it, and PINCTRL_GENERIC in turn already depends on
PINCTRL_FULL.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for QCOM_GENI. The symbol PARTITION_TYPE_GUID depends on EFI_PARTITION
and this driver cannot function without both being set, so select that
as well.
Reviewed-by: Casey Connolly <[email protected]>
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue with the dependencies
for BUTTON_KEYBOARD. This needs to also depend on DM_GPIO, and then
select BUTTON as well as BUTTON_GPIO, in order to meet all its
requirements.
Reviewed-by: Casey Connolly <[email protected]>
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue around SPL_BLK_FS.
This is functionally a library type symbol that should be selected when
required and select what it needs. Have SPL_BLK_FS select SPL_FS_LOADER
and then SPL_NVME will now correctly select SPL_FS_LOADER via
SPL_BLK_FS.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue around SPL_UPL. This
depends on SPL_LIBGENERIC_SUPPORT indirectly. In turn, SPL_UPL_OUT needs
to next depend on SPL_UPL.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issues around a number of
symbols in BOOT_DEFAULTS_CMDS. Due to the nature of how we currently
handle other networking related command options, we need to be testing
for "!NO_NET" (which is the symbol for no networking stack) or "NET ||
NET_LWIP" rather than CMD_NET alone. For consistency and clarity here
use "CMD_NET && !NO_NET" here.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have an issue around how
SYSRESET_CMD_POWEROFF is typically selected. We cannot rely only on
CMD_POWEROFF as SYSRESET_CMD_POWEROFF must also be tested for its own
dependency of SYSRESET.
Signed-off-by: Tom Rini <[email protected]>
|
|
As exposed by "make randconfig", we have xPL_FIT select'ing
xPL_OF_CONTROL, and that in turn requires xPL_LIBGENERIC_SUPPORT. The
most reasonable solution here is to have xPL_FIT select
xPL_LIBGENERIC_SUPPORT.
Signed-off-by: Tom Rini <[email protected]>
|
|
The options to enable pre-load signature support (full U-Boot or in SPL)
must depend on FIT_SIGNATURE being enabled, and not select it.
Signed-off-by: Tom Rini <[email protected]>
|
|
Introduce new mode of relocation which relocates only data, not code.
This is mainly meant to relocate data to read-write portion of the RAM,
while the code remains in read-only portion of the RAM from which it is
allowed to execute. This split configuration is present on various secure
cores.
The result of the relocation is U-Boot running at its original address,
data relocated to the end of DRAM, but with added read-write area offset.
The U-Boot binary area is not reserved from the end of the DRAM in this
relocation mode, because U-Boot itself is not relocated.
Signed-off-by: Marek Vasut <[email protected]>
|
|
The code in the __XSCALE__ section is unused, since there is no more
XScale support in U-Boot. Remove the stale code. No functional change.
Signed-off-by: Marek Vasut <[email protected]>
|
|
The ARM32 has PLx Privilege Levels instead of Exception Levels present
on ARM64. Introduce current_pl() function which reports the current PL
on ARM32.
Introduce current_el() for ARM32 as well and current_pl() for ARM64
which each call the other matching function. This is mainly mean to
allow code like this to compile and retain compile time code coverage:
if (IS_ENABLED(CONFIG_ARM64) && current_el() != 3) { ... }
if (!IS_ENABLED(CONFIG_ARM64) && current_pl() != 0) { ... }
Signed-off-by: Marek Vasut <[email protected]>
|
|
Add a 'part dupcheck' subcommand that scans all block devices probed
in U-Boot and reports any partitions sharing the same PARTUUID or
PARTLABEL. This helps detect situations where the same disk image has
been flashed onto multiple boot devices (e.g., USB stick and UFS),
which can lead to unpredictable boot behavior. Duplicate
PARTUUIDs break UUID-based partition lookup in Linux, and duplicate
PARTLABELs cause the wrong partition to be silently selected in
bootscripts that reference partitions by name.
A single collection pass iterates over all block devices using
blk_foreach_probe() and records every partition that carries a UUID
or label into a dynamically allocated alist of struct part_seen
entries (UUID string, name string, device pointer, partition number).
Duplicates are detected by calling detect_duplicates() twice, once
for UUIDs and once for labels. Each call sorts the list with qsort()
using a comparator that places empty fields at the end, then performs
a single linear pass to identify consecutive equal entries as
duplicate groups. Each group is reported with the device name and
partition number of every copy, followed by a per-field summary
count. Per-field counts are used consistently in both the
duplicate-found and no-duplicates paths.
Example output (with duplicates):
=> part dupcheck
Warning: duplicate PARTUUID 1234abcd-01 (2 copies)
found on usb_mass_storage.lun0:1
found on ufs_scsi.id0lun0:1
Found 1 duplicate PARTUUID(s) (2 total copies) among 4 partitions
Warning: duplicate PARTLABEL primary (2 copies)
found on usb_mass_storage.lun0:1
found on ufs_scsi.id0lun0:1
Found 1 duplicate PARTLABEL(s) (2 total copies) among 4 partitions
Example output (mixed: UUID duplicates, no label duplicates):
=> part dupcheck
Warning: duplicate PARTUUID 1234abcd-01 (2 copies)
found on usb_mass_storage.lun0:1
found on ufs_scsi.id0lun0:1
Found 1 duplicate PARTUUID(s) (2 total copies) among 4 partitions
No duplicate PARTLABELs found (3 labels)
Example output (no duplicates):
=> part dupcheck
No duplicate PARTUUIDs or PARTLABELs found (4 UUIDs, 3 labels)
The CONFIG_CMD_PART_DUPCHECK Kconfig option (depends on
CMD_PART and BLK) controls inclusion of this subcommand and is
disabled by default.
Signed-off-by: John Toomey <[email protected]>
Signed-off-by: Padmarao Begari <[email protected]>
|
|
Refactor the dirty flag handling a little bit so an inline
function is called instead of directly stuffing a value into
the variable.
This allows variable that holds the flag to be completely removed
if its not used i.e. CONFIG_FAT_WIRTE=n
Signed-off-by: Daniel Palmer <[email protected]>
|
|
If no signature could be verified and the loop terminates, the iterator
'noffset' has no meaningful value so name yields NULL.
Signed-off-by: Ludwig Nussel <[email protected]>
|
|
Commit 2092322b31cc ("boot: Add fit_config_get_hash_list() to build
signed node list") removed printing the list of hashed nodes during
verification. Add it back to have a chance to compare the list when
debugging.
Signed-off-by: Ludwig Nussel <[email protected]>
|
|
https://source.denx.de/u-boot/custodians/u-boot-microblaze into next
AMD/Xilinx/FPGA changes for v2026.07-rc1 v2
Kconfig:
- Correct XILINX_TIMER entry
- Rework TARGET_MICROBLAZE_GENERIC
- Fix CPU_MICROBLAZE PVR logic
- Remove non existing SPL_BINMAN_FDT
i2c:
- Wire pca9848 support
spi/cadence-qspi:
- Disable DAC mode
- Do reset pulse
net/gem:
- Disable broadcast packets
- Clear TXSR transfer complete
- Add support for dma-coherent
versal2:
- Enable GIC600 support
- Fix UFS distro boot wiring
|
|
https://source.denx.de/u-boot/custodians/u-boot-efi
Pull request doc-2026-04-rc6
CI: https://source.denx.de/u-boot/custodians/u-boot-efi/-/pipelines/29687
Documentation:
* TI boards
- fix OP-TEE args
- fix incorrect labels for boot switches
* Fix typo in pstore documentation.
* Fix document references pointing to replaced uImage.FIT.
* buildman: Add missing :: for examples.
* overlay-fdt-boot: .dtbos do not need load addresses.
* When building the documentation use sys.path.append for pytests.
|
|
As exposed by "make randconfig", CPU_MICROBLAZE uses select to
force-enable XILINX_MICROBLAZE0_PVR, but that symbol depends on
TARGET_MICROBLAZE_GENERIC. The select bypasses this dependency chain,
triggering a Kconfig warning:
WARNING: unmet direct dependencies detected for XILINX_MICROBLAZE0_PVR
Depends on [n]: MICROBLAZE [=y] && TARGET_MICROBLAZE_GENERIC [=n]
Selected by [y]:
- CPU_MICROBLAZE [=y] && CPU [=y] && MICROBLAZE [=y]
Change XILINX_MICROBLAZE0_PVR from select to depends on, so that the
CPU driver is only available when PVR support has been explicitly
enabled.
Fixes: 816226d27efa ("cpu: add CPU driver for microblaze")
Reported-by: Tom Rini <[email protected]>
Signed-off-by: Michal Simek <[email protected]>
Link: https://lore.kernel.org/r/61ddd555f58ef5169c48b190423640d949e4aad1.1773764781.git.michal.simek@amd.com
|
|
The requirement that .dtbos have load addresses in the FIT image
vanished five years ago with
4c531d9f58b ("fit: Load DTO into temporary buffer and ignore load address")
Fix the documentation accordingly.
Signed-off-by: Rasmus Villemoes <[email protected]>
Reviewed-by: Marek Vasut <[email protected]>
|
|
The labels for the boot mode switches were incorreclty documented for
some TI boards, this patch fixes them as per the official user guides
linked below:
AM62x https://www.ti.com/lit/ug/spruj40e/spruj40e.pdf
AM62dx https://www.ti.com/lit/ug/sprujg2/sprujg2.pdf
AM62ax https://www.ti.com/lit/ug/spruj66b/spruj66b.pdf
AM62px https://www.ti.com/lit/ug/spruj40e/spruj40e.pdf
AM6254atl https://www.ti.com/lit/ug/spruja1a/spruja1a.pdf
Signed-off-by: Anshul Dalal <[email protected]>
|
|
CFG_WITH_SOFTWARE_PRNG=y was added as an OPTEE argument to workaround
some bugs related to TRNG which have been fixed now[1]. Therefore this
patch drops the redundant argument from the documentation.
[1]: https://github.com/OP-TEE/optee_os/commit/e313f4765fd0478bb66985827441411793433773
Signed-off-by: Anshul Dalal <[email protected]>
Acked-by: Francesco Dolcini <[email protected]> # Toradex Verdin AM62
|
|
Rather than having our "docs" build tagets modify PTYHONPATH, have
doc/conf.py append the required paths at runtime instead. This will
ensure that our builds from readthedocs will also find all of the
required files.
Signed-off-by: Tom Rini <[email protected]>
|
|
Fix 4 instances in buildman.rst where examples were missing :: for
proper formatting. Three cases just had a single : and in one case,
: didn't make grammatical sense, so it gets a stand-alone :: along
with fixing the indent.
Signed-off-by: David Lechner <[email protected]>
|
|
Use "parameters have been set" and "they need" for correct grammar
in the pstore documentation.
Signed-off-by: Aristo Chen <[email protected]>
|
|
Commit 488445cefa1 ("doc: Move FIT into its own directory") moved the
documentation in doc/uImage.FIT to doc/usage/fit, subsequently all
documents and example sources have been converted to reStructuredText.
Fix (almost) all of the remaining occurrences of the old path and
filenames across the tree.
The exception is doc/uImage.FIT/command_syntax_extensions.txt which
apparently has been removed entirely, or at least I was unable to
locate where that document is now.
Signed-off-by: Daniel Golle <[email protected]>
|
|
Richard Genoud <[email protected]> says:
SquashFS has support in U-Boot, but not in SPL.
This series adds the possibility for the SPL to load files from SquashFS
partitions.
This is useful, for instance, when there's a SquashFS rootfs containing
U-Boot binary.
NB: falcon mode is not supported yet.
Link: https://lore.kernel.org/r/[email protected]
|
|
I propose myself to maintain the squashfs files with João.
Also, reorder patterns in alphabetical order.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
João is using his Bootlin address now.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
spl_mmc_do_fs_boot supports now loading an image from squashfs.
Also, convert #if defined(CONFIG_SPL_xx) to if (CONFIG_IS_ENABLED(xx))
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
Implement spl_load_image_sqfs() in spl code.
This will be used in MMC to read a file from a squashfs partition.
Also, loosen squashfs read checks on file size by not failing when a
bigger size than the actual file size is requested. (Just read the file)
This is needed for FIT loading, because the length is ALIGNed.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
Otherwise, we get a lot of errors when including this file.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Tom Rini <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
Switch to if (CONFIG_IS_ENABLED()) instead of #if when possible and
remove unnecessary cases.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
CONFIG_IS_ENABLED() must be used in place of IS_ENABLED() for config
options that have a _SPL_ counterpart.
Signed-off-by: Richard Genoud <[email protected]>
Reviewed-by: Miquel Raynal <[email protected]>
Reviewed-by: João Marcos Costa <[email protected]>
|
|
https://source.denx.de/u-boot/custodians/u-boot-tpm into next
CI: https://source.denx.de/u-boot/custodians/u-boot-tpm/-/pipelines/29677
Add a new fwumdata tool to allows users to read, display, and modify FWU
(Firmware Update) metadata from Linux userspace. It provides
functionality similar to fw_printenv/fw_setenv but for FWU metadata.
Users can view metadata, change active/previous bank indices, modify
bank states, and set image acceptance flags. Configuration is done via
fwumdata.config file.
|
|
https://source.denx.de/u-boot/custodians/u-boot-raspberrypi
Updates for RPi for 2026.04-rc5:
- rpi: Update the naming for bcm2712 SoC RevD naming
- arm: bcm: Include missing errno.h
|
|
The downstream Raspberry Pi uses two namings for the revD
SoC device trees, both bcm2712d0-rpi-5-b and bcm2712-d-rpi-5-b
but it seems upstream has settled on just the later, so lets
use that as it's the name that maps both upstream and downstream.
Fixes: c15a7919725 ("board/raspberrypi: add bcm2712d0-rpi-5-b for Raspberry Pi 5")
Signed-off-by: Peter Robinson <[email protected]>
Reviewed-by: Matthias Brugger <[email protected]>
|
|
The msg.c file uses EIO macro defined in errno.h , include errno.h
to avoid build failure:
"
arch/arm/mach-bcm283x/msg.c: In function 'bcm2835_power_on_module':
arch/arm/mach-bcm283x/msg.c:73:25: error: 'EIO' undeclared (first use in this function)
73 | return -EIO;
| ^~~
"
Signed-off-by: Marek Vasut <[email protected]>
|