summaryrefslogtreecommitdiff
path: root/arch/arm/mach-imx
AgeCommit message (Collapse)Author
2024-04-22common: Convert *.c/h from UTF-8 to ASCII enconfingMichal Simek
Convert UTF-8 chars to ASCII in cases where make sense. No Copyright or names are converted. Signed-off-by: Michal Simek <michal.simek@amd.com> Reviewed-by: Tom Rini <trini@konsulko.com> Acked-by: Marek Behún <kabel@kernel.org>
2024-04-05verdin-imx8mm/verdin-imx8mp: move imx verdins to OF_UPSTREAMMarcel Ziswiler
Move verdin-imx8mm and verdin-imx8mp to OF_UPSTREAM: - handle the fact that dtbs now have a 'freescale/' prefix - imply OF_UPSTREAM - remove redundant files from arch/arm/dts leaving only the *-u-boot.dtsi files - update MAINTAINERS files Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
2024-04-05arm: imx9: Call imx9_probe_mu for DM post in board_rYe Li
This event callback imx9_probe_mu needs to be called in board_r as well, because many ELE APIs depending on this MU probed Signed-off-by: Ye Li <ye.li@nxp.com>
2024-04-05arm64: imx: imx8mn-beacon: Migrate to OF_UPSTREAMAdam Ford
The imx8mn-beacon boards can migrate to OF_UPSTREAM which also allows for the removal the device tree files. Signed-off-by: Adam Ford <aford173@gmail.com>
2024-04-05arm64: imx: imx8mm-beacon: Migrate to OF_UPSTREAMAdam Ford
The imx8mm-beacon boards can migrate to OF_UPSTREAM which also allows for the removal the device tree files. Signed-off-by: Adam Ford <aford173@gmail.com>
2024-04-05arm64: imx: imx8mp-beacon: Migrate to OF_UPSTREAMAdam Ford
The imx8mp-beacon boards can migrate to OF_UPSTREAM which also allows for the removal the device tree files. Signed-off-by: Adam Ford <aford173@gmail.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
2024-03-30image-container: Fix incorrect return valueYe Li
The spl_spi_get_uboot_offs weak function is defined unsigned int. Signed-off-by: Ye Li <ye.li@nxp.com>
2024-03-30arm: imx9: Fix MMU map table overlapYe Li
The size for flexspi AHB buffer space is wrong, so correct it. Signed-off-by: Ye Li <ye.li@nxp.com>
2024-03-30imx: imx8mp_evk: convert to OF_UPSTREAMPeng Fan
Convert to OF_UPSTREAM for i.MX8MP EVK Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-03-30imx: imx8mn-evk: convert to OF_UPSTREAMPeng Fan
Convert i.MX8MN-EVK and i.MX8MN-DDR4-EVK to OF_UPSTREAM Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-03-30imx: imx8mm_evk: convert to OF_UPSTREAMPeng Fan
Convert i.MX8MM EVK to OF_UPSTREAM Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-03-30imx: imx8mq_evk: convert to OF_UPSTREAMPeng Fan
Convert i.MX8MQ EVK to OF_UPSTREAM Signed-off-by: Peng Fan <peng.fan@nxp.com>
2024-03-30imx8: Add a default reset_cpu() implementationFabio Estevam
Add a weak default reset_cpu() implementation just like it is done on arch/arm/mach-imx/cpu.c. This allows the removal of the empty reset_cpu() in several board files. Signed-off-by: Fabio Estevam <festevam@denx.de> Tested-by: Hiago De Franco <hiago.franco@toradex.com> # Toradex Colibri iMX8X
2024-03-25Merge tag 'v2024.04-rc5' into nextTom Rini
Prepare v2024.04-rc5
2024-03-24imx: ele_ahab: Add ahab_commit command supportMathieu Othacehe
This message is used to commit into the fuses any new SRK revocation and FW version information that have been found into the NXP (ELE FW) and OEM containers. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-03-17imx8m*_venice: move venice to OF_UPSTREAMTim Harvey
Move to imx8m{m,n,p}-venice to OF_UPSTREAM: - replace the non-upstream generic imx8m{m,n,p}-venice dt with one of the dt's from the OF_LIST - handle the fact that dtbs now have a 'freescale/' prefix - imply OF_UPSTREAM - remove rudundant files from arch/arm/dts leaving only the *-u-boot.dtsi files Signed-off-by: Tim Harvey <tharvey@gateworks.com> Reviewed-by: Fabio Estevam <festevam@gmail.com> Reviewed-by: Sumit Garg <sumit.garg@linaro.org>
2024-03-17arm: imx: imx8m: soc: Fix NPU/VPU fdt disable fixupVitor Soares
On imx8m[m|p|q].dtsi, upstream Linux uses different names for NPU/VPU IP block nodes. It leads variants without such HW block having it enabled by default. This patch adds the upstream Linux node's paths to the disable list while keep the compatibility with downstream Linux. Signed-off-by: Vitor Soares <vitor.soares@toradex.com> Reviewed-by: Francesco Dolcini <francesco.dolcini@toradex.com>
2024-03-04imx9: Update to mx93 A1 chip revision.Mathieu Othacehe
Use the latest, mx93a1-ahab-container.img that is compatible with the i.MX93 A1 revision. Using mx93a1-ahab-container.img on an A0 chip and conversely causes a boot failure without any traces on the UART. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-03-04imx9: Fix OP-TEE supportMathieu Othacehe
This fixes OP-TEE support by: - Adding tee.bin to container.cfg - Starting ELE RNG in SPL Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2024-02-24imx: imxrt1050-evk: Add support for SPI flash bootingJesse Taube
Add support for booting the imxrt1050-evk from spi. Add imximage config and the ability for SPL to boot from NOR. Enable binman in Kconfig and device tree for imxrt* as it is used to prepend fspi_header.bin to SPL and u-boot.img. Signed-off-by: Jesse Taube <Mr.Bossman075@gmail.com>
2024-02-19board: Add support for Sielaff i.MX6 Solo boardFrieder Schrempf
The Sielaff i.MX6 Solo board is a control and HMI board for vending machines. Add support for this board. The devicetree files are taken from pending changes in the Linux kernel that are available from linux-next and will likely be part of Linux v6.9. Signed-off-by: Frieder Schrempf <frieder.schrempf@kontron.de>
2024-02-08imx: imx8: print reset causeIgor Opaniuk
Add support for printing reset cause during boot. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io>
2024-02-08board: phytec: phycore-imx93: Add phyBOARD-Segin-i.MX93 supportMathieu Othacehe
Add initial support for the PHYTEC phyBOARD-Segin-i.MX93 board based on the PHYTEC phyCORE-i.MX93 SoM. Supported features: - 1GB LPDDR4 RAM - eMMC - external SD - FEC Ethernet - debug UART - watchdog Signed-off-by: Mathieu Othacehe <othacehe@gnu.org> Tested-by: Primoz Fiser <primoz.fiser@norik.com> Reviewed-by: Yannic Moog <y.moog@phytec.de>
2024-02-08imx9: clock: Fix board_interface_eth_init for FECPrimoz Fiser
Commit d5eae216d833 ("net: dwc_eth_qos: Add board_interface_eth_init() for i.MX93") implemented board_interface_eth_init for i.MX9 platforms. However it only accounted for the EQOS interface while any board using FEC as primary Ethernet interface was left out as return value -EINVAL is always returned from the function in such case. Fix this by returning 0 (success) when FEC interface is primarily used instead of EQOS interface on i.MX93. Fixes: d5eae216d833 ("net: dwc_eth_qos: Add board_interface_eth_init() for i.MX93") Signed-off-by: Primoz Fiser <primoz.fiser@norik.com> Tested-by: Mathieu Othacehe <m.othacehe@gmail.com>
2024-01-22mtd: Make CONFIG_MTD be the gate symbol for the menuTom Rini
The help for CONFIG_MTD explains that it needs to be enabled for various things like NAND, etc to be available. It however then doesn't enforce this dependency and so if you have none of these systems present you still need to disable a number of options. Fix this by making places that select/imply one type of flash, but did not do the same, also do this for "MTD". Make boards which hadn't been enabling MTD already but need it now, do so. In a few places, disable CONFIG_CMD_MTDPARTS as it wasn't previously enabled but was now being implied. Signed-off-by: Tom Rini <trini@konsulko.com>
2024-01-22imx8m: Enable LTO by defaultFabio Estevam
In an attempt to select ARMV8_SPL_EXCEPTION_VECTORS, the SPL size could not fit into the internal SRAM of some imx8m targets: aarch64: + imx8mm_phg +aarch64-linux-ld.bfd: u-boot-spl section `__u_boot_list' will not fit in region `.sram' +aarch64-linux-ld.bfd: region `.sram' overflowed by 1824 bytes Select LTO to prevent that. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Marek Vasut <marex@denx.de>
2024-01-12imx: imx9: fixup thermal trips from fusesPrimoz Fiser
Read i.MX9 CPU temp grade from fuses and fixup thermal trips in Linux device-tree accordingly. Based on commit 0543a1ed2787 ("imx8m: fixup thermal trips") Signed-off-by: Primoz Fiser <primoz.fiser@norik.com>
2024-01-12imx8m: Select BINMAN at SoC levelFabio Estevam
All i.MX8M targets rely on using binman to generate the U-Boot binary. Select it at the SoC level instead of per board. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-01-12imx9: Select BINMAN at SoC levelFabio Estevam
All i.MX93 targets rely on using binman to generate the U-Boot binary. Select it at the SoC level instead of per board. Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2024-01-08Merge tag 'u-boot-imx-master-20240108' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx - Removed fdt_addr from verdin-imx8mm to fix booting via bootefi. - Support Ethernet PHY autodection on Data Modul i.MX8M Mini/Plus eDM SBC - Add i.MX93 binman support - Add support for imx93-var-som
2024-01-08Add imx93-var-som supportMathieu Othacehe
Add support for the Variscite VAR-SOM-IMX93 evaluation kit. The SoM consists of an NXP iMX93 dual A55 CPU. The SoM is mounted on a Variscite Symphony SBC. Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
2024-01-08imx9: imx93_evk: Add binman support.Mathieu Othacehe
Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
2024-01-08mach-imx: Add i.MX93 binman support.Mathieu Othacehe
Add dedicated Makefile targets for the i.MX93 and a new imx93-u-boot.dtsi device-tree to create binman images. Signed-off-by: Mathieu Othacehe <m.othacehe@gmail.com>
2023-12-18Merge tag 'v2024.01-rc5' into nextTom Rini
Prepare v2024.01-rc5
2023-12-14ddr: imx: Add 3600 MTps rate supportMarek Vasut
Add PLL settings for DDR 3600 MTps . This is very similar to 3200 MTps PLL setting, except the divider is not 9 but 8 . Signed-off-by: Marek Vasut <marex@denx.de> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2023-12-13imx: imx-hab: Select SPL_DRIVERS_MISC in the SPL caseFabio Estevam
Selecting CONFIG_IMX_HAB=y on a SPL target, such as apalis_imx6_defconfig, for example, leads to the following build error: /usr/bin/arm-linux-gnueabihf-ld.bfd: arch/arm/mach-imx/hab.o: in function `imx_hab_is_enabled': arch/arm/mach-imx/hab.c:879: undefined reference to `fuse_read' fuse_read() comes from SPL_MXC_OCOTP, which depends on SPL_DRIVERS_MISC, since commit 251a3053b1e6 ("misc: imx: remove DM dependency for ocotp driver in SPL"). Select SPL_DRIVERS_MISC in the SPL case to fix this build issue. Reported-by: Lisandro Pérez Meyer <lpmeyer@ics.com> Signed-off-by: Fabio Estevam <festevam@denx.de> Tested-by: Lisandro Pérez Meyer <lpmeyer@ics.com>
2023-12-13clock_imx8mm: Add a stub for imx8mp_fec_interface_init()Fabio Estevam
When CONFIG_DWC_ETH_QOS_IMX=y and CONFIG_FEC_MXC is not selected, the following warning is seen: arch/arm/mach-imx/imx8m/clock_imx8mm.c: In function 'board_interface_eth_init': arch/arm/mach-imx/imx8m/clock_imx8mm.c:914:24: warning: implicit declaration of function 'imx8mp_fec_interface_init; did you mean 'imx8mp_eqos_interface_init'? [-Wimplicit-function-declaration] Fix it by adding a stub for imx8mp_fec_interface_init() to handle this case. This follows the same approach done on imx8mp_eqos_interface_init(). Signed-off-by: Fabio Estevam <festevam@denx.de> Reviewed-by: Marek Vasut <marex@denx.de>
2023-12-13imx8mn-var-som: add manufacturer to target descriptionHugo Villeneuve
Add Variscite manufacturer to the IMX8MN_VAR_SOM target menu label as the majority of targets include the manufacturer as part of their menu description/label and it helps when looking for a particular manufacturer/board. Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2023-12-13net: dwc_eth_qos: Add board_interface_eth_init() for i.MX93Sébastien Szymanski
Add a common board_interface_eth_init() called by the DWC MAC driver to setup the MAC <-> PHY interface according to the PHY mode obtained from DT. Remove the board-side configuration in the i.MX93 EVK files. Signed-off-by: Sébastien Szymanski <sebastien.szymanski@armadeus.com>
2023-12-13ARM: imx8ulp: support env in fat and ext4Ricardo Salveti
Change boot device logic to also allow environment stored in fat and in ext4 when booting from SD or eMMC. As the boot device check for SD and for eMMC was depending on ENV_IS_IN_MMC being defined, change the ifdef blocks at env_get_location to use IS_ENABLED instead for all modes, returning NOWHERE when no valid mode is found. Signed-off-by: Ricardo Salveti <ricardo@foundries.io> Co-developed-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-12-13imx: imx8: ahab: refactor do_ahab_close commandIgor Opaniuk
Move an OEM closing logic to ahab_close() function to be able to use it directly without calling a u-boot command. Signed-off-by: Igor Opaniuk <igor.opaniuk@foundries.io> Co-developed-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io> Signed-off-by: Oleksandr Suvorov <oleksandr.suvorov@foundries.io>
2023-12-13imx: imx8mp: Add support for Polyhex Debix Model A SBCGilles Talis
Add support for the Polyhex Debix Model A SBC board. It is an industrial grade single board computer based on NXP's i.MX 8M Plus. Currently supported interfaces are: - Serial console - Micro SD - eQOS and FEC Ethernet imx8mp-debix-model-a.dts is taken from Linux 6.3. Signed-off-by: Gilles Talis <gilles.talis@gmail.com> Reviewed-by: Peng Fan <peng.fan@nxp.com>
2023-11-20Merge tag 'v2024.01-rc3' into nextTom Rini
Prepare v2024.01-rc3
2023-11-17imx: spl_imx_romapi: fix emmc fast boot mode caseMarcel Ziswiler
This fixes a regression in the eMMC fast boot mode case where the buffer was missing 464 bytes. The code figures out how many bytes must at least be fetched to honor the current read, rounds that up to the ss->pagesize [which is a no-op in the USB download case because that has ->pagesize==1], fetches that many bytes, but then recorded the original upper bound as the new end of the valid data. However, this did not take into account the rounding up to the ss->pagesize. Fix this by recording the actual bytes downloaded. Fixes: 4b4472438f5a ("imx: spl_imx_romapi: avoid tricky use of spl_load_simple_fit() to get full FIT size") Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Acked-by: Rasmus Villemoes <rasmus.villemoes@prevas.dk> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2023-11-17imx: spl_imx_romapi: fix comment about stream(usb) download failureMarcel Ziswiler
Fix comment about Stream(USB) download failure. Fixes: 1cbebc786276 ("imx: add rom api support") Signed-off-by: Marcel Ziswiler <marcel.ziswiler@toradex.com> Reviewed-by: Fabio Estevam <festevam@gmail.com>
2023-11-16spl: Only support bl_len when we have toSean Anderson
Aligning addresses and sizes causes overhead which is unnecessary when we are not loading from block devices. Remove bl_len when it is not needed. For example, on iot2050 we save 144 bytes with this patch (once the rest of this series is applied): add/remove: 0/0 grow/shrink: 0/3 up/down: 0/-144 (-144) Function old new delta spl_load_simple_fit 920 904 -16 load_simple_fit 496 444 -52 spl_spi_load_image 384 308 -76 Total: Before=87431, After=87287, chg -0.16% We use panic() instead of BUILD_BUG_ON in spl_set_bl_len because we still need to be able to compile it for things like mmc_load_image_raw_sector, even if that function will not be used. Signed-off-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-11-16spl: Refactor spl_load_info->read to use units of bytesSean Anderson
Simplify things a bit for callers of spl_load_info->read by refactoring it to use units of bytes instead of bl_len. This generally simplifies the logic, as MMC is the only loader which actually works in sectors. It will also allow further refactoring to remove the special-case handling of filename. spl_load_legacy_img already works in units of bytes (oops) so it doesn't need to be changed. Signed-off-by: Sean Anderson <seanga2@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2023-11-07scsi: Forceably finish migration to DM_SCSITom Rini
The migration deadline for moving to DM_SCSI was v2023.04. A further reminder was sent out in August 2023 to the remaining platforms that had not migrated already, and that a few more over the line (or configs deleted). With this commit we: - Rename CONFIG_DM_SCSI to CONFIG_SCSI. - Remove all of the non-DM SCSI code. This includes removing other legacy symbols and code and removes some legacy non-DM AHCI code. - Some platforms that had previously been DM_SCSI=y && SCSI=n are now fully migrated to DM_SCSI as a few corner cases in the code assumed DM_SCSI=y meant SCSI=y. Signed-off-by: Tom Rini <trini@konsulko.com>
2023-10-30Kconfig: Remove all default n/no optionsMichal Simek
Similar change was done by commit b4c2c151b14b ("Kconfig: Remove all default n/no options") and again sync is required. default n/no doesn't need to be specified. It is default option anyway. Signed-off-by: Michal Simek <michal.simek@amd.com> Reviewed-by: Svyatoslav Ryhel <clamor95@gmail.com> # tegra Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Angelo Dureghello <angelo@kernel-space.org>
2023-10-24Merge tag 'u-boot-imx-20231024' of ↵Tom Rini
https://gitlab.denx.de/u-boot/custodians/u-boot-imx u-boot-imx-20231024 ------------------- CI: https://source.denx.de/u-boot/custodians/u-boot-imx/-/pipelines/18211 - Fixes for MC2432 Eeprom - i.MX93 ADC - Secondary boot mode on i.MX8M