summaryrefslogtreecommitdiff
path: root/board/phytec/phycore_imx93
AgeCommit message (Collapse)Author
13 daysboard: phytec: phycore-imx91-93: Add phyCORE-i.MX91 supportPrimoz Fiser
As the PHYTEC phyCORE-i.MX91 [1] is just another variant of the existing PHYTEC phyCORE-i.MX93 SoM but with i.MX91 SoC populated instead, add it to the existing board-code "phycore_imx93", and rename that board to "phycore_imx91_93" to reflect the dual SoCs support. While at it, also rename and change common files accordingly. This way i.MX91 and i.MX93 SoC variants of the phyCORE SoM share most of the code and documentation without duplication, while maintaining own device-tree and defconfigs for each CPU variant. Supported features: - 1GB LPDDR4 RAM - Debug UART - EEPROM - eMMC - Ethernet - SD-card - USB Product page SoM: [1] https://www.phytec.eu/en/produkte/system-on-modules/phycore-imx-91-93/ Signed-off-by: Primoz Fiser <[email protected]>
2026-02-28board: phytec: phycore-imx93: Enter fastboot on USB boot by defaultPrimoz Fiser
In case board is booted from USB, enter fastboot by default to enable the UUU flashing. In case of abort continue with the regular bootstd scan. User also has possibility to override the default bootcmd from the environment. Last but not least, this syncs behavior with other PHYTEC boards from the i.MX family. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Benjamin Hahn <[email protected]>
2026-02-23board: Correct usage of fdtfile=CONFIG_DEFAULT_FDT_FILETom Rini
As explained in commit 03d2d5fc003f ("board: sifive: unmatched: set fdtfile with unquoted variable.") using the syntax of 'fdtfile=CONFIG_DEFAULT_FDT_FILE' in the plain text environment files will lead to extraneous and problematic "s in the output. This is fixed by using fdtfile=DEFAULT_FDT_FILE which was introduced recently. Acked-by: Peng Fan <[email protected]> Signed-off-by: Tom Rini <[email protected]>
2026-02-17treewide: Clean up DECLARE_GLOBAL_DATA_PTR usagePeng Fan
Remove DECLARE_GLOBAL_DATA_PTR from files where gd is not used, and drop the unnecessary inclusion of asm/global_data.h. Headers should be included directly by the files that need them, rather than indirectly via global_data.h. Reviewed-by: Patrice Chotard <[email protected]> #STMicroelectronics boards and STM32MP1 ram test driver Tested-by: Anshul Dalal <[email protected]> #TI boards Acked-by: Yao Zi <[email protected]> #TH1520 Signed-off-by: Peng Fan <[email protected]>
2026-01-21board: phytec: Add PHYTEC mailing list to MAINTAINERS entriesWadim Egorov
PHYTEC maintains an actively monitored mailing list for upstream activities: [email protected]. Add it to the MAINTAINERS entries for PHYTEC boards we actively develop and contribute to. Signed-off-by: Wadim Egorov <[email protected]> Acked-by: Teresa Remmet <[email protected]>
2025-12-06board: phytec: phycore-imx93: env: Add required uuu variablesPrimoz Fiser
Add variable 'emmc_dev' and 'sd_dev' required for NXP uuu flash scripts. Signed-off-by: Primoz Fiser <[email protected]>
2025-12-06board: phytec: phycore-imx93: Set boot_targets dynamicallyPrimoz Fiser
Set boot_targets environment variable dynamically, so that when booting from SD-card, boot binaries are also preferably fetched from the SD-card by default. If the user decides to set their own boot_targets, we should not overwrite them. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2025-12-06board: phytec: phycore-imx93: Switch to standard bootPrimoz Fiser
Enable standard boot for the phyCORE-i.MX93 board and use it as a new default. Add required standard boot variables to the environment, while removing old boot scripts and now unnecessary environment variables. Adjust variables according to the requirements of PHYTEC ampliphy-boot distro-boot. Last but not least, order environment vars by alphabet and run 'make savedefconfig' to resync defconfig. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2025-09-23Merge tag 'v2025.10-rc5' into nextTom Rini
Prepare v2025.10-rc5
2025-09-21board: phytec: phycore-imx93: Fix i.MX93 voltage modesPrimoz Fiser
Fix support for i.MX93 voltage modes on phyCORE-i.MX93 SoM boards. First of all, Kconfig option CONFIG_IMX9_LOW_DRIVE_MODE is gone since commit c9efcad23741 ("imx93_evk: Remove CONFIG_IMX9_LOW_DRIVE_MODE and ld defconfig") and was replaced by runtime detection mechanism. Thus lets use is_voltage_mode() instead of Kconfig to detect CPU type and select proper voltage mode. Secondly, 1400MHz ND mode (Nominal Drive) requiring 0.85V BUCK voltage was not supported with current power_init_board() PMIC settings. Add check also for this CPU type and set BUCK voltage accordingly. Last but not least, add printf() printouts about PMIC voltage mode to the console. This makes it more apparent and verbose about voltage mode in use. Also our internal tests depend on this printout to catch issues with i.MX93 CPU types and set PMIC voltage modes. Signed-off-by: Primoz Fiser <[email protected]>
2025-09-05board: phytec: phycore-imx93: Use CONFIG_PHYTEC_EEPROM_BUSPrimoz Fiser
Switch to use CONFIG_PHYTEC_EEPROM_BUS instead of the hard coded value of 2 for the EEPROM I2C bus for both SPL and U-Boot proper. Possible since commit 88a1816a9b4e ("board: phytec: common: Add PHYTEC_EEPROM_BUS to Kconfig"). Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2025-08-23board: phytec: phycore-imx93: Fix EEPROM bus mismatch in SPLPrimoz Fiser
Fix PHYTEC EEPROM bus mismatch between SPL and U-Boot proper by enabling CONFIG_SPL_DM_SEQ_ALIAS=y on phyCORE-i.MX93 boards. This way, both the SPL and U-Boot proper will respect the device-tree aliases for I2C devs and use the same I2C bus number for phytec_eeprom_data_setup() function calls. This makes code less confusing and more robust. Fixes an issue apparent since commit 79f3e77133bd ("Subtree merge tag 'v6.16-dts' of dts repo [1] into dts/upstream") where SPL would spew the following error: phytec_eeprom_read: i2c EEPROM not found: -110. phytec_eeprom_data_setup: EEPROM data init failed While later in U-Boot proper, EEPROM would be successfully read out. This happens because Linux device-tree for phyBOARD-Segin-i.MX93 since aforementioned commit enables I2C bus 2 (lpi2c2 is used for audio codec and RTC) which breaks SPL I2C bus number ordering and I2C EEPROM bus is shifted by +1. Now, lets prevent this from happening again by utilizing device-tree aliases also in the SPL. Signed-off-by: Primoz Fiser <[email protected]>
2025-08-08board: phytec: phycore-imx93: Add VOLT_LOW_DRIVE frequency fixupPrimoz Fiser
For phyCORE-i.MX93 SoMs with i.MX93 parts running in VOLT_LOW_DRIVE mode (SoCs with speed grade fuse set to 900 MHz) reduce usdhc clocks from 400 MHz to 266 MHz. Do this in board code since global imx9 board_fix_fdt() is not used in case of phycore-imx93 board since commit d3b9b7996889 ("board: phytec: imx93: Add eeprom-based hardware introspection"). While at it, add a note to ft_board_setup() function to inform that fixup for Linux device-tree is taken care by ft_system_setup() in imx9 global arch/arm/mach-imx/imx9/soc.c implementation. Signed-off-by: Primoz Fiser <[email protected]>
2025-07-24board: phytec: phycore-imx93: Drop unused include filesPrimoz Fiser
Drop unused include files from the PHYTEC phyCORE-i.MX93 board code. Signed-off-by: Primoz Fiser <[email protected]>
2025-07-24board: phytec: phycore-imx93: Drop unused PMIC definePrimoz Fiser
Drop unused define for PCA9450 PMIC register which is already part of the header file <power/pca9450.h> since commit 1d0d25704345 ("imx93_evk: spl: update pmic settings"). Signed-off-by: Primoz Fiser <[email protected]>
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 <[email protected]>
2025-05-21ARM: dts: imx93-phycore: Migrate to OF_UPSTREAMPrimoz Fiser
Migrate to OF_UPSTREAM for phyCORE-i.MX93 since board can use upstream Linux kernel device-tree for phyBOARD-Segin-i.MX93. Signed-off-by: Primoz Fiser <[email protected]> Reviewed-by: Sumit Garg <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2025-04-11board: phycore-imx93: env: Add common RAUC boot logicMartin Schwan
Add a common RAUC boot logic environment and make use of it in the i.MX93 environment. The RAUC boot logic is deactivated by default and can be activated by setting "doraucboot" to "1". Signed-off-by: Martin Schwan <[email protected]> Reviewed-by: Leonard Anderweit <[email protected]> Signed-off-by: Primoz Fiser <[email protected]>
2025-04-11board: phycore-imx93: env: Move bootcmd from defconfig to envLeonard Anderweit
Move the default bootcmd from the defconfig to the board environment in preparation for RAUC support. No change in functionality. Signed-off-by: Leonard Anderweit <[email protected]> Signed-off-by: Primoz Fiser <[email protected]>
2025-04-11board: phycore-imx93: env: Add option to disable bootenv.txt importPrimoz Fiser
Add support for disabling external environment import (bootenv.txt) by setting the ${no_bootenv} environment variable. Signed-off-by: Primoz Fiser <[email protected]>
2025-04-11board: phycore-imx93: env: Add prepare_mcore to environmentPrimoz Fiser
Add prepare_mcore script to environment to be able to notify Linux about the state of M33 core via the kernel cmdline by appending to ${optargs}. Signed-off-by: Primoz Fiser <[email protected]>
2025-04-11board: phycore-imx93: env: Add optargs to environmentPrimoz Fiser
Add the optargs variable so we can set optional arguments while booting. Signed-off-by: Primoz Fiser <[email protected]>
2025-04-11board: phycore-imx93: env: Move fdt and bootenv addressesPrimoz Fiser
Move the load addresses for FDTs and bootenv.txt to create space for loading OS image. Otherwise, parts of the image might get corrupted. and the following boot error will be present: ERROR: FDT image overlaps OS image (OS=80400000..832a0000) Moreover, this commit also syncs addresses with downstream PHYTEC u-boot for i.MX93 in preparation for FIT image support in the future. Signed-off-by: Primoz Fiser <[email protected]>
2024-11-25board: phytec: imx93: Add phyCORE-i.MX 93 support for all SOM variantsChristoph Stoidner
The phyCORE-i.MX 93 is available in various variants (e.g. different ram sizes, eMMC HS400 yes/no). Enable hardware introspection for the imx93-phyboard-segin_defconfig, so that during startup the SOM module variant can be detected, and the hardware can be configured accordingly. The resulting SPL and u-boot binary shall able to boot each phyCORE-i.MX 93 module variant on each carrier board. Finally rename imx93-phyboard-segin_defconfig to imx93-phycore_defconfig, to highlight its SOM scope. Signed-off-by: Christoph Stoidner <[email protected]> Reviewed-by: Wadim Egorov <[email protected]> Reviewed-by: Yannic Moog <[email protected]>
2024-11-25board: phytec: imx93: Add eeprom-based hardware introspectionChristoph Stoidner
The phyCORE-i.MX 93 is available in various variants. Relevant variant options for the spl/u-boot are: - with or without HS400 support for the eMMC - with 1GB ram chip, or 2GB ram chip The phyCORE's eeprom contains all information about the existing variant options. Add evaluation of the eeprom data to the spl/u-boot to enable/disable HS400 and to select the appropriate ram configuration at startup. Signed-off-by: Christoph Stoidner <[email protected]> Reviewed-by: Wadim Egorov <[email protected]> Reviewed-by: Yannic Moog <[email protected]> Tested-by: Primoz Fiser <[email protected]>
2024-11-25board: phytec: phycore-imx93: Add 2GB LPDDR4X RAM timingsChristoph Stoidner
The phyCORE-i.MX 93 is available with a 1GB ram chip or a 2GB ram chip. Add the ram timings for the 2GB chip, in form of a diff compared to the existing LPDDR4X 1GB timings. With that, the SPL can select the appropriate timings at startup. Update also the 1GB ram timings with new version of the DDR Tool. Signed-off-by: Christoph Stoidner <[email protected]> Tested-by: Primoz Fiser <[email protected]>
2024-10-11board: Use CONFIG_XPL_BUILD instead of CONFIG_SPL_BUILDSimon Glass
Use the new symbol to refer to any 'SPL' build, including TPL and VPL Signed-off-by: Simon Glass <[email protected]>
2024-09-19imx9: clock: Update clock init function and sequenceYe Li
Since we use SPEED GRADE fuse to set A55 frequency, remove the set_arm_core_low_drive_clk function which has hard coded frequency. And adjust clock_init called sequence and split it to early and late functions. Set the authen register in early function, because CCF driver checks NS bit. Set bus and core clock in late function, because the fuse read and SoC type/rev depend on ELE. Reviewed-by: Peng Fan <[email protected]> Signed-off-by: Ye Li <[email protected]> Signed-off-by: Peng Fan <[email protected]>
2024-07-22board: phytec: renaming of variables according to bootstd docBenjamin Hahn
Rename existing environment variables according to the bootstd doc. Renamed variables are fdto_addr, bootenv_addr, fdt_addr and fdt_file. Signed-off-by: Benjamin Hahn <[email protected]> Signed-off-by: Daniel Schultz <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2024-07-22phycore_imx93: include common overlays.envBenjamin Hahn
Include the common overlays env file for phycore_imx93. The common overlays env file supports disabling loading overlays by setting the no_overlays variable. Signed-off-by: Benjamin Hahn <[email protected]> Signed-off-by: Daniel Schultz <[email protected]> Reviewed-by: Wadim Egorov <[email protected]>
2024-04-20imx93: Move SoC and lifeclycle information to debug levelFabio Estevam
The following information printed on every boot is not very helpful for the users: SOC: 0xa0009300 LC: 0x40040 Move them to debug() level. Signed-off-by: Fabio Estevam <[email protected]> Reviewed-by: Mathieu Othacehe <[email protected]>
2024-04-05arm: imx9: Correct imx9_probe_mu prototypeYe Li
Since the event callback imx9_probe_mu is re-defined, update its prototype. Signed-off-by: Ye Li <[email protected]>
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 <[email protected]>
2024-02-10imx93: Use a header for imx9_probe_mu declarationMathieu Othacehe
Put imx9_probe_mu declaration in a new mu.h header file. Signed-off-by: Mathieu Othacehe <[email protected]> Reviewed-by: Igor Opaniuk <[email protected]>
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 <[email protected]> Tested-by: Primoz Fiser <[email protected]> Reviewed-by: Yannic Moog <[email protected]>