summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-08-06mtd: spi-nor-ids: Add support for Winbond W77Q51NWMarek Vasut
Add IDs for Winbond W77Q51NW, 512M-bit Secure Serial Flash Memory with Post-Quantum Cryptography, Dual/Quad SPI, QPI and DTR . The flash part is similar to W25Q512NWM . Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org> Reviewed-by: Tudor Ambarus <tudor.ambarus@linaro.org>
2025-08-06i2c: rcar_iic: Do not use unitialised variableAndrew Goodbody
In rcar_iic_xfer if nmsgs == 0 the ret will not be assigned to. As ret will always be 0 if the for loop is entered, may as well just return 0. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Heiko Schocher <hs@denx.de> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2025-08-06clk: renesas: Do not test unsigned variable to be less than 0Andrew Goodbody
In rcar_clk_set_rate64_div_table the unsigned variable 'value' is used to receive the return value from rcar_clk_get_table_val which returns an int and then attempts to test for being less than 0, which can never be true. Instead declare value as an int so the code can behave as expected. Also remove initial values from 'value' and 'div' as they are not needed. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2025-08-06Merge tag 'i2c-updates-for-2025-10-rc2' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-i2c i2c updates for v2025.10-rc2 bugfixes: - rcar_iic: do not use unitialised variable from Andrew - fix coverity issue in cmd/i2c.c from Heiko new driver: late, but hopefully okay for rc2, as already picked up when merge window was open, but there was a problem in common code, which is now fixed - new i3c driver support from Dinesh
2025-08-06configs: agilex5_defconfig: Enable i3c configs for agilex5Dinesh Maniyam
Enable configs for i3c in agilex5. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06configs: sandbox_defconfig: Enable configs for sandbox i3cDinesh Maniyam
Enable configs for sandbox i3c. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06test: cmd: Add simple test for i3cDinesh Maniyam
Add simple test to check i3c controller defined in sandbox test DT. Basically, this test case will check validity of the i3c controller by probing it and perform basic commands of cmd/i3c.c Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06cmd: Add i3c command support.Dinesh Maniyam
Add i3c command file to support select, get i3c device target list, read and write operation. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06i3c: master: dw-i3c-master: Fix OD_TIMING for spike filterDinesh Maniyam
Fix the I3C device with spike filter unable to detect issue by setting tHIGH_INIT to 200ns for first broadcast address. This is according to MIPI SPEC 1.1.1 for first broadcast address which is already part of linux upstreamed patch. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: master: Enable probe i3c without slave deviceDinesh Maniyam
Picked linux i3c driver upstraming patch to fix the issue to probe for i3c controller without slave device attached. With this fix, the ret check will be on command error and will success without slave device attached. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: Add i3c sandbox simple test.Dinesh Maniyam
Add s simple test for the I3C uclass in sandbox. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: Enabled Kconfig and Makefile for DWI3CDinesh Maniyam
Enable the Kconfig and Makefile for the MIPI DWI3C driver. hs: fixed typo on drivers/i3c/master/Kconfig Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: Enabled Kconfig and Makefile for i3c supportDinesh Maniyam
Add new i3c driver to U-Boot drivers. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: Add i3c uclass driver.Dinesh Maniyam
Enable i3c general uclass driver. This uclass driver will have genaral read and write api to call the specific i3c driver. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: Add driver for MIPI DWI3CDinesh Maniyam
Enable driver for Synopsis MIPI DWI3C for the family device agilex5. This driver is migrated from linux version 6.6.37 LTS Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06drivers: i3c: Add new i3c uclass idDinesh Maniyam
Add i3c general uclass id. Signed-off-by: Dinesh Maniyam <dinesh.maniyam@altera.com>
2025-08-06cmd: i2c: fix coverity issueHeiko Schocher
coverity scan reported issue: ** CID 583415: Integer handling issues (INTEGER_OVERFLOW) /cmd/i2c.c: 369 in do_i2c_write() change the length variable into type int. Signed-off-by: Heiko Schocher <hs@denx.de>
2025-08-06i2c: rcar_iic: Do not use unitialised variableAndrew Goodbody
In rcar_iic_xfer if nmsgs == 0 the ret will not be assigned to. As ret will always be 0 if the for loop is entered, may as well just return 0. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Heiko Schocher <hs@denx.de>
2025-08-04Makefile: Remove expansion of undefined variablePhilip Molloy
The U-Boot environment was previously stored in the boot loader stream using ldr, but it has been replaced by the default environment built into the U-Boot executable or an environment on external storage Fixes: ea3310e8aafa ("Blackfin: Remove") Signed-off-by: Philip Molloy <philip.molloy@analog.com> Reviewed-by: Greg Malysa <malysagreg@gmail.com>
2025-08-04cmd: bdinfo: Fix showing correct IP address based on current deviceMichal Simek
Use the same logic as is used for MAC address where bdi shows mac address for current device where index (idx) is used to point to correct IP address which is read and show. Signed-off-by: Michal Simek <michal.simek@amd.com>
2025-08-04Kconfig: typo restictHeinrich Schuchardt
%s/restict/restrict/ SPL and TPL have separate options (plural). Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt@canonical.com> Reviewed-by: Quentin Schulz <quentin.schulz@cherry.de>
2025-08-04test: py: test_fit_mkimage_validate: Only run either test on sandboxTom Rini
Both of these tests are only valid for sandbox (and require dtc) so both tests need the pytest annotations. Fixes: 93d09d3bd8ea ("test: fit: add test case for invalid default configuration reference") Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-04Merge branch 'u-boot-nand-03082025' of ↵Tom Rini
https://source.denx.de/u-boot/custodians/u-boot-nand-flash CI: https://source.denx.de/u-boot/custodians/u-boot-nand-flash/-/pipelines/27258 This series address issues found by Andrew Goodbody and mostly drop driver that are not used by any board
2025-08-04Merge branch 'staging' of https://source.denx.de/u-boot/custodians/u-boot-tegraTom Rini
- Pegatron Chagall, Samsung Galaxy R (GT-I9103) and Captivate Glide (SGH-i927) support
2025-08-03mtd: nand: raw: Remove unused octeontx_nand driverTom Rini
As no platforms use this driver anymore let's go ahead and remove it. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-03mtd: nand: raw: Remove unused mxic_nand driverTom Rini
As no platforms use this driver anymore let's go ahead and remove it. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2025-08-03mtd: nand: raw: Remove unused lpc32xx_nand_slc driverTom Rini
As no platforms use this driver anymore let's go ahead and remove it. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-03mtd: rawnand: mxs_nand: Ensure err is set for error pathAndrew Goodbody
In mxs_nand_init_ctrl there are a couple of error paths that do not set err which could lead to the errors being silently ignored despite the function not completing. Rather than just using if to detect these errors use err to collect the error return value from the called functions. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2025-08-03mtd: rawnand: denali: Remove always true testAndrew Goodbody
In denali_wait_for_irq the code will either return from inside the while loop or exit with time_left being 0. The following test for time_left being 0 is guranteed to be true so remove the test and the following unreachable code. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2025-08-03mtd: rawnand: cortina_nand: Fix -ENOMEM detectionAndrew Goodbody
In init_nand_dma there was code to detect failure to allocate memory but it had two problems. Firstly the 2nd clause when info->tx_desc was NULL attempted to free info->tx_desc when it should be freeing info->rx_desc. Secondly there was no detection of both allocations failing, arguably the more likely scenario. Refactor the code to simplify it and just fail as soon as either allocation fails. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Michael Trimarchi <michael@amarulasolutions.com>
2025-08-03mtd: nand: sunxi: Free allocated memory on errorsAndrew Goodbody
Add kfree calls on error paths for memory that was allocated. This will prevent memory leaks. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-By: Michael Trimarchi <michael@amarulasolutions.com>
2025-08-03mtd: rawnand: stm32_fmc2: Ensure to return error codeAndrew Goodbody
In stm32_fmc2_nfc_probe there are 3 error returns that do not set the error code before returning which could lead to the error being silently ignored. Just return -EINVAL in each case. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Patrice Chotard <patrice.chotard@foss.st.com>
2025-08-03mtd: nand: pxa3xx: Free memory on errorAndrew Goodbody
In pxa3xx_nand_probe_dt if the function detects an error after allocating memory that memory is not freed before exit. Add the appropriate free. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: MIchael Trimarchi <michael@amarulasolutions.com>
2025-08-01Merge patch series "env: mtd: add the missing put_mtd_device()"Tom Rini
This series from Shiji Yang <yangshiji66@outlook.com> fixes some issues with the recently added "environment in mtd (generic)" functionality. Link: https://lore.kernel.org/r/OSBPR01MB1670E56647F1F8B4BA66A931BC59A@OSBPR01MB1670.jpnprd01.prod.outlook.com
2025-08-01env: mtd: initialize saved_buf pointerShiji Yang
When sect_size is greater than the CONFIG_ENV_SIZE, this wild pointer will cause CPU halt or system crash. Fixes: 03fb08d4aef8 ("env: Introduce support for MTD") Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-08-01env: mtd: add the missing put_mtd_device()Shiji Yang
The mtd device is got in setup_mtd_device(), we must put the mtd device before exiting the function to update the mtd use count. This patch fixes the following env error: > Removing MTD device #2 (u-boot-env) with use count 1 > Error when deleting partition "u-boot-env" (-16) Fixes: 03fb08d4aef8 ("env: Introduce support for MTD") Signed-off-by: Shiji Yang <yangshiji66@outlook.com>
2025-08-01Makefile: add dependency from lib to arch/$(ARCH)/libMikko Rapeli
Top level Makefile starts separate "make" processes for each each subdirectory. lib/efi_loader apps now depend on lib.a from arch/$(ARCH)/lib if CONFIG_USE_PRIVATE_LIBGCC is enabled which creates a race conditions since dependency from lib/efi_loader EFI apps to arch/$(ARCH)/lib/lib.a is not explicit: arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/testapp_efi.so] Error 1 This error was seen on yocto/OE-core CI builds after u-boot 2025.07 update: https://lists.openembedded.org/g/openembedded-core/message/220004 https://autobuilder.yoctoproject.org/valkyrie/api/v2/logs/2914600/raw_inline | rm -f lib/efi_loader/built-in.o; arm-poky-linux-gnueabi-ar cDPrsT lib/efi_loader/built-in.o lib/efi_loader/efi_bootmgr.o lib/efi_loader/efi_bootbin.o lib/efi_loader /efi_boottime.o lib/efi_loader/efi_helper.o lib/efi_loader/efi_console.o lib/efi_loader/efi_device_path.o lib/efi_loader/efi_device_path_to_text.o lib/efi_loader/efi_device_ path_utilities.o lib/efi_loader/efi_dt_fixup.o lib/efi_loader/efi_fdt.o lib/efi_loader/efi_file.o lib/efi_loader/efi_hii.o lib/efi_loader/efi_hii_config.o lib/efi_loader/efi _image_loader.o lib/efi_loader/efi_load_options.o lib/efi_loader/efi_memory.o lib/efi_loader/efi_root_node.o lib/efi_loader/efi_runtime.o lib/efi_loader/efi_setup.o lib/efi_ loader/efi_string.o lib/efi_loader/efi_unicode_collation.o lib/efi_loader/efi_var_common.o lib/efi_loader/efi_var_mem.o lib/efi_loader/efi_variable.o lib/efi_loader/efi_var_ file.o lib/efi_loader/efi_watchdog.o lib/efi_loader/efi_disk.o lib/efi_loader/efi_net.o lib/efi_loader/efi_smbios.o lib/efi_loader/efi_load_initrd.o lib/efi_loader/efi_confo rmance.o | arm-poky-linux-gnueabi-ld.bfd -nostdlib -zexecstack -znocombreloc -znorelro --no-warn-rwx-segments -L /srv/pokybuild/yocto-worker/oe-selftest-armhost/build/build-st- 3119200/tmp/work/beaglebone_yocto-poky-linux-gnueabi/u-boot/2025.07/sources/u-boot-2025.07 -T arch/arm/lib/elf_arm_efi.lds -shared -Bsymbolic -s lib/efi_loader/helloworld.o lib/efi_loader/efi_crt0.o lib/efi_loader/efi_reloc.o lib/efi_loader/efi_freestanding.o arch/arm/lib/lib.a -o lib/efi_loader/helloworld_efi.so | arm-poky-linux-gnueabi-ld.bfd: cannot find arch/arm/lib/lib.a: No such file or directory | make[3]: *** [scripts/Makefile.lib:512: lib/efi_loader/helloworld_efi.so] Error 1 The different "make" processes share common scripts/Makefile.build and scripts/Makefile.libs but since they are separate processes the Makefile rules can't add a dependency from lib/uefi_loader targets to arch/$(ARCH)/lib/lib.a. Or the file level dependency can be added but then "make" produces a too sparse error message which does not mention that one of the dependencies like arch/$(ARCH)/lib/lib.a was not found: make[3]: *** No rule to make target 'lib/efi_loader/helloworld.efi', needed by '__build'. Stop. Fix this dependency problem by building arch/$(ARCH)/lib before lib if CONFIG_USE_PRIVATE_LIBGCC was enabled. To reproduce the race condition more reliably, add a "sleep 10" delay before linker command cmd_link_l_target with 2025.07 or to $(lib-target): target in scripts/Makefile.build with master branch after Kbuild update. Fixes: 43d43241d1c9 ("scripts/Makefile.lib: add PLATFORM_LIBGCC to efi linking") Cc: Adriano Cordova <adrianox@gmail.com> Cc: Fabio Estevam <festevam@gmail.com> Signed-off-by: Mikko Rapeli <mikko.rapeli@linaro.org> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2025-08-01Merge tag 'net-20250801' of https://source.denx.de/u-boot/custodians/u-boot-netTom Rini
Pull request for net-20250801 net: - Support overriding Auto Negotiation timeout with env variable 'phy_aneg_timeout' - Add missing virtqueue_kick() in free_pkt() - Remove bcm281xx ethernet driver - Tighten some network driver dependencies in Kconfig - Add <cpu_func.h> to some platforms - Fix a debug print in ftgmac100.cA - Add parentheses around PSEUDO_HDR_SIZE net-lwip: - Fix build error with CONFIG_LWIP_DEBUG=y - Remove eth_init() from net_init() as it is called later - Simplify net_lwip_eth_start() net-legacy: - wget: Fix comparison of unsigned variable - Incorrect macro used (TCP_0_NOP instead of TCP_1_NOP)
2025-08-01net: phy: Support overriding Auto Negotiation timeout with env variableSiddharth Vadapalli
The Auto Negotiation procedure between two Ethernet PHYs consists of determining the best commonly supported parameters among Speed, Duplex Mode and Flow Control. The time taken for this procedure is not only dependent on the local PHY used, but also on the link-partner PHY. While a timeout can be specified in the form of a "CONFIG" on the basis of the local PHY present on the device, since the timeout also depends on the link-partner PHY, it might be necessary to modify the timeout. To avoid rebuilding the bootloader for a given device, just because it may be connected to various link-partner PHYs, each with a different timeout, introduce an environment variable named "phy_aneg_timeout" and override "CONFIG_PHY_ANEG_TIMEOUT" with "phy_aneg_timeout". Signed-off-by: Siddharth Vadapalli <s-vadapalli@ti.com> Acked-by: Jerome Forissier <jerome.forissier@linaro.org> [jf: add missing #include <env.h>] Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01lwip: provide a sntp_format_time() functionJerome Forissier
Provide a trivial implementation of sntp_format_time() to fix a build error when CONFIG_LWIP_DEBUG=y: lib/lwip/lwip/src/apps/sntp/sntp.c: In function ‘sntp_format_time’: lib/lwip/lwip/src/apps/sntp/sntp.c:283:10: error: implicit declaration of function ‘ctime’ [-Werror=implicit-function-declaration] 283 | return ctime(&ut); | ^~~~~ Signed-off-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01virtio: net: Add missing virtqueue_kick in free_pktChristian Speich
Every virtqueue_add must eventually be followed by virtqueue_kick for to properly notify the peer that new buffers have been put into the queue. This is currently missing for virtio-net and may result in non-working network when the host has depleted the rx buffers and waits for new buffers. Depending on the host it may busy poll on the virtio queue or wait for the kick. Qemu does the latter and may break. Signed-off-by: Christian Speich <c.speich@avm.de>
2025-08-01arm: bcm281xx: Remove ethernet driverTom Rini
As no platforms enable the ethernet driver, remove it. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-01net: Tighten some network driver dependenciesTom Rini
A large number of network drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. This covers the QUICC engine drivers as that is networking driver infrastructure. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-01net: Add <cpu_func.h> to some platformsTom Rini
The common portable header for CPU related functions such as cache flushing and invalidation is <cpu_func.h> so add that to these drivers. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-01drivers/net/ftgmac100.c: Fix a debug printTom Rini
In the debug print in ftgmac100_send we want to say where the packet is in memory and what the length is, so use %p to print that. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-08-01net: lwip: remove eth_init from net_init as it is called laterTim Harvey
The call to eth_init within net_init causes the network interface to start, stop, start again which can cause issues with certain network device drivers. Remove it to make it behave like the legacy network path. Fixes: 5666865decb8 ("net: lwip: fix initialization sequence before a command") Signed-off-by: Tim Harvey <tharvey@gateworks.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01net: lwip: simplify net_lwip_eth_startTim Harvey
For NET_LWIP eth_is_on_demand_init() is always 1 so remove the check and simplify the code. Suggested-by: Jerome Forissier <jerome.forissier@linaro.org> Signed-off-by: Tim Harvey <tharvey@gateworks.com> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01net: wget: Fix comparison of unsigned variableAndrew Goodbody
content_length is an unsigned long and so testing that it is >= 0 will always be true. Instead test that it is != -1 as that is the condition set on error. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01net: Incorrect NOP macro used for testAndrew Goodbody
In tcp_parse_options the uchar p[0] is attempted to test for a match with the 32bit macro TCP_0_NOP which can never be true. Instead test against the 8bit macro TCP_1_NOP. This issue found by Smatch. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>
2025-08-01net: Add parens to macro PSEUDO_HDR_SIZEAndrew Goodbody
Smatch reports a warning about possibly needing parens around the macro PSEUDO_HDR_SIZE. This will not affect the one place the macro is used but add the parens anyway as it is good practice to have them and if the macro is used again in the future it could possibly matter then. Signed-off-by: Andrew Goodbody <andrew.goodbody@linaro.org> Reviewed-by: Jerome Forissier <jerome.forissier@linaro.org>