summaryrefslogtreecommitdiff
path: root/board/freescale
AgeCommit message (Collapse)Author
10 daysMerge tag 'u-boot-imx-master-20250724' 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/27149 - Add support for the NXP imx93 frdm board. - imx93_evk and phycore-imx93 cleanups. - Convert imx6dl-sielaff to OF_UPSTREAM and fix serial download mode boot. - Fix crash in imx power-domain. - Migrate Phytec imx8mm boards to standard boot. - Fix smatch warnings.
10 daystreewide: Remove empty board_init() function from all boardsSam Protsenko
Commit 86acdce2ba88 ("common: add config for board_init() call") introduced CONFIG_BOARD_INIT option. This option can be disabled for the boards where board_init() function is not needed. Remove empty board_init() calls for all boards where it's possible, and disable CONFIG_BOARD_INIT in all related defconfigs. This cleanup was made semi-automatically using these scripts: [1]. No functional change, but the binary size for the modified boards is reduced a bit. [1] https://github.com/joe-skb7/uboot-convert-scripts/tree/master/remove-board-init Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org> Tested-by: Adam Ford <aford173@gmail.com> #imx8mm_beacon Tested-by: Bryan Brattlof <bb@ti.com> Acked-by: Peng Fan <peng.fan@nxp.com> #NXP boards
11 daysimx93_frdm: Add initial board supportFabio Estevam
Add the initial board support for the NXP i.MX93 FRDM board: https://www.nxp.com/design/design-center/development-boards-and-designs/frdm-i-mx-93-development-board:FRDM-IMX93 Based on the NXP U-Boot code. There were attempts to upstream the board devicetree, but it has not been accepted upstream yet: https://lore.kernel.org/linux-arm-kernel/20250526-fpg-nxp-imx93-frdm-v2-2-e5ad0efaec33@pengutronix.de/ Once it reaches upstream, we can switch to OF_UPSTREAM. Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
11 daysimx93_evk: Remove PMIC and USB header filesFabio Estevam
There is no PMIC and USB related C code in this file. Remove these unneeded header files. Signed-off-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
11 daysimx93_evk: Fix the board name in MAINTAINERS titleFabio Estevam
The board name is "i.MX93 EVK", not "MEK". Fix it accordingly. Signed-off-by: Fabio Estevam <festevam@gmail.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2025-07-08Merge patch series "kbuild: Update Makefile.extrawarn to 5.1"Tom Rini
This series from Ilias Apalodimas <ilias.apalodimas@linaro.org> largely finishes the re-sync with the Linux Kernel v5.1 kbuild system. Link: https://lore.kernel.org/r/20250627185723.342553-1-ilias.apalodimas@linaro.org
2025-07-08kbuild: Bump the build system to 5.1Ilias Apalodimas
Our last sync with the kernel was 5.1. Even that was a partial one as some patches from 4.x kernels were already missing making the transition to a modern kbuild infeasible. We are so out of sync now, that tracking the patches and backporting them one by one makes little sense and it's going to take ages. This is an attempt to sync up Makefile[.lib/.kbuild]. Unfortunately due to sheer amount of patches this is not easy to review, but that's what we decided during a community call. One of the biggest changes is get rid of partial linking entirely and build .a archives isntead of .o. We diaviate from the kernel on that. Instead of calling a custom script to create the archive symbol table, we call ar with rcTP (isntead of rcSTP) since we want a resulting archive that's sauble with the linker. The only affected platforms are PPC ones. Unfortunately I don't have any of them around to test, but the objdump of the resulting files -- arch/powerpc/lib/built-in.[oa] looks identical. Signed-off-by: Ilias Apalodimas <ilias.apalodimas@linaro.org>
2025-06-29imx8mq: evk: Add support for capsule updatePeng Fan
Capsule update is EFI based firmware update which is widely used in various OS distributions. This feature is required by ARM System-Ready compliance test. So - Define image array and GUID - Select configs for EFI Capsule update Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-06-29imx93: evk: Add support for capsule updatePeng Fan
Capsule update is EFI based firmware update which is widely used in various OS distributions. This feature is required by ARM System-Ready compliance test. So - Define image array and GUID - Select configs for EFI Capsule update Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-06-29imx8mn: evk: Add support for capsule updatePeng Fan
Capsule update is EFI based firmware update which is widely used in various OS distributions. This feature is required by ARM System-Ready compliance test. So - Define image array and GUID - Select configs for EFI Capsule update Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-06-29imx8mm: evk: Add support for capsule updatePeng Fan
Capsule update is EFI based firmware update which is widely used in various OS distributions. This feature is required by ARM System-Ready compliance test. So - Define image array and GUID - Select configs for EFI Capsule update Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-06-29imx8mp: evk: Add support for capsule updatePeng Fan
Capsule update is EFI based firmware update which is widely used in various OS distributions. This feature is required by ARM System-Ready compliance test. So - Define image array and GUID - Select configs for EFI Capsule update Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-06-20Merge patch series "Consistent Kconfig environment options CONFIG_ENV_ prefix"Tom Rini
Marek Vasut <marek.vasut+renesas@mailbox.org> says: Rename the environment related variables and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Link: https://lore.kernel.org/r/20250609192701.20260-1-marek.vasut+renesas@mailbox.org
2025-06-20env: Rename SYS_MMC_ENV_DEV to ENV_MMC_DEVICE_INDEXMarek Vasut
Rename the variable and add ENV_ prefix, so that all configuration options which are related to environment would have an CONFIG_ENV_ prefix. No functional change. Use ENV_MMC_DEVICE_INDEX to clarify this is the SD/MMC device index, a number, as enumerated by U-Boot. Update the help text accordingly. Signed-off-by: Marek Vasut <marek.vasut+renesas@mailbox.org>
2025-06-14Merge patch series "Hex value prefix case cleanup"Tom Rini
E Shattow <e@freeshell.de> says: Make consistent use of lowercase hexadecimal prefix '0x' throughout U-Boot. There are a few remaining uses of uppercase 'X' to denote hexadecimal prefix or placeholder in documentation and error messages. External devicetree-rebasing dts/upstream and the generated code of xilinx/zynq are ignored for the series. Link: https://lore.kernel.org/r/20250606224558.1117422-1-e@freeshell.de
2025-06-14board: use lowercase hex prefix styleE Shattow
Use consistent lowercase hex prefix style in board/* Does not change auto-generated files in xilinx/zynq/*/ps7_init_gpl.c Signed-off-by: E Shattow <e@freeshell.de>
2025-06-13spl: Rename jump_to_image_no_args()Simon Glass
This function is currently a misnomer at times as we have cases where it passes arguments to the image. In preparation for making that be a more common case rename this function to jump_to_image(...). In order to do this, rename jump_to_image in board_init_r(...) to jumper so that we do not have a conflict. Signed-off-by: Simon Glass <sjg@chromium.org> [trini: Reword the commit message, adding missing cases of jump_to_image_no_args()] Signed-off-by: Tom Rini <trini@konsulko.com>
2025-06-02Merge patch series "Audit include list for include/[a-m]*.h"Tom Rini
Tom Rini <trini@konsulko.com> says: Hey all, Related to my other series I've posted recently on cleaning up some headers, this series here is the result of at least lightly auditing the #includes used in include/[a-m]*.h. This ignores subdirectories, as at least in part I think the top-level includes we've constructed are the most likely places to have some extra transitive include paths. I'm sure there's exceptions and I'll likely audit deeper once this first pass is done. This only gets as far as "include/m*.h" because I didn't want this to get too big. This also sets aside <miiphy.h> and <phy.h>. While miiphy.h does not directly need <phy.h> there are *so* many users and I think I had half of the tree just about not building when I first tried. It might be worth further investigation, but it might just be OK as-is. Link: https://lore.kernel.org/r/20250521230119.2084088-1-trini@konsulko.com
2025-06-02include/ide.h: Cleanup usageTom Rini
At this point in time, <ide.h> provides the IDE_BUS macro and the function prototype for ide_set_reset, which is used with IDE_RESET. The only files which should include this header are the ones that either use that macro or that function. Remove <blk.h> from <ide.h> and remove <ide.h> from places which do not need it. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-05-29Merge patch series "Remove <env.h> from <net.h>"Tom Rini
Tom Rini <trini@konsulko.com> says: Hey all, This is a v3 of Simon's series[1] and depends on the series[2] I posted the other day that removes <env.h> from <command.h>. With this series done, I believe we've tackled all of the current cases of headers which include <env.h> without directly needing it. Much of this series is in fact Simon's v2 with the main differneces being: - Removing <env.h> from <net.h> at the end - Removing env_to_ip() given how little it's used rather than shuffling around where it's declared and un-inline'ing it. For a rarely used helper, this ends up being cleaner I think. Especially looking at some of the users (which called env_get repeatedly). If there's strong opinion here about using the other method[3] we can do that instead. - Setting aside for now how to handle CMD_ELF=y and NO_NET=y because today it's actually fine as we unconditionally build lib/net_utils.c where string_to_ip() is defined. I'm unsure if a further series is warranted here or not. We rely on link-time optimization to keep code readable too. [1]: https://lore.kernel.org/all/20250501010456.3930701-1-sjg@chromium.org [2]: https://lore.kernel.org/all/20250514225002.15361-1-trini@konsulko.com [3]: https://lore.kernel.org/all/20250501010456.3930701-23-sjg@chromium.org Link: https://lore.kernel.org/r/20250515234154.1859366-1-trini@konsulko.com
2025-05-29freescale: Include env.h to permit reading the environmentSimon Glass
This file reads from the environment but does not include the correct header. Update it. Signed-off-by: Simon Glass <sjg@chromium.org>
2025-05-29imx8ulp_evk: Include env.h to permit reading the environmentSimon Glass
This file reads from the environment but does not include the correct header. Update it. Signed-off-by: Simon Glass <sjg@chromium.org>
2025-05-29Merge patch series "Start removing <env.h> from headers when not required"Tom Rini
Tom Rini <trini@konsulko.com> says: Given Simon's series at [1] I started looking in to what brings in <env.h> when not strictly required and in turn has some unintended implicit includes. This series takes care of the places where, commonly, <linux/string.h> or <env.h> itself were required along with a few other less common cases. This sets aside for the moment what to do about net-common.h and env_get_ip() as I'm not entirely sure what's best there. [1]: https://patchwork.ozlabs.org/project/uboot/list/?series=454939&state=* Link: https://lore.kernel.org/r/20250514225002.15361-1-trini@konsulko.com
2025-05-29global: Add <linux/string.h> instead of long indirect include pathTom Rini
In a number of cases we have C files which rely on a chain of indirect include paths to get <linux/string.h> to be included via <command.h>. To facilitate cleaning up <command.h> make this code directly include <linux/string.h>. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-05-21board: freescale: imx8mn_evk: let clock system enable UART clockMichael Trimarchi
Now that the UART driver can enable the required clocks, remove the hard-coded clock enable. Signed-off-by: Michael Trimarchi <michael@amarulasolutions.com> Signed-off-by: Dario Binacchi <dario.binacchi@amarulasolutions.com> Tested-by: Fabio Estevam <festevam@gmail.com>
2025-05-14global: Add <linux/string.h> instead of long indirect include pathTom Rini
In a number of cases we have C files which rely on a chain of indirect include paths to get <linux/string.h> to be included via <command.h>. To facilitate cleaning up <command.h> make this code directly include <linux/string.h>. Signed-off-by: Tom Rini <trini@konsulko.com> --- Cc: Andrew Davis <afd@ti.com> Cc: Bin Meng <bmeng.cn@gmail.com> Cc: Dai Okamura <okamura.dai@socionext.com> Cc: Fabio Estevam <festevam@gmail.com> Cc: Francesco Dolcini <francesco.dolcini@toradex.com> Cc: Ilias Apalodimas <ilias.apalodimas@linaro.org> Cc: Jens Wiklander <jens.wiklander@linaro.org> Cc: Kunihiko Hayashi <hayashi.kunihiko@socionext.com> Cc: Mingkai Hu <mingkai.hu@nxp.com> Cc: Priyanka Jain <priyanka.jain@nxp.com> Cc: Shengzhou Liu <Shengzhou.Liu@nxp.com> Cc: Simon Glass <sjg@chromium.org> Cc: Stefano Babic <sbabic@nabladev.com> Cc: Svyatoslav Ryhel <clamor95@gmail.com> Cc: Thierry Reding <treding@nvidia.com> Cc: William Zhang <william.zhang@broadcom.com>
2025-05-03imx95_evk: add i.MX95 19x19 EVK board basic supportYe Li
This patch adds i.MX95 19x19 EVK board basic support. Messaging unit for EdgeLock Secure Enclave, messaging unit for System Manager, uSDHC for SD Card, gpio, lpuart are supported now. Signed-off-by: Ye Li <ye.li@nxp.com> Signed-off-by: Alice Guo <alice.guo@nxp.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2025-04-25imx: mx51evk: drop Stefano Babic from MAINTAINERSStefano Babic
I haven't anymore the MX51EVK board. Signed-off-by: Stefano Babic <sbabic@nabladev.com> CC: Fabio Estevam <festevam@gmail.com>
2025-04-11Kbuild: Always use $(PHASE_)Tom Rini
It is confusing to have both "$(PHASE_)" and "$(XPL_)" be used in our Makefiles as part of the macros to determine when to do something in our Makefiles based on what phase of the build we are in. For consistency, bring this down to a single macro and use "$(PHASE_)" only. Signed-off-by: Tom Rini <trini@konsulko.com>
2025-03-12imx93_evk: Fix wrong VDDQ voltage setting for LPDDR4xYe Li
The default PCA9451 BUCK2 volt is 0.6 V for LPDDR4x VDDQ. The codes are actually used for reworking to LPDDR4 which needs VDDQ at 1.1 V. So remove it to avoid LPDDR4x issue. Signed-off-by: Ye Li <ye.li@nxp.com> Acked-by: Peng Fan <peng.fan@nxp.com>
2025-03-03board: freescale: fix LS1021a buildBenjamin Lemouzy
Fix build error "undefined reference to `is_warm_boot'" when ls1021atsn and ls1021atwr boards are built with CONFIG_SPL=y and CONFIG_DEEP_SLEEP=n. Signed-off-by: Benjamin Lemouzy <blemouzy@centralp.fr> Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-02-27imx8mp_evk: Pass kernel_addr_rFabio Estevam
Currently, booting via bootstd fails because the kernel cannot be retrieved. The reason for this is the lack of 'kernel_addr_r'. Pass 'kernel_addr_r' to fix booting via bootstd. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2025-02-27imx93_evk: Pass kernel_addr_rFabio Estevam
Currently, booting via bootstd fails because the kernel cannot be retrieved. The reason for this is the lack of 'kernel_addr_r'. Pass 'kernel_addr_r' to fix booting via bootstd. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mq_evk: Switch to BOOTSTDPeng Fan
Move env to imx8mq_evk.env Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mq_evk: Enable dynamic settings to mmcdev and mmcrootPeng Fan
Enable dynamic settings to mmcdev and mmcroot for i.MX8MQ-EVK Since we are here, clean up the including headers Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mq_evk: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no gd used in the board file, so drop DECLARE_GLOBAL_DATA_PTR. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mq_evk: Cleanup headersPeng Fan
Drop unused headers and sort the order. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mm_evk: Switch to BOOTSTDPeng Fan
Move env to imx8mm_evk.env Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mm_evk: Enable dynamic settings to mmcdev and mmcrootPeng Fan
Enable dynamic settings to mmcdev and mmcroot for i.MX8MM-EVK Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mn_evk: Switch to BOOTSTDPeng Fan
Move env to imx8mn_evk.env Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mn_evk: Enable dynamic settings to mmcdev and mmcrootPeng Fan
Enable dynamic settings to mmcdev and mmcroot for i.MX8MN-EVK Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mn_evk: Drop DECLARE_GLOBAL_DATA_PTRPeng Fan
There is no users of global data in imx8mn_evk.c, drop it. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mn_evk: Cleanup headersPeng Fan
Drop unused headers and sort them Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mp_evk: Switch to BOOTSTDPeng Fan
Move env to imx8mp_evk.env. Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx8mp_evk: Enable dynamic settings to mmcdev and mmcrootPeng Fan
Enable dynamic settings to mmcdev and mmcroot for i.MX8MP-EVK Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx91_evk: switch to BOOTSTDPeng Fan
Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx93_qsb: switch to BOOTSTDPeng Fan
Switch to support BOOTSTD with a bsp bootcmd as fallback. Signed-off-by: Peng Fan <peng.fan@nxp.com>
2025-01-16imx: imx93_evk: switch to BOOTSTDPeng Fan
Switch to support BOOTSTD with a bsp bootcmd as fallback. Move the env to imx93_evk.env Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-12-31Merge tag 'v2025.01-rc6' into nextTom Rini
Prepare v2025.01-rc6
2024-12-25Merge tag 'v2025.01-rc5' into nextTom Rini
Prepare v2025.01-rc5