summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-08-18lwip: icmp: allow reporting ICMP destination unreachableJerome Forissier
Allow reporting ICMP destination unreachable messages via a user-defined callback. Signed-off-by: Jerome Forissier <[email protected]>
2025-08-18net: phy: broadcom: add support for BCM54612EJim Liu
It's Broadcom PHY simply described as single-port RGMII 10/100/1000BASE-T PHY. Signed-off-by: Jim Liu <[email protected]>
2025-08-18net: designware: Fix get_timer value overflowJim Liu
get_timer returns a ulong value representing system time in ms. On a 64-bit system, this ulong value is 64 bits long. However, the driver stores it in a 32-bit unsigned integer, which overflows after 49 days up time, causing the driver to get an incorrect time. Replace the unsigned int variable with a ulong type to properly store the value returned by get_timer. Signed-off-by: Stanley Chu <[email protected]> Signed-off-by: Jim Liu <[email protected]>
2025-08-18phy: marvell: Cannot test unsigned field to be negativeAndrew Goodbody
In comphy_cp110_init_serdes_map in comphy_cp110.c there are two fields in cfg, comphy_lanes_count and comphy_mux_bitcount, which are fetched from the FDT blob with fdtdec_get_int which returns an int. These two fields are then tested for being negative. However the fields are declared as unsigned so those tests must always fail. Change the declaration of those fields to be int instead of u32 and the code will work as expected. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2025-08-18phy: marvell: Fix off by 1 limit checksAndrew Goodbody
The limit checks in get_speed_string and get_type_string are off by 1 as they do not account for the maximum index into an array that can be used is 1 less than the number of elements in that array. Adjust the limit checks to allow for this. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2025-08-18net: phy: vitesse: Fix incorrect test for timeoutAndrew Goodbody
In vsc8514_config there is a while loop for detecting a config failure using a timeout counter with a post-decrement. In the case of a timeout this will result in the loop exiting with timeout == -1 so use that as the test below the loop to detect that the timeout occurred. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]> Reviewed-by: Quentin Schulz <[email protected]>
2025-08-18net: octeontx: Free allocated memory on errorAndrew Goodbody
In octeontx_smi_probe if an error is detected then memory that was allocated is not freed. Small refactor of the code to use a common return and free memory. Also return -ENOMEM for an allocation failure. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-18net: octeontx: Remove unneeded testAndrew Goodbody
In nicvf_cq_handler there is a test for !cqe_count which will return if true so it is guaranteed that cqe_count will true after that point. This makes the later test for cqe_count redundant so it can be removed. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-18net: octeontx: Remove unneeded codeAndrew Goodbody
In nicvf_rcv_pkt_handler there is no need to initialise err as it is assigned to immediately after. Also the test for !pkt will return if true meaning that pkt is guaranteed to be true after that code block and so no need to test for it and the redundant test can be removed. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-17Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-shTom Rini
Fixes for newer revision of Retronix R-Car V4H Sparrow Hawk and fixes for boards which enable POSITION_INDEPENDENT and also set non-zero CONFIG_TEXT_BASE.
2025-08-17configs: Remove redundant CONFIG_TEXT_BASE assignments for Renesas defconfigsLad Prabhakar
The Renesas board defconfigs explicitly set CONFIG_TEXT_BASE=0x50000000, however U-Boot's POSITION_INDEPENDENT=y build default already places text at 0x0. These hardcoded overrides are therefore unnecessary and will be pruned automatically in upcoming resyncs. Remove the CONFIG_TEXT_BASE lines from the following defconfigs: - hihope_rzg2_defconfig - r8a77970_eagle_defconfig - r8a77970_v3msk_defconfig - r8a77990_ebisu_defconfig - r8a77995_draak_defconfig - r8a779a0_falcon_defconfig - renesas_rzg2l_smarc_defconfig - rz2_beacon_defconfig - silinux_ek874_defconfig Signed-off-by: Lad Prabhakar <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Marek Vasut <[email protected]>
2025-08-17arm64: dts: renesas: r8a779g3: Describe generic SPI NOR support on Retronix ↵Marek Vasut
R-Car V4H Sparrow Hawk board Retronix R-Car V4H Sparrow Hawk EVTA1 is populated with Spansion S25FS512S, EVTB1 is populated with Winbond W77Q51NW. Describe the SPI NOR using generic "jedec,spi-nor" compatible, because both flashes can be auto-detected based on their built-in IDs. Signed-off-by: Marek Vasut <[email protected]>
2025-08-17arm64: dts: renesas: r8a779g3: Set VDDQ18_25_AVB voltage on Retronix R-Car ↵Marek Vasut
V4H Sparrow Hawk EVTB1 The Retronix R-Car V4H Sparrow Hawk EVTB1 uses 1V8 IO voltage supply for VDDQ18_25_AVB power rail. Update the AVB0 pinmux to reflect the change in IO voltage. Since the VDDQ18_25_AVB power rail is shared, all four AVB0, AVB1, AVB2, TSN0 PFC/GPIO POC[7..4] registers have to be configured the same way. Correct the voltage for EVTA1 boards accordingly by patching the U-Boot control DT in SPL. Signed-off-by: Marek Vasut <[email protected]>
2025-08-17arm64: dts: renesas: r8a779g3: Invert microSD voltage selector on Retronix ↵Marek Vasut
R-Car V4H Sparrow Hawk EVTB1 Invert the polarity of microSD voltage selector on Retronix R-Car V4H Sparrow Hawk board. The voltage selector was not populated on prototype EVTA1 boards, and is implemented slightly different on EVTB1 boards. As the EVTA1 boards are from a limited run and generally not available, update the DT to make it compatible with EVTB1 microSD voltage selector. Signed-off-by: Marek Vasut <[email protected]>
2025-08-17arm64: renesas: r8a779g3: Enable xHCI USB on Retronix R-Car V4H Sparrow Hawk ↵Marek Vasut
board Enable support for PCIe based xHCI USB 3.0 driver and USB mass storage support on Retronix R-Car V4H Sparrow Hawk board . Signed-off-by: Marek Vasut <[email protected]>
2025-08-17arm64: renesas: r8a779g3: Disable dual-rank DRAM on Retronix R-Car V4H ES2 ↵Marek Vasut
Sparrow Hawk The R-Car V4H SoC before rev.3.0 can not support dual-rank LPDDR5 DRAM. This affects 16 GiB dual-rank DRAM configuration of Retronix R-Car V4H Sparrow Hawk board. Fall back to 8 GiB single-rank DRAM configuration on such systems instead. Signed-off-by: Marek Vasut <[email protected]>
2025-08-17arm64: renesas: r8a779g3: Disable MicroSD UHS modes on Retronix R-Car V4H ↵Marek Vasut
Sparrow Hawk EVTA1 The Retronix R-Car V4H Sparrow Hawk old revision EVTA1 does not have MicroSD voltage switch populated on the board, therefore the board supports only 3V3 and non-UHS MicroSD cards. While the EVTB1 board is populated with Winbond W77Q51NW SPI NOR, the EVTA1 board is populated with Spansion S25FS512S SPI NOR, those those SPI NOR IDs to discern the two board revisions and apply the MicroSD related DT changes. The MicroSD related DT changes modify the regulator node, which is now a regulator-fixed and supplies only 3V3, and remove sd-uhs-sdr50 and sd-uhs-sdr104 properties from the MicroSD slot controller node. The MicroSD related DT changes cannot be applied as DTO, because the base DT contains nodes which have to be removed in case of EVTA1, but have to be present in case of EVTB1 and newer revisions of the board. Because the EVTA1 is an old revision of the board that is not generally available, it is better to special case it and keep the base DT compatible with EVTB1 and newer revisions of the board which are actually available. Signed-off-by: Marek Vasut <[email protected]>
2025-08-17pci: pcie-rcar-gen4: Fix PHY initializationMarek Vasut
R-Car V4H Reference Manual R19UH0186EJ0130 Rev.1.30 Apr. 21, 2025 page 4581 Figure 104.3b Initial Setting of PCIEC(example) middle of the figure indicates that fourth write into register 0x148 [2:0] is 0x3 or GENMASK(1, 0). The current code writes GENMASK(11, 0) which is a typo. Fix the typo. Fixes: be3dd0dc2fd9 ("pci: pcie-rcar-gen4: Add Renesas R-Car Gen4 DW PCIe controller driver") Signed-off-by: Marek Vasut <[email protected]>
2025-08-15pinctrl: stmfx: Remove duplicated codeAndrew Goodbody
In stmfx_read_reg there is duplicated code to detect ret < 0 and return ret if so. Remove one version of it. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15pinctrl: single: Remove unreachable codeAndrew Goodbody
In single_read there is a switch block with a default label. All cases in the switch block, including the default, return directly. So any code following the switch block is unreachable. Remove the unreachable code. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15ram: k3-ddrss: Use logical and not bitwiseAndrew Goodbody
The test for the interrupt LPDDR4_INTR_BIST_DONE is using a bitwise and but the test is simple logic so use the more appropriate logical and. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15phy: ti: j721e-wiz: Set error code before gotoAndrew Goodbody
In j721e_wiz_probe the test for too many lanes jumps to the error exit path without assigning an error code which could lead to calling code silently ignoring the failure. Set the error code. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15phy: keystone-usb: Do not negate return codeAndrew Goodbody
In keystone_usb_init the return code from psc_enable_module should be returned as is rather than being negated. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15timer: Tighten some timer driver dependenciesTom Rini
A few timer drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-15timer: fttmr010_timer: Remove unused driverTom Rini
This driver is unused. Remove it. Signed-off-by: Tom Rini <[email protected]>
2025-08-15net: ti: icssg: Remove impossible testAndrew Goodbody
port_id is an unsigned variable so cannot be negative. Remove the test checking for port_id being less than 0. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15net: ti: am65-cpsw-nuss: Initialise retAndrew Goodbody
In am65_cpsw_phy_init it is not certain that ret will be assigned to before it reaches the 'return ret' statement. Initialise ret to ensure that ret is valid. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-15net: phy: cortina: Ensure memory allocated is freedAndrew Goodbody
In cs4340_upload_firmware a buffer is allocated with malloc but this is never freed. The pointer to this buffer, addr, is not even kept unchanged. But in some cases addr is not a buffer allocated by malloc. Introduce the use of another pointer to keep track of the buffer and to know if it needs to be freed. This issue was found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-14ram: Tighten some ram driver dependenciesTom Rini
A few ram drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14serial: linflexuart: Remove unused driverTom Rini
This driver is unused. Remove it. Signed-off-by: Tom Rini <[email protected]>
2025-08-14serial: Tighten some serial driver dependenciesTom Rini
A few serial drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14rtc: pl031: Correct function type of pl031_write_regTom Rini
When calling writel we do not have a return value to check or pass along. This function should therefore be void and not return what writel gives us. Signed-off-by: Tom Rini <[email protected]>
2025-08-14rtc: mc146818: Fix building on more architecturesTom Rini
This driver makes calls to in8/out8(). On PowerPC these are separate and real calls but elsewhere they are able to simply be wrappers to inb/outb. Rework this logic to be able to build this driver on more platforms. Signed-off-by: Tom Rini <[email protected]>
2025-08-14rtc: Tighten some rtc driver dependenciesTom Rini
The Marvell RTC rtc driver cannot build without access to some platform specific header files. Express that requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14sysreset: Tighten some sysreset driver dependenciesTom Rini
The MPC83xx sysreset driver cannot build without access to some architecture specific header files. Express that requirements in Kconfig as well. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-14sound: Tighten some sound driver dependenciesTom Rini
A few sound drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-14soc: Tighten some soc driver dependenciesTom Rini
The Qualcomm Snapdragon "SoC" driver cannot build without access to some ARM64 specific functionality. Express that requirements in Kconfig as well. Reviewed-by: Casey Connolly <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-14remoteproc: Tighten some remoteproc driver dependenciesTom Rini
The TI IPU remoteproc driver cannot build without access to some platform specific header files. Express that requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14reset: Tighten some reset driver dependenciesTom Rini
A few reset drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14pwm: pwm-aspeed: Add missing <linux/log2.h> to pwm-aspeed.cTom Rini
This driver references the logarithmic macros while relying on an indirection inclusion of <linux/log2.h>. Add the missing include directly. Signed-off-by: Tom Rini <[email protected]>
2025-08-14pwm: Tighten some pwm driver dependenciesTom Rini
A few pwm drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14pinctrl: Tighten some pinctrl driver dependenciesTom Rini
A few pinctrl drivers cannot build without access to some platform specific header files. Express those requirements in Kconfig as well. Signed-off-by: Tom Rini <[email protected]>
2025-08-14sm: Rework the Kconfig logic hereTom Rini
The symbol "SM" is a library symbol and should not be prompted for. It should be selected by the drivers that use it. In this case we need to add a SANDBOX_SM symbol for the sandbox driver. The meson SM driver cannot build on other platforms, so add the appropriate dependency. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-14sandbox: Add an additional dummy sync macroTom Rini
There are some drivers which call a "dmb" for a type of sync. Add that as well to sandbox. Signed-off-by: Tom Rini <[email protected]>
2025-08-14net: e1000: Free temporary buffer on exitAndrew Goodbody
In do_e1000_spi_checksum a temporary buffer is allocated but never freed. Add code to free on exit. Also refactor the code to make the exit code common. This issue found by Smatch. Signed-off-by: Andrew Goodbody <[email protected]>
2025-08-14bootstd: rauc: Change global method to check any partitionMartin Schwan
The bootmeth rauc should scan all partitions, in particular whole devices, and not be a global method. There may exist multiple RAUC systems on different devices and they should all be detected. This also fixes a bug, where both a global bootflow and one using an actual, complete device would be detected at the same time, when scanning for valid bootflows. Signed-off-by: Martin Schwan <[email protected]> Tested-by: Wadim Egorov <[email protected]>
2025-08-14env: Correct Kconfig type for ENV_MMC_SW_PARTITIONTom Rini
As part of renaming environment related Kconfig options, ENV_MMC_SW_PARTITION was inadvertently changed from a string to a bool. Correct this. Fixes: ffc4914703a2 ("env: Rename ENV_MMC_PARTITION to ENV_MMC_SW_PARTITION") Reviewed-by: Marek Vasut <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-08-14Merge branch 'master' of https://source.denx.de/u-boot/custodians/u-boot-riscvTom Rini
CI: https://source.denx.de/u-boot/custodians/u-boot-riscv/-/pipelines/27379 - Board: mbv: Prepare MBV for CI - Board: MPFS Icicle Kit cleanup - Board: Add Andes Voyager board support - RISCV: Update SYS_BOOTM_LEN to commonly used value - starfive: fix return code of `mac write_eeprom` - arch/riscv/lib: update memmove and memcpy for big-endian
2025-08-14arch/riscv/lib: update memmove and memcpy for big-endianBen Dooks
Change the shift patterns for the unaligned memory move and copy code to deal with big-endian by definign macros to change the shfit left and right to go the opposite way. Signed-off-by: Ben Dooks <[email protected]> Reviewed-by: Leo Yu-Chi Liang <[email protected]>
2025-08-14starfive: fix return code of `mac write_eeprom`Heinrich Schuchardt
When writing the EEPROM fails, the command usage help text is displayed after the error message. We should only display the error message instead. If writing the EEPROM fails, return CMD_RET_FAILURE (1) instead of CMD_RET_USAGE (-1). Fixes: aea1bd95b61e ("eeprom: starfive: Enable ID EEPROM configuration") Signed-off-by: Heinrich Schuchardt <[email protected]> Acked-by: E Shattow <[email protected]>