summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2025-01-22qcom_defconfig: enable X1E80100 clock driverNeil Armstrong
Enable the X1E80100 clock driver in the Qualcomm defconfig. Signed-off-by: Neil Armstrong <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22clk: qcom: Add X1E80100 clock driverNeil Armstrong
Add Clock driver for the GCC block found in the X1E80100 SoC. Signed-off-by: Neil Armstrong <[email protected]> Reviewed-by: Caleb Connolly <[email protected]> Tested-by: Caleb Connolly <[email protected]> # Yoga Slim 7x Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22configs: add qcs9100_defconfigVaradarajan Narayanan
Introduce a defconfig for the Ride R3 and other QCS9100 boards with a dedicated uefi partition. These can replace EDK2 entirely with U-Boot. Signed-off-by: Varadarajan Narayanan <[email protected]> Reviewed-by: Sumit Garg <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22qcom_defconfig: enable SA8775P clock driverVaradarajan Narayanan
Enable the SA8775P clock driver in the Qualcomm defconfig. Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Varadarajan Narayanan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22phy: qcom: Add SA8775 to QMP UFS PHY driverVaradarajan Narayanan
Copy PHY tables over from Linux to support SA8775. https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/tag/?h=v6.13-rc6 Reviewed-by: Caleb Connolly <[email protected]> Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Varadarajan Narayanan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22clk/qcom: add initial clock driver for qcs9100Varadarajan Narayanan
Add initial set of clocks and resets for enabling U-Boot on QCS9100 based Ride platforms. Reviewed-by: Neil Armstrong <[email protected]> Signed-off-by: Varadarajan Narayanan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22dts: qcs9100-ride-r3-u-boot: add override dtsiVaradarajan Narayanan
Add initial support for the QCS9100 (derived from SA8775p) Ride platforms. Define memory layout statically. Signed-off-by: Varadarajan Narayanan <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22arm64: dts: qcom: qcs9100: Add support for the QCS9100 Ride and Ride Rev3 boardsTengfei Fan
Add device tree support for the QCS9100 Ride and Ride Rev3 boards. The QCS9100 is a variant of the SA8775p, and they are fully compatible with each other. The QCS9100 Ride/Ride Rev3 board is essentially the same as the SA8775p Ride/Ride Rev3 board, with the QCS9100 SoC mounted instead of the SA8775p. Signed-off-by: Tengfei Fan <[email protected]> Reviewed-by: Konrad Dybcio <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Bjorn Andersson <[email protected]> [ upstream commit: 7dcc1dfaa3d1cd3aafed2beb7086ed34fdb22303 ] (cherry picked from commit db6231faa8ef46e5ff5d5ece0c930a07c6358562) Reviewed-by: Sumit Garg <[email protected]> Link: https://lore.kernel.org/r/[email protected] Signed-off-by: Caleb Connolly <[email protected]>
2025-01-22cyclic: Fix typo in struct cyclic_info descriptionPatrice Chotard
Replace delay_ns by delay_us which is the field name used into struct cyclic_info. Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2025-01-22cyclic: Fix rollover every 72 min on 32 bits platformsPatrice Chotard
On 32 bits platforms, timer_get_us() returns an unsigned long which is a 32 bits. timer_get_us() wraps around every 72 minutes (2 ^ 32 / 1000000 =~ 4295 sec =~ 72 min). So the test "if time_after_eq64(now, cyclic->next_call)" is no more true when cyclic->next_call becomes above 32 bits max value (4294967295). At this point after 72 min, no more cyclic function are executed included watchdog one. Instead of using timer_get_us(), use get_timer_us() which returns a uint64_t, this allows a rollover every 584942 years. Signed-off-by: Patrice Chotard <[email protected]> Reviewed-by: Stefan Roese <[email protected]>
2025-01-21Merge patch series "MediaTek MT7629 OF_UPSTREAM migration (v2)"Tom Rini
Weijie Gao <[email protected]> says: This patch series migrates MediaTek MT7629 to OF_UPSTREAM Changes in v2: * Remove mt7629-rfb.dtb from arch/arm/dts/Makefile * Add wdt-reboot node to make reset command work Link: https://lore.kernel.org/r/[email protected]
2025-01-21Merge patch series "Broadcom bcmbca dts updates"Tom Rini
david regan <[email protected]> says: Updates for Broadcom bcmbca devices, make use of OF_UPSTREAM which uses Linux dts, update bcmbca dts to current nand node naming convention, enable basic nand functionality for bcmbca devices. Link: https://lore.kernel.org/r/[email protected]
2025-01-21sbp1: Add support for IBM SBP1 boardPatrick Rudolph
Add defconfig & devicetree for IBM SBP1 board BMC based on AST2600 SoC. Signed-off-by: Patrick Rudolph <[email protected]> Signed-off-by: Naresh Solanki <[email protected]>
2025-01-21board: mediatek: mt7629: Migrate to OF_UPSTREAMSam Shih
Move differences in DT files between upstream Linux DT and U-Boot DT to mt7629-rfb-u-boot.dtsi. Remove old copies of mt7629-related clock bindings, .dts, and .dtsi files. Update defconfig to switch the whole mt7629 SoC to use OF_UPSTREAM. Signed-off-by: Sam Shih <[email protected]> Signed-off-by: Weijie Gao <[email protected]>
2025-01-21clk: mediatek: mt7629: fix gate offset of peri clock treeSam Shih
The clock definitions in mt7629-clk.h indicate that CLK_PERIBUS_SEL is the first element in the pericfg clock tree and also serves as a clock mux, unlike other clocks belonging to the clock gate in pericfg. This make the clock consumer get a wrong clock gate during request a clock from <&pericfg>. Since CLK_PERIBUS_SEL clock is not required in U-Boot, add a clock gate offset for the pericfg clock tree to resolve this problem. Signed-off-by: Sam Shih <[email protected]> Signed-off-by: Weijie Gao <[email protected]>
2025-01-21arm: dts: Enable basic nand functionality for bcmbca devicesdavid regan
Enable rudimentary nand read/write capability. Changes in v2: - New patch in series added enabling of nand functionality Signed-off-by: david regan <[email protected]> Reviewed-by: William Zhang <[email protected]> Reviewed-by: Anand Gore <[email protected]>
2025-01-21arm: dts: Update nand node for bcmbca board dtsdavid regan
Update bcmbca dts to current nand node naming convention. Changes in v2: - Removed addition of nand-on-flash-bbt parameter Signed-off-by: david regan <[email protected]> Reviewed-by: William Zhang <[email protected]> Reviewed-by: Anand Gore <[email protected]>
2025-01-21arm: dts: Use upstream dts for additional bcmbca devicesdavid regan
Make use of OF_UPSTREAM which uses Linux dts. Changes in v2: - Removed enabling of nand functionality Signed-off-by: david degan <[email protected]> Reviewed-by: William Zhang <[email protected]> Reviewed-by: Anand Gore <[email protected]>
2025-01-21configs: am62x_evm_*: Set DFU buffer size to 256kJonathan Humphreys
OSPI flash writing was broken on am62x SKs as the OSPI flash device has a 256k sector size but was set to 20k. This breaks OSPI flash writes because the current implementation of the SF DFU backend requires that the DFU data buffer size be the same as the sector erase size, and the USB DFU config fragment (for both A53 and R5) reduced the size of the DFU data buffer, presumably so that it can fit into SPL's much smaller heap. Change the SYS_DFU_DATA_BUF_SIZE to the erase sector size, which still fits within the post-relocation heap size in SPL. Fixes: dfc2dff5a844 ("configs: am62x_evm_*: Enable USB and DFU support") Signed-off-by: Jonathan Humphreys <[email protected]> Reviewed-by: Roger Quadros <[email protected]> Reviewed-by: Mattijs Korpershoek <[email protected]>
2025-01-21acpi: don't fill FADT, MADT if CONFIG_QFW_ACPI=yHeinrich Schuchardt
When using the ACPI tables supplied by QEMU, we don't need to build the FADT and MADT tables in U-Boot. This patch avoids a build failure make qemu-riscv64_smode_defconfig acpi.config riscv64-linux-gnu-ld.bfd: lib/acpi/acpi_table.o: in function `acpi_write_fadt': lib/acpi/acpi_table.c:265:(.text.acpi_write_fadt+0x15c): undefined reference to `acpi_fill_fadt' riscv64-linux-gnu-ld.bfd: lib/acpi/acpi_table.o: in function `acpi_write_madt': lib/acpi/acpi_table.c:294:(.text.acpi_write_madt+0x52): undefined reference to `acpi_fill_madt' Fixes: f5f7962091e4 ("acpi: x86: Write FADT in common code") Fixes: 4a3fc0f525da ("acpi: x86: Move MADT to common code") Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Patrick Rudolph <[email protected]>
2025-01-20Merge patch series "Rework the BLK symbol usage in Kconfig"Tom Rini
Tom Rini <[email protected]> says: One problem we have today is how the BLK symbol is set and used in Kconfig files. Part of the challenge is that we use it as a gating symbol for "we have a block device" and also for "enable block device library code". What this series does is move to always use "select BLK" by block drivers (a few were and a few others had it the inverse) and then "depends on BLK" for functionality that needs a block device present. The end result of this series is that a number of platforms which had disabled EFI_LOADER now don't ask for it (they have no block device) and espresso7420 has a regression about MMC support fixed. With v2 of this I've picked up the review tags from v1 and also reworded the body of the commit in the first patch. Link: https://lore.kernel.org/r/[email protected]
2025-01-20block: Remove "select BLK" from non-block driversTom Rini
Now that block drivers are all selecting the BLK symbol, there's no need for other options to be select'ing BLK so that other required functionality can be enabled. Remove these places. Reviewed-by: Peter Robinson <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20mtd: Correct dependency of BLKTom Rini
In the case of MTD_BLOCK and UBI_BLOCK they should be select'ing BLK as they provide block device functionality and not depending on some other block device already being enabled too (as is the typical case). Reviewed-by: Quentin Schulz <[email protected]> Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20blk: Make block subsystems select BLKTom Rini
The BLK symbol has a few meanings, one of which is that it controls the driver model portion of a "block device". Rather than having this hidden symbol be "default y if ..." it should be select'd by the various block subsystems. Symbols such as PVBLOCK which already select'd BLK are unchanged". Reviewed-by: Peter Robinson <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20efi_loader: Depend on BLKTom Rini
In reworking the BLK usage in Kconfig, I found there's a few issues with EFI_LOADER=y and BLK=n. In general, we can easily say that lib/efi_loader/efi_file.c also should only be built with CONFIG_BLK. That however leaves the bootmgr code, eficonfig code and then parts of efi_device_path.c, efi_boottime.c and efi_setup.c which functionally depend on BLK. While these calls can be if'd out, I'm unsure if the result is usable. So rather than leave that buildable and imply that it is, I'm leaving that combination non-buildable and commenting that EFI_LOADER depends on BLK in the Kconfig currently. Reviewed-by: Heinrich Schuchardt <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20drivers/mmc/Kconfig: Make DM_MMC a hidden symbolTom Rini
At this point in time, DM is always enabled. So if MMC is enabled, it should select DM_MMC. No drivers need to depend on DM_MMC being enabled now, so remove that from dependency lists. This now means that a number of platforms which select'd DM_MMC need to select MMC instead. This also fixes a migration problem with espresso7420 in that MMC is built again with the platform. Reviewed-by: Peter Robinson <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20drivers/mmc/Kconfig: Remove extraneous BLK dependenciesTom Rini
At this point in time, we know that with the MMC symbol enabled we will always also have the BLK symbol enabled, so we do not need to list that as a dependency for MMC drivers. Reviewed-by: Jaehoon Chung <[email protected]> Reviewed-by: Quentin Schulz <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2025-01-20Merge tag 'u-boot-imx-master-20250120' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/24263 - Add i.MX95 EMDIO support - Guard binman nodes with CONFIG_OPTEE on imx8m - Enable CAAM in phycore-imx8mp SPL. - Fix Fix NULL dereference in imx_pinctrl_probe().
2025-01-20arch: arm: mach-k3: Delete tifs node in DT fixupUdit Kumar
Delete tifs DT node as part of fixup. TISCI API reported msmc_size, does not include 64KB reserved size for tifs aka MSMC comms memory, see documentation[0]. As part of fixup, original code uses TISCI API reported msmc_size as size for SRAM DT node. tifs node is similar to l3-cache, which should hold address above msmc_size, and should be deleted before passing control to OS. [0] https://software-dl.ti.com/tisci/esd/latest/2_tisci_msgs/general/core.html?highlight=msmc#tisci-msg-query-msmc Reviewed-by: Neha Malcom Francis <[email protected]> Signed-off-by: Udit Kumar <[email protected]>
2025-01-20board: ti: j722s: j722s.env: Set remoteproc firmware namesBeleswar Padhi
Include k3_rproc.env to access rproc boot commands and specify rproc firmware names for adding remoteproc support in J722S SoCs. Signed-off-by: Beleswar Padhi <[email protected]> Reviewed-by: Bryan Brattlof <[email protected]>
2025-01-20arch: arm: mach-k3: j784s4_init: Set CTRL_MMR for AUDIO_REFCLK1 clk_selJayesh Choudhary
The default value for the mux to select the parent clock, AUDIO_REFCLK1_CTRL_CLK_SEL is '11111' (31) but the mux input for 31 is marked as 'Reserved' so the ti-sci-clk call for get-parent fails. Mark it to a valid value, '11100' (28) for MAIN_PLL4_HSDIV2_CLKOUT to get rid of the linux failures during boot-time like: "[ 1.573193] ti-sci-clk 44083000.system-controller:clock-controller: get-parent failed for dev=157, clk=34, ret=-19" Signed-off-by: Jayesh Choudhary <[email protected]>
2025-01-20fs: eliminate YAFFS2 implementationHeinrich Schuchardt
Upstream development stopped 2012. Linux eliminated YAFFS2 in 2010. Signed-off-by: Heinrich Schuchardt <[email protected]> Reviewed-by: Marek Vasut <[email protected]> Reviewed-by: Tom Rini <[email protected]>
2025-01-20phycore-imx8mp: Enable CAAM in splLeonard Anderweit
Enable CAAM in spl. Signed-off-by: Leonard Anderweit <[email protected]>
2025-01-20pinctrl: imx: Fix NULL dereference in imx_pinctrl_probe()Jesse Taube
When converting to ofnode `ofnode_read_u32` was accedentally used to replace `fdtdec_get_int` instead of `ofnode_read_u32_default`. Use `ofnode_read_u32_default` to fix this. Fixes: 59382d2 ("pinctrl: imx: Convert to use livetree API for fdt access") Signed-off-by: Jesse Taube <[email protected]>
2025-01-20imx8m: Guard binman nodes with CONFIG_OPTEEFabio Estevam
Guard binman nodes with CONFIG_OPTEE to fix the following error when building without optee support: BINMAN .binman_stamp Image 'image' has faked external blobs and is non-functional: tee.bin Image 'image' is missing optional external blobs but is still functional: tee-os /binman/section/fit/images/tee/tee-os (tee.bin): See the documentation for your board. You may need to build Open Portable Trusted Execution Environment (OP-TEE) and build with TEE=/path/to/tee.bin Some images are invalid make: *** [Makefile:1135: .binman_stamp] Error 103 While at it, only pass tee to the loadables lines when CONFIG_OPTEE is defined. Reported-by: Tim Harvey <[email protected]> Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Tom Rini <[email protected]> Reviewed-by: Peng Fan <[email protected]> Tested-by: Yannic Moog <[email protected]>
2025-01-20net: fsl_enetc: Update enetc driver to support i.MX95Alice Guo
i.MX95 uses enetc version 4.1 controller. Update the enetc for i.MX95. Add ARM-specific cache handling and i.MX95 specific register layout handling. Signed-off-by: Alice Guo <[email protected]> Signed-off-by: Marek Vasut <[email protected]> # Clean up Signed-off-by: Ye Li <[email protected]> Reviewed-by: Tim Harvey <[email protected]>
2025-01-20net: fsl_enetc: add i.MX95 EMDIO supportAlice Guo
The verdor ID and device ID of i.MX95 EMDIO are different from LS1028A EMDIO, so add new vendor ID and device ID to pci_device_id table to support i.MX95 EMDIO. Signed-off-by: Alice Guo <[email protected]> Signed-off-by: Marek Vasut <[email protected]> # Clean up Signed-off-by: Ye Li <[email protected]>
2025-01-20net: fsl_enetc: Add initial netc-blk-ctrl driver supportMarek Vasut
The netc-blk-ctrl driver is used to configure Integrated Endpoint Register Block (IERB) and Privileged Register Block (PRB) of NETC. For i.MX platforms, it is also used to configure the NETCMIX block. The IERB contains registers that are used for pre-boot initialization, debug, and non-customer configuration. The PRB controls global reset and global error handling for NETC. The NETCMIX block is mainly used to set MII protocol and PCS protocol of the links, it also contains settings for some other functions. Note the IERB configuration registers can only be written after being unlocked by PRB, otherwise, all write operations are inhibited. A warm reset is performed when the IERB is unlocked, and it results in an FLR to all NETC devices. Therefore, all NETC device drivers must be probed or initialized after the warm reset is finished. Ported from Linux 6.13-rc as of commit fe5ba6bf91b3 ("net: enetc: add initial netc-blk-ctrl driver support") Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Pass udevice pointer to accessorsMarek Vasut
Pass struct udevice * into the register accessors, so the accessors can reach driver data, which contain device specific register offsets. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Introduce driver dataMarek Vasut
Introduce driver data for each PCI device. The driver data carry offsets of registers which differ between different SoCs. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Split register accessorsMarek Vasut
Split register accessors to the port base/station interface/port/mac registers as those are at different offsets on different SoCs. This is a preparatory patch which will allow addition of adjusted offsets for new SoCs easily. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Inline register accessorsMarek Vasut
Move register accessors from header files and turn them into proper inline functions, so typechecking can be done on them. Drop no longer enetc_port_regs() and unused enetc_read() and enetc_bdr_read(). Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Introduce enetc_dev_id()Marek Vasut
Introduce mapping function enetc_dev_id(), which converts PCIe BDF of the ENETC into linear incrementing index usable e.g. as interface index. This replaces the current ad-hoc calculation used in the code with a dedicated function. No functional change. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Rename the driver and related structuresMarek Vasut
Rename the current driver structure and matching ops and PCI IDs and add _ls suffix to indicate this content is LS specific. This is done in preparation for addition of i.MX95 ENETCv4 which will require slightly different structure content. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Pass udevice pointer into enetc_enable_si_port()Marek Vasut
Pass udevice pointer into enetc_enable_si_port() so tests like enetc_is_ls1028a() an be used in the function. No functional change. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Fold DT MAC address update into enetc_set_ierb_primary_mac()Marek Vasut
The entire content of the loop can be folded into enetc_set_ierb_primary_mac(), do it. This changes the behavior slightly such that the DT is only updated in case of a LS1028A, which is the only SoC with ethernet MAC path in DT matching "/soc/pcie@1f0000000/ethernet@%x,%x" anyway, so this slight change should have no impact. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Remove ifdef around enetc_set_ierb_primary_mac()Marek Vasut
Use enetc_is_ls1028() instead of ifdef around enetc_set_ierb_primary_mac() and clean up the function. No functional change intended. Signed-off-by: Marek Vasut <[email protected]>
2025-01-20net: fsl_enetc: Introduce enetc_is_ls1028a()Marek Vasut
Introduce accurate test for LS1028A compatibility based both on IS_ENABLED(CONFIG_ARCH_LS1028A) and PCI vendor ID. This is done in preparation for adding ENETCv4 support, which has a different PCI vendor ID. Signed-off-by: Marek Vasut <[email protected]>
2025-01-18Merge patch series "add the support of sha256_hmac and sha256_hkdf"Tom Rini
Philippe Reynes <[email protected]> says: This serie adds the support of sha256_hmac and sha256_hkdf. A first version was sent several months ago just before the integration of mbedtls. This new version is based on mbedtls. The first patch of this serie add the support of hkdf using mbedtls. Link: https://lore.kernel.org/r/[email protected]
2025-01-18configs: sandbox: enable mbedtlsPhilippe Reynes
Enable mbedtls to have at least one config with mbedtls enabled. Signed-off-by: Philippe Reynes <[email protected]>