summaryrefslogtreecommitdiff
path: root/cmd
AgeCommit message (Collapse)Author
3 dayscmd/scsi: drop scsi reset commandDavid Lechner
Since commit b630f8b3aefc ("scsi: Forceably finish migration to DM_SCSI") the "scsi reset" command has no possibility of actually resetting any SCSI controller. Drop the command to avoid confusion that the command is actually resetting the SCSI controller. Signed-off-by: David Lechner <[email protected]>
4 daysw1: Correct dependencies for CMD_W1Tom Rini
The CMD_W1 functionality can only work with both W1 and W1_EEPROM enabled, so express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]>
4 dayscmd: Correct dependencies for CMD_BOOTDTom Rini
The CMD_BOOTD functionality can only work with CMD_BOOTM enabled, so express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]>
4 daysenv: remote: Disallow CMD_SAVEENVTom Rini
Looking at how the saveenv portion of this driver was implemented, it does not appear that it could actually result in changes being saved on the remote end. Update Kconfig to disallow CMD_SAVEENV for ENV_IS_IN_REMOTE and then remove the relevant code. Signed-off-by: Tom Rini <[email protected]>
8 dayscmd: Add missing dependency to CMD_PMCTom Rini
We cannot build CMD_PMC without ACPI_PMC, so add that as a dependency. Signed-off-by: Tom Rini <[email protected]>
8 daysloads: Add LMB as a dependencyTom Rini
As this command calls lmb_alloc_mem directly it must depend on LMB being enabled. Signed-off-by: Tom Rini <[email protected]>
8 dayslmb: Correct dependency around CMD_BOOT[IMZ]Tom Rini
The calls around lmb functions for these commands are not specific to SYS_BOOT_RAMDISK_HIGH but rather part of the general loading portion of the command itself currently. Move this dependency to the right spot. Signed-off-by: Tom Rini <[email protected]>
8 dayssata: Rework the CMD_SATA and SATA symbolsTom Rini
Today we typically enable CMD_SATA in order to have the SATA functionality itself enabled, despite there being a clean split between the two symbols. This in turn leads to potential configuration problems. Split things so that SATA continues to be separate and not CMD_SATA instead depends, functionally, on AHCI being enabled. To do all of this: - Have X86 select AHCI directly rather than "default y" it later. - Make CMD_SATA be a default y option, given the split of platforms that enabled SATA and did, or did not, enable CMD_SATA. - Change "imply CMD_SATA" to "imply SATA" - Correct TARGET_VEXPRESS64_JUNO because you cannot select SATA_SIL without PCI (and in turn, SATA is needed for SATA_SIL). - Update a number of defconfigs to have no functional change. Signed-off-by: Tom Rini <[email protected]>
9 dayscmd: test: add bug-compatibility special case for 'test -n'Rasmus Villemoes
It turns out that there is lots of code in the wild, including in the U-Boot tree itself, which used to rely on test -n $somevar to yield false when $somevar is not defined or empty. See for example all the occurrences of 'test -n $fdtfile'. That was really only a quirk of the implementation that refused calls with argc < 3, and not because it was interpreted as test -n "$somevar" which is how this should be spelled. While not exactly conforming to POSIX, we can accomodate such scripts by special-casing a single argument "-n" to be interpreted as if it comes from code as above with empty $somevar. Since we only just added the ability to test a string for emptiness using the single-argument form, it is very unlikely that there is code doing test "$str" which would now fail if $str happens to be exactly "-n"; such a test should really always be spelled test -n "$str" Fixes: 8b0619579b2 ("cmd: test: fix handling of single-argument form of test") Reported-by: Franz Schnyder <[email protected]> Signed-off-by: Rasmus Villemoes <[email protected]> Reviewed-by: Simon Glass <[email protected]>
11 daysMerge tag 'net-20260331' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-net into next Pull request net-20260331. net: - airoha_eth & pcs_airoha driver fixes - Rework some symbol dependencies - dwc_eth_xgmac: Move DMA reset and pad calibration after PHY init - rtl8169: add support for RTL8125d - rswitch: Avoid NULL pointer dereference during PHY access - rswitch: Remap CPU to bus addresses using dev_phys_to_bus() - phy: dp83867: reset PHY on init to ensure clean state net-lwip: - nfs: fix buffer overflow when using symlinks - tftp: update image_load_addr after successful transfer [trini: Add missing "if NET" to CMD_DHCP select's CMD_BOOTP] Signed-off-by: Tom Rini <[email protected]>
11 dayscmd: dhcp: Select CMD_BOOTPMarek Vasut
The DHCP command depends on bootp_reset() function, which is implemented only if CMD_BOOTP is enabled. Select CMD_BOOTP to satisfy the dependency. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Heiko Schocher <[email protected]> Reviewed-by: Kory Maincent <[email protected]>
11 daysnet: cmd: Correct dependencies for CMD_PXETom Rini
The CMD_PXE functionality can only build with CMD_TFTPBOOT enabled (or we get undefined references to do_tftpb), so express this dependency in Kconfig. Signed-off-by: Tom Rini <[email protected]>
11 daysnet: lwip: nfs: Add missing dependencyTom Rini
In order to use NFS with lwIP we need to select PROT_UDP_LWIP. Signed-off-by: Tom Rini <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2026-03-27cmd: part: add part dupcheck subcommandPadmarao Begari
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]>
2026-03-25Merge patch series "add [ as alias for test, fix 0/1 argument handling"Tom Rini
Rasmus Villemoes <[email protected]> says: Make 'test' behave a little more like its cousins in other shells, by allowing the [ ... ] spelling, and while here, fix up the handling of a single, non-empty argument to comply with POSIX. Link: https://lore.kernel.org/r/[email protected]
2026-03-25cmd: test: fix handling of single-argument form of testRasmus Villemoes
POSIX states that 0 arguments: Exit false (1). 1 argument: Exit true (0) if $1 is not null; otherwise, exit false. and at least bash and busybox sh behave that way. The current 'argc < 3' does the right thing for a non-existing or empty argv[1], but not for a non-empty argv[1]. Fix that and add corresponding test cases. Signed-off-by: Rasmus Villemoes <[email protected]> Tested-by: Anshul Dalal <[email protected]>
2026-03-25cmd: test: allow using [ as alias for testRasmus Villemoes
I often find myself writing something like if [ "$somevar" = 123 ] ; then ... only to realize that that syntax doesn't work in U-Boot shell, and must be spelled if test "$somevar" = 123 ; then It only takes a few lines of code to support this POSIX-standardized alias for test, and helps developers focus on their actual problems instead of dealing with such unexpected quirks of the shell. Signed-off-by: Rasmus Villemoes <[email protected]> Tested-by: Anshul Dalal <[email protected]>
2026-03-18Merge patch series "led: remove legacy API"Tom Rini
Quentin Schulz <[email protected]> says: This migrates the last user of the legacy LED API, IMX233-OLinuXino and net/bootp.c, to the modern LED framework. I do have concern about being able to use BOOTP in SPL? In which case, I should probably add an additional check on CONFIG_IS_ENABLED(LED) in addition to IS_ENABLED(CONFIG_LED_BOOT)? I haven't tested this as I do not own an IMX233-OLinuXino, so please give this a try if you own this device. Then, since there's no user left of this legacy API, it is entirely removed. Link: https://lore.kernel.org/r/[email protected]
2026-03-18led: remove legacy APIQuentin Schulz
No user of the legacy LED API anymore (except Sunxi with the PinePhone but that is now a Sunxi-specific implementation), so let's remove anything related. Signed-off-by: Quentin Schulz <[email protected]>
2026-03-14cmd: efidebug: add ecpt commandVincent Stehlé
Add an "efidebug ecpt" command, to print the conformance profiles in the ECPT: => efidebug ecpt cce33c35-74ac-4087-bce7-8b29b02eeb27 EFI EBBR 2.1 Conformance Profile Suggested-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Vincent Stehlé <[email protected]> Cc: Ilias Apalodimas <[email protected]> Cc: Tom Rini <[email protected]> Acked-by: Ilias Apalodimas <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-02-25cmd: mmc: Drop trailing space in Name: before newlineMarek Vasut
The Name: line of 'mmc info' command prints a trailing space before newline. This is not useful and shows up as trailing space e.g. when the output is checked into documentation. Remove the trailing space. Signed-off-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-18Merge patch series "Implement all missing SMBIOS types required by distro ↵Tom Rini
tooling" Raymond Mao <[email protected]> says: From: Raymond Mao <[email protected]> This series finish the last missing puzzle of required SMBIOS types by: 1) Fixing duplicated handles when multiple instances exist in one type; 2) Implementing the rest of required types 9/16/17/19; 3) Adding version control when printing properties for all types. Type 9/16/17/19 are generally DT-based, the idea is to write these tables using a hybrid approach: Explicit DT definitions under existing '/smbios/smbios' take precedence, with fallback to scan and interpret values from the entire DT. Moreover, all below APIs: smbios_get_val_si() smbios_get_u64_si() smbios_add_prop_si() are on top of sysinfo, thus allow vendors to get values from other subsystems by implementing their own sysinfo driver if needed. Link: https://lore.kernel.org/r/[email protected]
2026-02-18smbios: print the properties only when they exist in a specified version of specRaymond Mao
By checking the payload length, we can know the version of the spec and skip the ones which are not expected to exist. Signed-off-by: Raymond Mao <[email protected]> Tested-by: Ilias Apalodimas <[email protected]>
2026-02-18smbios: add support for dynamic generation of Type 19 tableRaymond Mao
This commit implements SMBIOS Type 19 (Memory Array Mapped Address) generation with a hybrid approach supporting both: 1. Explicit definition via Device Tree 'smbios' node: Child node under '/smbios/smbios/memory-array-mapped-address' will be used to populate as individual Type 19 structure directly. - Properties follow SMBIOS field names with lowercase letters and hyphen-separated words (e.g., 'starting-address', 'ending-address', 'partition-width', etc.). - This method supports precise platform-defined overrides and system descriptions. 2. Fallback to automatic DT-based discovery: If child node under '/smbios/smbios/memory-array-mapped-address' does not exist, the implementation will: - Scan all top-level 'memory@' nodes to populate Type 19 structure with inferred size and location data. - Scan nodes named or marked as 'memory-controller' and parse associated 'dimm@' subnodes (if present) to extract DIMM sizes and map them accordingly. This dual-mode support enables flexible firmware SMBIOS reporting while aligning with spec-compliant naming and runtime-detected memory topology. Type 19 support is under GENERATE_SMBIOS_TABLE_VERBOSE to avoid increasing rom size for those platforms which only require basic SMBIOS support. Signed-off-by: Raymond Mao <[email protected]> Tested-by: Ilias Apalodimas <[email protected]>
2026-02-18smbios: add support for dynamic generation of Type 17 tableRaymond Mao
This commit implements SMBIOS Type 17 (Memory Device) generation with a hybrid approach supporting both: 1. Explicit definition via Device Tree 'smbios' node: Child node under '/smbios/smbios/memory-device' will be used to populate as individual Type 17 structure directly. - Properties follow SMBIOS field names with lowercase letters and hyphen-separated words (e.g., 'physical-memory-array-handle', ' memory-error-information-handle', 'configured-memory-speed', etc.). - This method supports precise platform-defined overrides and system descriptions. 2. Fallback to automatic DT-based discovery: If child node under '/smbios/smbios/memory-device' does not exist, the implementation will: - Scan all top-level 'memory@' nodes to populate Type 17 structure with inferred size and location data. - Scan nodes named or marked as 'memory-controller' and parse associated 'dimm@' subnodes (if present) to extract DIMM sizes and map them accordingly. This dual-mode support enables flexible firmware SMBIOS reporting while aligning with spec-compliant naming and runtime-detected memory topology. Type 17 support is under GENERATE_SMBIOS_TABLE_VERBOSE to avoid increasing rom size for those platforms which only require basic SMBIOS support. Signed-off-by: Raymond Mao <[email protected]> Tested-by: Ilias Apalodimas <[email protected]>
2026-02-18smbios: add support for dynamic generation of Type 16 tableRaymond Mao
This commit implements SMBIOS Type 16 (Physical Memory Array) generation with a hybrid approach supporting both: 1. Explicit definition via Device Tree 'smbios' node: Child node under '/smbios/smbios/memory-array' will be used to populate as individual Type 16 structure directly. - Properties follow SMBIOS field names with lowercase letters and hyphen-separated words (e.g., 'memory-error-correction', 'maximum-capacity', 'extended-maximum-capacity', etc.). - This method supports precise platform-defined overrides and system descriptions. 2. Fallback to automatic DT-based discovery: If child node under '/smbios/smbios/memory-array' does not exist, the implementation will: - Scan all top-level 'memory@' nodes to populate Type 16 structure with inferred size and location data. - Scan nodes named or marked as 'memory-controller' and parse associated 'dimm@' subnodes (if present) to extract DIMM sizes and map them accordingly. This dual-mode support enables flexible firmware SMBIOS reporting while aligning with spec-compliant naming and runtime-detected memory topology. Type 16 support is under GENERATE_SMBIOS_TABLE_VERBOSE to avoid increasing rom size for those platforms which only require basic SMBIOS support. Signed-off-by: Raymond Mao <[email protected]> Tested-by: Ilias Apalodimas <[email protected]>
2026-02-18smbios: add support for dynamic generation of Type 9 system slot tablesRaymond Mao
This commit introduces support for generating SMBIOS Type 9 (System Slot) tables using a hybrid approach: 1. Explicit Device Tree definitions: Child node under '/smbios/smbios/system-slot' will be interpreted as individual slot definitions. - Each child represents a slot (e.g., isa, pcmcia, etc.). - Properties follow the SMBIOS specification using lowercase hyphen-separated names such as 'slot-type', 'slot-id', 'segment-group-number', 'bus-number', 'slot-information', etc. - This approach allows full customization of each system slot and is especially suitable for platforms with well-defined slot topology. 2. Automatic detection fallback: If child node under '/smbios/smbios/system-slot' does not exist, the implementation will scan the entire device tree for nodes whose 'device_type' matches known slot-related types ("pci", "isa", "pcmcia", etc.). - When a match is found, default values or heuristics are applied to populate to the System Slot table. - This mode is useful for platforms that lack explicit SMBIOS nodes but still expose slot topology via standard DT conventions. Together, two approaches ensure that SMBIOS Type 9 entries are available whether explicitly described or automatically derived. Signed-off-by: Raymond Mao <[email protected]> Tested-by: Ilias Apalodimas <[email protected]>
2026-02-17Merge patch series "treewide: Clean up usage of DECLARE_GLOBAL_DATA_PTR"Tom Rini
Peng Fan (OSS) <[email protected]> says: This patch set primarily removes unused DECLARE_GLOBAL_DATA_PTR instances. Many files declare DECLARE_GLOBAL_DATA_PTR and include asm/global_data.h even though gd is never used. In these cases, asm/global_data.h is effectively treated as a proxy header, which is not a good practice. Following the Include What You Use principle, files should include only the headers they actually depend on, rather than relying on global_data.h indirectly. This approach is also adopted in Linux kernel [1]. The first few patches are prepartion to avoid building break after remove the including of global_data.h. A script is for filtering the files: list=`find . -name "*.[ch]"` for source in ${list} do result=`sed -n '/DECLARE_GLOBAL_DATA_PTR/p' ${source}` if [ "${result}" == "DECLARE_GLOBAL_DATA_PTR;" ]; then echo "Found in ${source}" result=`sed -n '/\<gd\>/p' ${source}` result2=`sed -n '/\<gd_/p' ${source}` result3=`sed -n '/\<gd->/p' ${source}` if [ "${result}" == "" ] && [ "${result2}" == "" ] && [ "${result3}" == "" ];then echo "Cleanup ${source}" sed -i '/DECLARE_GLOBAL_DATA_PTR/{N;/\n[[:space:]]*$/d;s/.*\n//;}' ${source} sed -i '/DECLARE_GLOBAL_DATA_PTR/d' ${source} sed -i '/global_data.h/d' ${source} git add ${source} fi fi done [1] https://lpc.events/event/17/contributions/1620/attachments/1228/2520/Linux%20Kernel%20Header%20Optimization.pdf CI: https://github.com/u-boot/u-boot/pull/865 Link: https://lore.kernel.org/r/[email protected]
2026-02-17treewide: Clean up DECLARE_GLOBAL_DATA_PTR usagePeng Fan
Remove DECLARE_GLOBAL_DATA_PTR from files where gd is not used, and drop the unnecessary inclusion of asm/global_data.h. Headers should be included directly by the files that need them, rather than indirectly via global_data.h. Reviewed-by: Patrice Chotard <[email protected]> #STMicroelectronics boards and STM32MP1 ram test driver Tested-by: Anshul Dalal <[email protected]> #TI boards Acked-by: Yao Zi <[email protected]> #TH1520 Signed-off-by: Peng Fan <[email protected]>
2026-02-17cmd: mem: Include vsprintf.hPeng Fan
hextoul is used in this file, so include header file vsprintf.h. Signed-off-by: Peng Fan <[email protected]>
2026-02-09Merge tag 'net-20260209' of https://source.denx.de/u-boot/custodians/u-boot-netTom Rini
Pull request net-20260209. net: - airoha: mdio support for the switch - phy: mscc: allow RGMII with internal delay for the VSC8541 - dwc_eth_qos: Update tail pointer handling net-legacy: - Stop conflating return value with file size in net_loop() net-lwip: - wget: rework the '#' printing - tftp: add support of tsize option to client
2026-02-07Merge patch series "Add command for getting ramsize in scripts"Tom Rini
Frank Wunderlich <[email protected]> says: Add command for getting ramsize in scripts Link: https://lore.kernel.org/r/[email protected]
2026-02-07test: cmd: add test for memsizeFrank Wunderlich
Add a test for memsize command in same way as meminfo. Signed-off-by: Frank Wunderlich <[email protected]>
2026-02-07cmd: mem: add command for getting ram size for use in scriptsFrank Wunderlich
Add a command for getting detected ram size with possibility to assign it to an environment variable. example usage: BPI-R4> memsize 4096 MiB BPI-R4> memsize memsz BPI-R4> printenv memsz memsz=4096 BPI-R4> board with 8GB ram: BPI-R4> memsize 8192 MiB BPI-R4> memsize memsz BPI-R4> printenv memsz memsz=8192 BPI-R4> Signed-off-by: Frank Wunderlich <[email protected]>
2026-02-06net: Stop conflating return value with file size in net_loop()Yuya Hamamachi
The net_loop() currently conflates return value with file size at the end of successful transfer, in NETLOOP_SUCCESS state. The return type of net_loop() is int, which makes this practice workable for file sizes below 2 GiB, but anything above that will lead to overflow and bogus negative return value from net_loop(). The return file size is only used by a few sites in the code base, which can be easily fixed. Change the net_loop() return value to always be only a return code, in case of error the returned value is the error code, in case of successful transfer the value is 0 or 1 instead of 0 or net_boot_file_size . This surely always fits into a signed integer. By keeping the return code 0 or 1 in case of successful transfer, no conditionals which depended on the old behavior are broken, but all the sites had to be inspected and updated accordingly. Fix the few sites which depend on the file size by making them directly use the net_boot_file_size variable value. This variable is accessible to all of those sites already, because they all include net-common.h . Signed-off-by: Yuya Hamamachi <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-06cmd: zip: Add missing unmap_sysmem() for buffers in the unzip commandMarek Vasut
Unmap the sysmem that got mapped by this command. Use symbolic return value for the command while updating the return value handling. Signed-off-by: Marek Vasut <[email protected]>
2026-02-06cmd: zip: Use map_sysmem() with buffers in the zip commandMarek Vasut
The current implementation casts an address to a pointer. Make it more sandbox-friendly by using map_sysmem(). Use symbolic return value for the command while updating the return value handling. Signed-off-by: Marek Vasut <[email protected]>
2026-02-06cmd: unzip: Use map_sysmem() with buffers in the gzwrite commandMarek Vasut
The current implementation casts an address to a pointer. Make it more sandbox-friendly by using map_sysmem(). Convert 'addr' variable to unsigned long, as that is the return type of hextoul() and address parameter type of map_sysmem(). Signed-off-by: Marek Vasut <[email protected]>
2026-02-06gunzip: Fix len parameter in function signatureMarek Vasut
The only call site of gzwrite() is cmd/unzip.c do_gzwrite(), where the 'len' parameter passed to gzwrite(..., len, ...) function is of type unsigned long. This usage is correct, the 'len' parameter is an unsigned integer, and the gzwrite() function currently supports input data 'len' of up to 4 GiB - 1 . The function signature of gzwrite() function in both include/gzip.h and lib/gunzip.c does however list 'len' as signed integer, which is not correct, and ultimatelly limits the implementation to only 2 GiB input data 'len' . Fix this, update gzwrite() function parameter 'len' data type to size_t consistently in include/gzip.h and lib/gunzip.c . Furthermore, update gzwrite() function 'szwritebuf' parameter in lib/gunzip.c from 'unsigned long' to 'size_t' to be synchronized with include/gzip.h . Rewrite the other parameters to size_t and off_t and propagate the change too. Since the gzwrite() function currently surely only supports input data size of 4 GiB - 1, add input data size check. The limitation comes from the current use of zlib z_stream .avail_in parameter, to which the gzwrite() function sets the entire input data size, and which is of unsigned int type, which cannot accept any number beyond 4 GiB - 1. This limitation will be removed in future commit. Reported-by: Yuya Hamamachi <[email protected]> Signed-off-by: Marek Vasut <[email protected]>
2026-02-04Merge patch series "part: fix partition searching"Tom Rini
Mikhail Kshevetskiy <[email protected]> says: It was noted that a GPT partition with the maximum available partition number (ex: /dev/mmcblk128) can't be read/write from U-Boot using read/write commands. Futher investigation shows that the problem is deeper. This set of patches fixes uncovered issues. Link: https://lore.kernel.org/r/[email protected]
2026-02-04cmd: gpt: fix partition search boundariesMikhail Kshevetskiy
GPT disk partition with max available number (ex: /dev/mmcblk128) can't be used from U-Boot. Here is an example: => mmc part Partition Map for mmc device 0 -- Partition Type: EFI Part Start LBA End LBA Name Attributes Type GUID Partition GUID 1 0x00001000 0x000013ff "env1" attrs: 0x0000000000000000 type: 0fc63daf-8483-4772-8e79-3d69d8477de4 guid: 5452574f-2211-4433-5566-778899aabb02 2 0x00001400 0x000017ff "env2" attrs: 0x0000000000000000 type: 0fc63daf-8483-4772-8e79-3d69d8477de4 guid: 5452574f-2211-4433-5566-778899aabb03 ................. 8 0x00158000 0x0034bfff "apps" attrs: 0x0000000000000000 type: 0fc63daf-8483-4772-8e79-3d69d8477de4 guid: 5452574f-2211-4433-5566-778899aabb09 128 0x00000420 0x00000fff "fip" attrs: 0x0000000000000000 type: c12a7328-f81f-11d2-ba4b-00a0c93ec93b guid: 5452574f-2211-4433-5566-778899aabb01 => gpt setenv mmc 0 fip error! => gpt setenv mmc 0 apps success! The error is caused by invalid boundary checks. This patch fixes an issue. Fixes: 12fc1f3bb223 ("cmd: gpt: add eMMC and GPT support") Signed-off-by: Mikhail Kshevetskiy <[email protected]> Acked-by: Quentin Schulz <[email protected]>
2026-02-04net: lwip: Use ipaddr helpersJonas Karlman
The ip_addr_t of lwIP has support for both IPv6 and IPv4 addresses. Some lwIP commans is directly accessing the internal addr field of the ip_addr_t instead of using ipaddr helper functions. Change to use ipaddr helper functions where appropriate to remove direct access of the internal addr field. Also change a few instances from ip4 to the version less ipaddr helpers. There is no intended functional change, besides the change from using ip4 addr helper to using version less ipaddr helper. Signed-off-by: Jonas Karlman <[email protected]> Reviewed-by: Jerome Forissier <[email protected]>
2026-02-03Merge tag 'mmc-for-2026.04-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-mmc - Add DMA support for mediatek mmc - Cleanup mmc cmd - Fix typos in mmc [trini: Fix "quoted string split across lines" checkpatch warning] Signed-off-by: Tom Rini <[email protected]>
2026-02-03cmd: mmc: Return symbolic value when part switching fails in mmc devYao Zi
Return symbolic value CMD_RET_FAILURE instead of literal "1" when failing to switch the partition to improve readability. Signed-off-by: Yao Zi <[email protected]> Tested-by: Anshul Dalal <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-03cmd: mmc: Check whether arguments are valid numbers in dev subcommandYao Zi
Currently when any of speed_mode, part, or dev fails to be parse as a number, no error is reported. In this case __init_mmc_device() is called with weird arguments, probably zeroes if there's no digit prefixing the argument, which is especially confusing when the invocation occasionally succeeds. Let's check whether arguments are valid numbers without trailing characters. This is quite helpful for speed_mode: it requires an index instead of a mode name, one may easily pass in a string, which will be parsed as zero (MMC_LEGACY), without carefully reading the documentation, then finds the MMC device is under an unexpected mode. Signed-off-by: Yao Zi <[email protected]> Tested-by: Anshul Dalal <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-02-03cmd: mmc: Simplify dev subcommand handlingYao Zi
Replace the big if-else block in do_mmc_dev() with switch-case and use fallthrough to remove the duplicated code for parsing dev and part. Signed-off-by: Yao Zi <[email protected]> Tested-by: Anshul Dalal <[email protected]> Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2026-01-27bootm: Remove BOOTM_NETBSD from defaultsTom Rini
After talking with someone from the NetBSD project, platforms that do not boot with a device tree (and so would be using our BOOTM_NETBSD support) a very few in number. So we can remove this option from being enabled by default and save a little space in most places with platforms that need it still being able to re-enable it, if needed. Ideally, in a few years we can instead just remove the code entirely. Link: https://lore.kernel.org/r/[email protected]/ Signed-off-by: Tom Rini <[email protected]>
2026-01-21cmd/Kconfig: fix typo in CMD_PINMUX descriptionDavid Lechner
Fix typo with correct spelling of "purposes". Also change "debug" to "debugging" while touching this since that is the more common phrasing. Reviewed-by: Quentin Schulz <[email protected]> Signed-off-by: David Lechner <[email protected]>
2026-01-19Update links to doc/develop/falcon.rstJ. Neuschäfer
README.falcon was converted to ReST/HTML in 2023. Signed-off-by: J. Neuschäfer <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]> Reviewed-by: Heinrich Schuchardt <[email protected]>
2026-01-19cmd/meminfo: display of addresses above 4 GiBHeinrich Schuchardt
Addresses above 4 GiB don't fit into 8 digits. Use 13 digits which encompass up to 15 TiB. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Simon Glass <[email protected]>