- Mar 18, 2025
-
-
Caleb Connolly authored
Since removing reset_cpu() in mach-snapdragon, all Qualcomm platforms now depend on CONFIG_SYSRESET and will fail to build without it. Move the dependency from qcom_defconfig to kconfig so that we use SYSRESET for all platforms. Fixes: 61a1a1b8 ("mach-snapdragon: use PSCI sysreset driver") Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
- Mar 17, 2025
-
-
Caleb Connolly authored
Stub the RPMh clock controller on SC7280 Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
A copy-paste error is starting to get out of hand... Fix all these so they don't look like clock drivers in menuconfig. Link: https://lore.kernel.org/r/20250317132519.46080-1-caleb.connolly@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
Add support for a bunch of new clocks, including PCIe, GENI (for all peripherals used on the RB3 Gen 2), and some missing USB clocks. Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250314-sc7280-more-clocks-v1-3-ead54487c38e@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
Dump a few PCIe and USB clocks Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250314-sc7280-more-clocks-v1-2-ead54487c38e@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
If we try to enable a gate clock that doesn't exist, we used to just fail silently. This may make sense for early bringup of some core peripherals that we know are already enabled, but it only makes debugging missing clocks more difficult. Bubble up errors now that qcom_gate_clk_en() can return an error code to catch any still-missing clocks and make it easier to find missing ones as more complicated peripherals are enabled. Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Link: https://lore.kernel.org/r/20250314-sc7280-more-clocks-v1-1-ead54487c38e@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
MSM8916 devices use this instead of PSCI. Signed-off-by:
Sam Day <me@samcday.com> Link: https://lore.kernel.org/r/20250125-msm8916-sysreset-v1-3-62073932ff0e@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Depending on ARCH_IPQ40XX is too restrictive, as this architecture is explicitly armv7. This driver is also used on msm8916 devices, which have cortex-a53 armv8 cores. Signed-off-by:
Sam Day <me@samcday.com> Link: https://lore.kernel.org/r/20250125-msm8916-sysreset-v1-2-62073932ff0e@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Drop the `board_reset` function from mach-snapdragon board code, and instead use the standard PSCI sysreset driver. Signed-off-by:
Sam Day <me@samcday.com> Link: https://lore.kernel.org/r/20250125-msm8916-sysreset-v1-1-62073932ff0e@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
Acked-by:
Christopher Obbard <christopher.obbard@linaro.org> Link: https://lore.kernel.org/r/20250122-pinctrl-sc7280-v1-2-8bdba72e6366@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Caleb Connolly authored
Introduce a pinctrl driver for SC7280/QCM6490, this is used by the RB3 Gen 2, FairPhone 5 and other devices. Tested-by:
Christopher Obbard <christopher.obbard@linaro.org> Link: https://lore.kernel.org/r/20250122-pinctrl-sc7280-v1-1-8bdba72e6366@linaro.org Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Most MSM8916 devices shipped without PSCI support. The history is quite nuanced (a good overview can be found in [1]), but the end result is that the upstream DTs for this SoC pretend that PSCI exists, and it's expected that the bootloader handles the case where it doesn't. This is codified by the de-facto bootloader for MSM8916 devices, lk2nd [2]. So we handle it here by deleting the /psci node if we detect the absence of PSCI. We need to do this early to ensure sysreset works correctly, since the PSCI firmware driver is PRE_RELOC and binds the PSCI sysreset driver. Additionally, show_psci_version is updated to check that PSCI exists. Currently this banner outputs "PSCI: 65535.65535" on devices without PSCI support, which isn't very useful :) [1]: https://github.com/msm8916-mainline/linux/issues/388 [2]: https://github.com/msm8916-mainline/lk2nd/blob/8183ea2/lk2nd/smp/spin-table/spin-table.c#L237 Signed-off-by:
Sam Day <me@samcday.com> Link: https://lore.kernel.org/r/20250127-qcom-handle-absent-psci-v1-1-e762f2db938c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
qcom_parse_memory is updated to return a -ENODATA error if the passed FDT does not contain a /memory node, or that node is incomplete (size=0) board_fdt_blob_setup first tries to call qcom_parse_memory with the internal FDT (if present+valid). If that fails, it tries again with the external FDT (again, if present+valid). When booting with an internal FDT from upstream, it's likely that this change results in a slight performance hit, since virtually all upstream qcom DTs lack a fully specified memory node. The impact should be negligible, though. qcom_parse_memory was given a detailed docstring adapted from Caleb's original commit message that introduced the function. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Sam Day <me@samcday.com> Link: https://lore.kernel.org/r/20250123-qcom-parse-memory-updates-v3-1-c5332b81ea9f@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
This is how the kernel does it. APQ8016E TRM also states that this clock can be turned off when no random numbers are needed. Signed-off-by:
Sam Day <me@samcday.com> Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Link: https://lore.kernel.org/r/20250212-msm-rng-fixes-v2-5-645cf8d3fd3c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Properly warn when an unknown clock is enabled. Signed-off-by:
Sam Day <me@samcday.com> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Link: https://lore.kernel.org/r/20250212-msm-rng-fixes-v2-4-645cf8d3fd3c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
msm_rng_enable is supposed to skip writing to LFSR_CFG + CONFIG registers in the PRNG_ block if PRNG_CONFIG_HW_ENABLE is already set. The logic to test for this was inverted. Without this fix, the driver was causing SError aborts on my MSM8916 device. Stephan Gerhold suggested this was probably because TZ has marked this as a protected register, since it would also be using it for RNG. Fixes: 033ec636 ("rng: Add Qualcomm MSM PRNG driver") Suggested-by:
Stephan Gerhold <stephan.gerhold@linaro.org> Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by:
Sam Day <me@samcday.com> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Link: https://lore.kernel.org/r/20250212-msm-rng-fixes-v2-3-645cf8d3fd3c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
This clock needs to be enabled for the msm-rng driver to work on MSM8916, otherwise accessing the PRNG register block causes a data abort. Reviewed-by:
Neil Armstrong <neil.armstrong@linaro.org> Signed-off-by:
Sam Day <me@samcday.com> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Link: https://lore.kernel.org/r/20250212-msm-rng-fixes-v2-2-645cf8d3fd3c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
This reads a little bit nicer (IMO), and is consistent with the kernel. Signed-off-by:
Sam Day <me@samcday.com> Reviewed-by:
Heinrich Schuchardt <xypron.glpk@gmx.de> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Link: https://lore.kernel.org/r/20250212-msm-rng-fixes-v2-1-645cf8d3fd3c@samcday.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Introduce a defconfig for the Qualcomm IPQ9574 SoC based RDPs. Presently supports eMMC. Per the flash memory layout, U-Boot size cannot exceed 756KB. With this defconfig, u-boot.mbn size is ~480KB. Reviewed-by:
Sumit Garg <sumit.garg@linaro.org> Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-8-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
U-Boot has to reconfigure the clocks that were set in the boot loaders. However, in IPQ9574, the clocks have to be reset before they can be reconfigured. Hence add code to do the relevant resets. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-7-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Add pinctrl driver for the TLMM block found in the ipq9574 SoC. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-6-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Presently, get_function_mux returns an unsigned int and cannot differentiate between failure and correct function value. Change its return type to int and check for failure in the caller. Additionally, updated drivers/pinctrl/qcom/pinctrl-*.c to accommodate the above return type change. Only compile test done. Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-5-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Add initial set of clocks and resets for enabling U-Boot on ipq9574 based RDP platforms. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-4-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Add initial support for the IPQ9574 MMC based RDP platforms. Define memory layout statically. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-3-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
Introducing basic support for Qualcomm IPQxxx based RDPs. Document the build and flashing steps. Reviewed-by:
Caleb Connolly <caleb.connolly@linaro.org> Signed-off-by:
Varadarajan Narayanan <quic_varada@quicinc.com> Link: https://lore.kernel.org/r/20250226064505.1178054-2-quic_varada@quicinc.com Signed-off-by:
Caleb Connolly <caleb.connolly@linaro.org>
-
- Mar 15, 2025
-
-
-
Simon Glass authored
This fails on samus_tpl as there is no 'net' command. => net list Unknown command 'net' - try 'help' ! Fix it by adding a condition for the test. Add a blank line to keep pylint happy. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
It is sometimes tricky to figure out what modules test.py is loading when it starts up. The result can be a silent failure with no clue as to what when wrong. Add a section which lists the modules loaded as well as those not found. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Now that we have a shorter name, we don't need this sort of thing. Just use ubman instead. Signed-off-by:
Simon Glass <sjg@chromium.org>
-
Simon Glass authored
Now that we have a shorter name, we don't need this sort of thing. Drop it. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> # test_android
-
Simon Glass authored
We know this is U-Boot so the prefix serves no purpose other than to make things longer and harder to read. Drop it and rename the files. Signed-off-by:
Simon Glass <sjg@chromium.org> Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com> # test_android / test_dfu
-
Simon Glass authored
This fixture name is quite long and results in lots of verbose code. We know this is U-Boot so the 'u_boot_' part is not necessary. But it is also a bit of a misnomer, since it provides access to all the information available to tests. It is not just the console. It would be too confusing to use con as it would be confused with config and it is probably too short. So shorten it to 'ubman'. Signed-off-by:
Simon Glass <sjg@chromium.org> Link: https://lore.kernel.org/u-boot/CAFLszTgPa4aT_J9h9pqeTtLCVn4x2JvLWRcWRD8NaN3uoSAtyA@mail.gmail.com/
-
- Mar 14, 2025
-
-
Tom Rini authored
Siddharth Vadapalli <s-vadapalli@ti.com> says: This series adds config fragment for enabling USB MSC boot and USB Storage devices which are applicable to AM62, AM62A and AM62P SoCs. Series has been tested on AM62A7-SK, AM625-SK and AM62P5-SK for USB MSC boot where the bootloaders were generated in the following manner: 1. AM62A7-SK (AM62A SoC): - tiboot3.bin => am62ax_evm_r5_defconfig + am62x_r5_usbmsc.config - tispl.bin and u-boot.img => am62ax_evm_a53_defconfig + am62x_a53_usbmsc.config 2. AM625-SK (AM62 SoC): - tiboot3.bin => am62x_evm_r5_defconfig + am62x_r5_usbmsc.config - tispl.bin and u-boot.img => am62x_evm_a53_defconfig + am62x_a53_usbmsc.config 3. AM62P5-SK (AM62P SoC): - tiboot3.bin => am62px_evm_r5_defconfig + am62x_r5_usbmsc.config - tispl.bin and u-boot.img => am62px_evm_a53_defconfig + am62x_a53_usbmsc.config The images were flashed to a USB Flash Drive and were connected to the Type-C interface on each of the boards which supports USB MSC Boot. Logs corresponding to this series: 1. AM62A7-SK: https://gist.github.com/Siddharth-Vadapalli-at-TI/3518cba3edc57bf52d06a7df932928ca 2. AM625-SK: https://gist.github.com/Siddharth-Vadapalli-at-TI/098568be7b482436d27fdc8adae15ce4 3. AM62P5-SK: https://gist.github.com/Siddharth-Vadapalli-at-TI/50e29073033668e7d904a785bfbc9c0b The following device-tree changes were made across all of the boards: https://gist.github.com/Siddharth-Vadapalli-at-TI/2afb913838c1d4005bc059910c09ab4b Link: https://lore.kernel.org/r/20250301080049.965438-1-s-vadapalli@ti.com
-
Siddharth Vadapalli authored
Introduce the config fragment for enabling USB MSC boot. USB MSC boot involves fetching the next stage of the bootloader from a USB Mass Storage device such as a USB Flash Drive with the USB controller on the SoC acting as the USB Host. Signed-off-by:
Siddharth Vadapalli <s-vadapalli@ti.com>
-
Siddharth Vadapalli authored
Introduce the config fragment for enabling USB MSC boot. USB MSC boot involves fetching the next stage of the bootloader from a USB Mass Storage device such as a USB Flash Drive with the USB controller on the SoC acting as the USB Host. Signed-off-by:
Siddharth Vadapalli <s-vadapalli@ti.com>
-
Dragan Simic authored
The configuration options CONFIG_VIDCONSOLE_AS_LCD and CONFIG_VIDCONSOLE_AS_ NAME have been marked as obsolete and scheduled for deletion in late 2020. That's already long overdue and the last remaining consumers of these options have already migrated to using "vidconsole" in their "stdout" and "stderr" environment variables, so let's delete these two configuration options. Signed-off-by:
Dragan Simic <dsimic@manjaro.org> Acked-by: Soeren Moch <smoch@web.de> # tbs2910
-
Jim Liu authored
Correct the timer node of dts Signed-off-by:
Jim Liu <JJLIU0@nuvoton.com>
-
https://source.denx.de/u-boot/custodians/u-boot-tpmTom Rini authored
Up to now we configure the entire memory space for U-Boot as RWX. For modern architectures and security requirements, it's better to map the memory properly. This pull request adds basics support for mapping the U-Boot binary with proper (RO, RW, RW^X) memory permissions on aarch64 right after we relocate U-Boot in the top of DRAM. It's worrth noting that the linker script annotations are only added for the aarch64 architecture. We can, in the future, try to unify the linker -- at least for the architectures that have enough in common and expand this
-
Ilias Apalodimas authored
Now that we have everything in place switch the page permissions for .rodata, .text and .data just after we relocate everything in top of the RAM. Unfortunately we can't enable this by default, since we have examples of U-Boot crashing due to invalid access. This usually happens because code defines const variables that it later writes. So hide it behind a Kconfig option until we sort it out. It's worth noting that EFI runtime services are not covered by this patch on purpose. Since the OS can call SetVirtualAddressMap which can relocate runtime services, we need to set them to RX initially but remap them as RWX right before ExitBootServices. Link: https://lore.kernel.org/u-boot/20250129-rockchip-pinctrl-const-v1-0-450ccdadfa7e@cherry.de/ Link: https://lore.kernel.org/u-boot/20250130133646.2177194-1-andre.przywara@arm.com/ Reviewed-by:
Jerome Forissier <jerome.forissier@linaro.org> Reviewed-by:
Richard Henderson <richard.henderson@linaro.org> Signed-off-by:
Ilias Apalodimas <ilias.apalodimas@linaro.org>
-
Ilias Apalodimas authored
For armv8 we are adding proper page permissions for the relocated U-Boot binary. Add a weak function that can be used across architectures to change the page permissions Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on AML-S905X-CC Signed-off-by:
Ilias Apalodimas <ilias.apalodimas@linaro.org>
-