* [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants
@ 2024-11-04 11:25 Christoph Stoidner
2024-11-04 13:07 ` Christoph Stoidner
2024-11-05 7:42 ` [Upstream] " Wadim Egorov
0 siblings, 2 replies; 5+ messages in thread
From: Christoph Stoidner @ 2024-11-04 11:25 UTC (permalink / raw)
To: u-boot, upstream; +Cc: Christoph Stoidner, Mathieu Othacehe
The phyCORE-i.MX 93 is available in various variants (e.g. different ram
sizes, eMMC HS400 yes/no). Add a new SOM-scoped defconfig that makes use
of the hardware introspection of the phycore-imx93 board-code, to detect
the SOM module variant, and to configure the hardware accordingly. The
resulting SPL and u-boot binary shall able to boot each phyCORE-i.MX93
module variant on each carrier board.
Signed-off-by: Christoph Stoidner <c.stoidner@phytec.de>
Cc: Mathieu Othacehe <m.othacehe@gmail.com>, Christoph Stoidner <c.stoidner@phytec.de>, Stefano Babic <sbabic@denx.de>, Fabio Estevam <festevam@gmail.com>, "NXP i.MX U-Boot Team" <uboot-imx@nxp.com>, Tom Rini <trini@konsulko.com>, Yannic Moog <y.moog@phytec.de>, Primoz Fiser <primoz.fiser@norik.com>, Andrej Picej <andrej.picej@norik.com>, Wadim Egorov <w.egorov@phytec.de>
---
arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi | 14 +-
board/phytec/phycore_imx93/MAINTAINERS | 1 +
configs/imx93-phycore_defconfig | 156 ++++++++++++++++++
3 files changed, 169 insertions(+), 2 deletions(-)
create mode 100644 configs/imx93-phycore_defconfig
diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
index 25c778bb07..e84476c38a 100644
--- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
+++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
@@ -2,15 +2,25 @@
/*
* Copyright (C) 2023 PHYTEC Messtechnik GmbH
* Christoph Stoidner <c.stoidner@phytec.de>
+ * Copyright (C) 2024 PHYTEC Messtechnik GmbH
*
* Product homepage:
- * phyBOARD-Segin carrier board is reused for the i.MX93 design.
- * https://www.phytec.eu/en/produkte/single-board-computer/phyboard-segin-imx6ul/
+ https://www.phytec.de/produkte/system-on-modules/phycore-imx-91-93/
*/
#include "imx93-u-boot.dtsi"
/ {
+
+ /*
+ * If the u-boot build uses the device tree of a phyCORE-i.MX93 carrier
+ * board (i.E. imx93-phyboard-segin.dts), then this u-boot.dtsi
+ * deactivates all carrier board-specific peripherals. This means that
+ * the resulting SPL and u-boot binary can boot the phyCORE-i.MX 93 module
+ * on each carrier board.
+ */
+ model = "PHYTEC phyCORE-i.MX93";
+
wdt-reboot {
compatible = "wdt-reboot";
wdt = <&wdog3>;
diff --git a/board/phytec/phycore_imx93/MAINTAINERS b/board/phytec/phycore_imx93/MAINTAINERS
index cea817ffdc..d6eb5eb287 100644
--- a/board/phytec/phycore_imx93/MAINTAINERS
+++ b/board/phytec/phycore_imx93/MAINTAINERS
@@ -9,5 +9,6 @@ F: arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
F: board/phytec/phycore_imx93/
F: board/phytec/common/imx93_som_detection.c
F: board/phytec/common/imx93_som_detection.h
+F: configs/imx93-phycore_defconfig
F: configs/imx93-phyboard-segin_defconfig
F: include/configs/phycore_imx93.h
diff --git a/configs/imx93-phycore_defconfig b/configs/imx93-phycore_defconfig
new file mode 100644
index 0000000000..2c818d01b7
--- /dev/null
+++ b/configs/imx93-phycore_defconfig
@@ -0,0 +1,156 @@
+CONFIG_ARM=y
+CONFIG_ARCH_IMX9=y
+CONFIG_TEXT_BASE=0x80200000
+CONFIG_SYS_MALLOC_LEN=0x2000000
+CONFIG_SYS_MALLOC_F_LEN=0x20000
+CONFIG_SPL_LIBCOMMON_SUPPORT=y
+CONFIG_SPL_LIBGENERIC_SUPPORT=y
+CONFIG_NR_DRAM_BANKS=2
+CONFIG_ENV_SOURCE_FILE="phycore_imx93"
+CONFIG_ENV_SIZE=0x10000
+CONFIG_ENV_OFFSET=0x700000
+CONFIG_IMX_CONFIG="arch/arm/mach-imx/imx9/imximage.cfg"
+CONFIG_DM_GPIO=y
+CONFIG_DEFAULT_DEVICE_TREE="imx93-phyboard-segin"
+CONFIG_SPL_TEXT_BASE=0x2049A000
+CONFIG_PHYTEC_SOM_DETECTION=y
+CONFIG_TARGET_PHYCORE_IMX93=y
+CONFIG_OF_LIBFDT_OVERLAY=y
+CONFIG_SYS_MONITOR_LEN=524288
+CONFIG_SPL_SERIAL=y
+CONFIG_SPL_DRIVERS_MISC=y
+CONFIG_SPL_STACK=0x20519dd0
+CONFIG_SPL=y
+CONFIG_ENV_OFFSET_REDUND=0x720000
+CONFIG_CMD_DEKBLOB=y
+CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x88000000
+CONFIG_SYS_LOAD_ADDR=0x80400000
+CONFIG_SYS_MEMTEST_START=0x80000000
+CONFIG_SYS_MEMTEST_END=0x90000000
+CONFIG_REMAKE_ELF=y
+# CONFIG_ANDROID_BOOT_IMAGE is not set
+CONFIG_DISTRO_DEFAULTS=y
+CONFIG_OF_SYSTEM_SETUP=y
+CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if test ${doraucboot} = 1; then run raucinit; fi; if run loadimage; then run mmcboot; else run netboot; fi; fi;"
+CONFIG_DEFAULT_FDT_FILE="oftree"
+CONFIG_SYS_CBSIZE=2048
+CONFIG_SYS_PBSIZE=2074
+CONFIG_ARCH_MISC_INIT=y
+CONFIG_BOARD_LATE_INIT=y
+CONFIG_SPL_MAX_SIZE=0x26000
+CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
+CONFIG_SPL_BSS_START_ADDR=0x2051a000
+CONFIG_SPL_BSS_MAX_SIZE=0x2000
+CONFIG_SPL_BOARD_INIT=y
+CONFIG_SPL_BOOTROM_SUPPORT=y
+CONFIG_SPL_LOAD_IMX_CONTAINER=y
+CONFIG_IMX_CONTAINER_CFG="arch/arm/mach-imx/imx9/container.cfg"
+# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
+CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
+CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1040
+CONFIG_SPL_I2C=y
+CONFIG_SPL_POWER=y
+CONFIG_SPL_WATCHDOG=y
+CONFIG_SYS_PROMPT="u-boot=> "
+CONFIG_CMD_ERASEENV=y
+CONFIG_CMD_NVEDIT_EFI=y
+CONFIG_CRC32_VERIFY=y
+CONFIG_CMD_EEPROM=y
+CONFIG_SYS_I2C_EEPROM_BUS=2
+CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
+CONFIG_SYS_EEPROM_SIZE=4096
+CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=5
+CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=5
+CONFIG_CMD_MEMTEST=y
+CONFIG_CMD_CLK=y
+CONFIG_CMD_DFU=y
+CONFIG_CMD_FUSE=y
+CONFIG_CMD_GPIO=y
+CONFIG_CMD_I2C=y
+CONFIG_CMD_MMC=y
+CONFIG_CMD_POWEROFF=y
+CONFIG_CMD_USB=y
+CONFIG_CMD_USB_MASS_STORAGE=y
+CONFIG_CMD_SNTP=y
+CONFIG_CMD_CACHE=y
+CONFIG_CMD_EFIDEBUG=y
+CONFIG_CMD_RTC=y
+CONFIG_CMD_TIME=y
+CONFIG_CMD_GETTIME=y
+CONFIG_CMD_TIMER=y
+CONFIG_CMD_REGULATOR=y
+CONFIG_CMD_HASH=y
+CONFIG_CMD_EXT4_WRITE=y
+CONFIG_OF_CONTROL=y
+CONFIG_SPL_OF_CONTROL=y
+CONFIG_ENV_OVERWRITE=y
+CONFIG_ENV_IS_NOWHERE=y
+CONFIG_ENV_IS_IN_MMC=y
+CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
+CONFIG_SYS_RELOC_GD_ENV_ADDR=y
+CONFIG_SYS_MMC_ENV_DEV=1
+CONFIG_USE_ETHPRIME=y
+CONFIG_ETHPRIME="eth1"
+CONFIG_NET_RANDOM_ETHADDR=y
+CONFIG_SPL_DM=y
+CONFIG_SYSCON=y
+CONFIG_SPL_CLK_IMX93=y
+CONFIG_CLK_IMX93=y
+CONFIG_CPU=y
+CONFIG_CPU_IMX=y
+CONFIG_DFU_MMC=y
+CONFIG_DFU_RAM=y
+CONFIG_IMX_RGPIO2P=y
+CONFIG_DM_I2C=y
+CONFIG_SYS_I2C_IMX_LPI2C=y
+CONFIG_I2C_EEPROM=y
+CONFIG_SYS_I2C_EEPROM_ADDR=0x50
+CONFIG_SUPPORT_EMMC_BOOT=y
+CONFIG_MMC_IO_VOLTAGE=y
+CONFIG_MMC_UHS_SUPPORT=y
+CONFIG_MMC_HS400_ES_SUPPORT=y
+CONFIG_MMC_HS400_SUPPORT=y
+CONFIG_FSL_USDHC=y
+CONFIG_PHY_TI_GENERIC=y
+CONFIG_DM_ETH_PHY=y
+CONFIG_DWC_ETH_QOS=y
+CONFIG_DWC_ETH_QOS_IMX=y
+CONFIG_FEC_MXC=y
+CONFIG_MII=y
+CONFIG_MIPI_DPHY_HELPERS=y
+CONFIG_PHY_IMX93_MIPI_DPHY=y
+CONFIG_PINCTRL=y
+CONFIG_SPL_PINCTRL=y
+CONFIG_PINCTRL_IMX93=y
+CONFIG_POWER_DOMAIN=y
+CONFIG_IMX93_BLK_CTRL=y
+CONFIG_DM_PMIC=y
+CONFIG_DM_PMIC_PCA9450=y
+CONFIG_SPL_DM_PMIC_PCA9450=y
+CONFIG_DM_REGULATOR=y
+CONFIG_DM_REGULATOR_PCA9450=y
+CONFIG_DM_REGULATOR_FIXED=y
+CONFIG_DM_REGULATOR_GPIO=y
+CONFIG_DM_RTC=y
+CONFIG_DM_SERIAL=y
+CONFIG_FSL_LPUART=y
+CONFIG_SPI=y
+CONFIG_DM_SPI=y
+CONFIG_SYSRESET=y
+CONFIG_SPL_SYSRESET=y
+CONFIG_SYSRESET_WATCHDOG=y
+CONFIG_DM_THERMAL=y
+CONFIG_IMX_TMU=y
+CONFIG_USB=y
+CONFIG_SPL_USB_HOST=y
+CONFIG_USB_EHCI_HCD=y
+CONFIG_USB_GADGET=y
+CONFIG_SPL_USB_GADGET=y
+CONFIG_USB_GADGET_MANUFACTURER="PHYTEC"
+CONFIG_USB_GADGET_VENDOR_NUM=0x1fc9
+CONFIG_USB_GADGET_PRODUCT_NUM=0x0152
+CONFIG_CI_UDC=y
+CONFIG_USB_PORT_AUTO=y
+CONFIG_ULP_WATCHDOG=y
+CONFIG_LZO=y
+CONFIG_BZIP2=y
--
2.34.1
^ permalink raw reply related [flat|nested] 5+ messages in thread
* Re: [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants
2024-11-04 11:25 [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants Christoph Stoidner
@ 2024-11-04 13:07 ` Christoph Stoidner
2024-11-05 7:42 ` [Upstream] " Wadim Egorov
1 sibling, 0 replies; 5+ messages in thread
From: Christoph Stoidner @ 2024-11-04 13:07 UTC (permalink / raw)
To: PHYTEC Upstream, u-boot@lists.denx.de
Sorry, unfortunately that patch got separated from its patch-series.
Please note, it belongs to the patch-series
"Add support for all variants of the phyCORE-i.MX93 SOM".
On Mo, 2024-11-04 at 12:25 +0100, Christoph Stoidner wrote:
> The phyCORE-i.MX 93 is available in various variants (e.g. different
> ram
> sizes, eMMC HS400 yes/no). Add a new SOM-scoped defconfig that makes
> use
> of the hardware introspection of the phycore-imx93 board-code, to
> detect
> the SOM module variant, and to configure the hardware accordingly.
> The
> resulting SPL and u-boot binary shall able to boot each phyCORE-
> i.MX93
> module variant on each carrier board.
>
> Signed-off-by: Christoph Stoidner <c.stoidner@phytec.de>
> Cc: Mathieu Othacehe <m.othacehe@gmail.com>, Christoph Stoidner
> <c.stoidner@phytec.de>, Stefano Babic <sbabic@denx.de>, Fabio Estevam
> <festevam@gmail.com>, "NXP i.MX U-Boot Team" <uboot-imx@nxp.com>, Tom
> Rini <trini@konsulko.com>, Yannic Moog <y.moog@phytec.de>, Primoz
> Fiser <primoz.fiser@norik.com>, Andrej Picej
> <andrej.picej@norik.com>, Wadim Egorov <w.egorov@phytec.de>
> ---
> arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi | 14 +-
> board/phytec/phycore_imx93/MAINTAINERS | 1 +
> configs/imx93-phycore_defconfig | 156
> ++++++++++++++++++
> 3 files changed, 169 insertions(+), 2 deletions(-)
> create mode 100644 configs/imx93-phycore_defconfig
>
> diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> index 25c778bb07..e84476c38a 100644
> --- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> +++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> @@ -2,15 +2,25 @@
> /*
> * Copyright (C) 2023 PHYTEC Messtechnik GmbH
> * Christoph Stoidner <c.stoidner@phytec.de>
> + * Copyright (C) 2024 PHYTEC Messtechnik GmbH
> *
> * Product homepage:
> - * phyBOARD-Segin carrier board is reused for the i.MX93 design.
> - * https://www.phytec.eu/en/produkte/single-board-computer/phyboard-
> segin-imx6ul/
> + https://www.phytec.de/produkte/system-on-modules/phycore-imx-91-
> 93/
> */
>
> #include "imx93-u-boot.dtsi"
>
> / {
> +
> + /*
> + * If the u-boot build uses the device tree of a phyCORE-
> i.MX93 carrier
> + * board (i.E. imx93-phyboard-segin.dts), then this u-
> boot.dtsi
> + * deactivates all carrier board-specific peripherals. This
> means that
> + * the resulting SPL and u-boot binary can boot the phyCORE-
> i.MX 93 module
> + * on each carrier board.
> + */
> + model = "PHYTEC phyCORE-i.MX93";
> +
> wdt-reboot {
> compatible = "wdt-reboot";
> wdt = <&wdog3>;
> diff --git a/board/phytec/phycore_imx93/MAINTAINERS
> b/board/phytec/phycore_imx93/MAINTAINERS
> index cea817ffdc..d6eb5eb287 100644
> --- a/board/phytec/phycore_imx93/MAINTAINERS
> +++ b/board/phytec/phycore_imx93/MAINTAINERS
> @@ -9,5 +9,6 @@ F: arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> F: board/phytec/phycore_imx93/
> F: board/phytec/common/imx93_som_detection.c
> F: board/phytec/common/imx93_som_detection.h
> +F: configs/imx93-phycore_defconfig
> F: configs/imx93-phyboard-segin_defconfig
> F: include/configs/phycore_imx93.h
> diff --git a/configs/imx93-phycore_defconfig b/configs/imx93-
> phycore_defconfig
> new file mode 100644
> index 0000000000..2c818d01b7
> --- /dev/null
> +++ b/configs/imx93-phycore_defconfig
> @@ -0,0 +1,156 @@
> +CONFIG_ARM=y
> +CONFIG_ARCH_IMX9=y
> +CONFIG_TEXT_BASE=0x80200000
> +CONFIG_SYS_MALLOC_LEN=0x2000000
> +CONFIG_SYS_MALLOC_F_LEN=0x20000
> +CONFIG_SPL_LIBCOMMON_SUPPORT=y
> +CONFIG_SPL_LIBGENERIC_SUPPORT=y
> +CONFIG_NR_DRAM_BANKS=2
> +CONFIG_ENV_SOURCE_FILE="phycore_imx93"
> +CONFIG_ENV_SIZE=0x10000
> +CONFIG_ENV_OFFSET=0x700000
> +CONFIG_IMX_CONFIG="arch/arm/mach-imx/imx9/imximage.cfg"
> +CONFIG_DM_GPIO=y
> +CONFIG_DEFAULT_DEVICE_TREE="imx93-phyboard-segin"
> +CONFIG_SPL_TEXT_BASE=0x2049A000
> +CONFIG_PHYTEC_SOM_DETECTION=y
> +CONFIG_TARGET_PHYCORE_IMX93=y
> +CONFIG_OF_LIBFDT_OVERLAY=y
> +CONFIG_SYS_MONITOR_LEN=524288
> +CONFIG_SPL_SERIAL=y
> +CONFIG_SPL_DRIVERS_MISC=y
> +CONFIG_SPL_STACK=0x20519dd0
> +CONFIG_SPL=y
> +CONFIG_ENV_OFFSET_REDUND=0x720000
> +CONFIG_CMD_DEKBLOB=y
> +CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x88000000
> +CONFIG_SYS_LOAD_ADDR=0x80400000
> +CONFIG_SYS_MEMTEST_START=0x80000000
> +CONFIG_SYS_MEMTEST_END=0x90000000
> +CONFIG_REMAKE_ELF=y
> +# CONFIG_ANDROID_BOOT_IMAGE is not set
> +CONFIG_DISTRO_DEFAULTS=y
> +CONFIG_OF_SYSTEM_SETUP=y
> +CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if test
> ${doraucboot} = 1; then run raucinit; fi; if run loadimage; then run
> mmcboot; else run netboot; fi; fi;"
> +CONFIG_DEFAULT_FDT_FILE="oftree"
> +CONFIG_SYS_CBSIZE=2048
> +CONFIG_SYS_PBSIZE=2074
> +CONFIG_ARCH_MISC_INIT=y
> +CONFIG_BOARD_LATE_INIT=y
> +CONFIG_SPL_MAX_SIZE=0x26000
> +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> +CONFIG_SPL_BSS_START_ADDR=0x2051a000
> +CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +CONFIG_SPL_BOARD_INIT=y
> +CONFIG_SPL_BOOTROM_SUPPORT=y
> +CONFIG_SPL_LOAD_IMX_CONTAINER=y
> +CONFIG_IMX_CONTAINER_CFG="arch/arm/mach-imx/imx9/container.cfg"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
> +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1040
> +CONFIG_SPL_I2C=y
> +CONFIG_SPL_POWER=y
> +CONFIG_SPL_WATCHDOG=y
> +CONFIG_SYS_PROMPT="u-boot=> "
> +CONFIG_CMD_ERASEENV=y
> +CONFIG_CMD_NVEDIT_EFI=y
> +CONFIG_CRC32_VERIFY=y
> +CONFIG_CMD_EEPROM=y
> +CONFIG_SYS_I2C_EEPROM_BUS=2
> +CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
> +CONFIG_SYS_EEPROM_SIZE=4096
> +CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=5
> +CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=5
> +CONFIG_CMD_MEMTEST=y
> +CONFIG_CMD_CLK=y
> +CONFIG_CMD_DFU=y
> +CONFIG_CMD_FUSE=y
> +CONFIG_CMD_GPIO=y
> +CONFIG_CMD_I2C=y
> +CONFIG_CMD_MMC=y
> +CONFIG_CMD_POWEROFF=y
> +CONFIG_CMD_USB=y
> +CONFIG_CMD_USB_MASS_STORAGE=y
> +CONFIG_CMD_SNTP=y
> +CONFIG_CMD_CACHE=y
> +CONFIG_CMD_EFIDEBUG=y
> +CONFIG_CMD_RTC=y
> +CONFIG_CMD_TIME=y
> +CONFIG_CMD_GETTIME=y
> +CONFIG_CMD_TIMER=y
> +CONFIG_CMD_REGULATOR=y
> +CONFIG_CMD_HASH=y
> +CONFIG_CMD_EXT4_WRITE=y
> +CONFIG_OF_CONTROL=y
> +CONFIG_SPL_OF_CONTROL=y
> +CONFIG_ENV_OVERWRITE=y
> +CONFIG_ENV_IS_NOWHERE=y
> +CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
> +CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> +CONFIG_SYS_MMC_ENV_DEV=1
> +CONFIG_USE_ETHPRIME=y
> +CONFIG_ETHPRIME="eth1"
> +CONFIG_NET_RANDOM_ETHADDR=y
> +CONFIG_SPL_DM=y
> +CONFIG_SYSCON=y
> +CONFIG_SPL_CLK_IMX93=y
> +CONFIG_CLK_IMX93=y
> +CONFIG_CPU=y
> +CONFIG_CPU_IMX=y
> +CONFIG_DFU_MMC=y
> +CONFIG_DFU_RAM=y
> +CONFIG_IMX_RGPIO2P=y
> +CONFIG_DM_I2C=y
> +CONFIG_SYS_I2C_IMX_LPI2C=y
> +CONFIG_I2C_EEPROM=y
> +CONFIG_SYS_I2C_EEPROM_ADDR=0x50
> +CONFIG_SUPPORT_EMMC_BOOT=y
> +CONFIG_MMC_IO_VOLTAGE=y
> +CONFIG_MMC_UHS_SUPPORT=y
> +CONFIG_MMC_HS400_ES_SUPPORT=y
> +CONFIG_MMC_HS400_SUPPORT=y
> +CONFIG_FSL_USDHC=y
> +CONFIG_PHY_TI_GENERIC=y
> +CONFIG_DM_ETH_PHY=y
> +CONFIG_DWC_ETH_QOS=y
> +CONFIG_DWC_ETH_QOS_IMX=y
> +CONFIG_FEC_MXC=y
> +CONFIG_MII=y
> +CONFIG_MIPI_DPHY_HELPERS=y
> +CONFIG_PHY_IMX93_MIPI_DPHY=y
> +CONFIG_PINCTRL=y
> +CONFIG_SPL_PINCTRL=y
> +CONFIG_PINCTRL_IMX93=y
> +CONFIG_POWER_DOMAIN=y
> +CONFIG_IMX93_BLK_CTRL=y
> +CONFIG_DM_PMIC=y
> +CONFIG_DM_PMIC_PCA9450=y
> +CONFIG_SPL_DM_PMIC_PCA9450=y
> +CONFIG_DM_REGULATOR=y
> +CONFIG_DM_REGULATOR_PCA9450=y
> +CONFIG_DM_REGULATOR_FIXED=y
> +CONFIG_DM_REGULATOR_GPIO=y
> +CONFIG_DM_RTC=y
> +CONFIG_DM_SERIAL=y
> +CONFIG_FSL_LPUART=y
> +CONFIG_SPI=y
> +CONFIG_DM_SPI=y
> +CONFIG_SYSRESET=y
> +CONFIG_SPL_SYSRESET=y
> +CONFIG_SYSRESET_WATCHDOG=y
> +CONFIG_DM_THERMAL=y
> +CONFIG_IMX_TMU=y
> +CONFIG_USB=y
> +CONFIG_SPL_USB_HOST=y
> +CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_GADGET=y
> +CONFIG_SPL_USB_GADGET=y
> +CONFIG_USB_GADGET_MANUFACTURER="PHYTEC"
> +CONFIG_USB_GADGET_VENDOR_NUM=0x1fc9
> +CONFIG_USB_GADGET_PRODUCT_NUM=0x0152
> +CONFIG_CI_UDC=y
> +CONFIG_USB_PORT_AUTO=y
> +CONFIG_ULP_WATCHDOG=y
> +CONFIG_LZO=y
> +CONFIG_BZIP2=y
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Upstream] [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants
2024-11-04 11:25 [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants Christoph Stoidner
2024-11-04 13:07 ` Christoph Stoidner
@ 2024-11-05 7:42 ` Wadim Egorov
2024-11-08 18:02 ` Christoph Stoidner
1 sibling, 1 reply; 5+ messages in thread
From: Wadim Egorov @ 2024-11-05 7:42 UTC (permalink / raw)
To: Christoph Stoidner, u-boot, upstream; +Cc: Mathieu Othacehe
Hi Christoph,
Am 04.11.24 um 12:25 schrieb Christoph Stoidner:
> The phyCORE-i.MX 93 is available in various variants (e.g. different ram
> sizes, eMMC HS400 yes/no). Add a new SOM-scoped defconfig that makes use
> of the hardware introspection of the phycore-imx93 board-code, to detect
> the SOM module variant, and to configure the hardware accordingly. The
> resulting SPL and u-boot binary shall able to boot each phyCORE-i.MX93
> module variant on each carrier board.
I think it would be better to simply rename the current
imx93-phyboard-segin_defconfig to phycore_imx93_defconfig. This is less
confusing and follows the idea of our other SoMs.
>
> Signed-off-by: Christoph Stoidner <c.stoidner@phytec.de>
> Cc: Mathieu Othacehe <m.othacehe@gmail.com>, Christoph Stoidner <c.stoidner@phytec.de>, Stefano Babic <sbabic@denx.de>, Fabio Estevam <festevam@gmail.com>, "NXP i.MX U-Boot Team" <uboot-imx@nxp.com>, Tom Rini <trini@konsulko.com>, Yannic Moog <y.moog@phytec.de>, Primoz Fiser <primoz.fiser@norik.com>, Andrej Picej <andrej.picej@norik.com>, Wadim Egorov <w.egorov@phytec.de>
> ---
> arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi | 14 +-
> board/phytec/phycore_imx93/MAINTAINERS | 1 +
> configs/imx93-phycore_defconfig | 156 ++++++++++++++++++
> 3 files changed, 169 insertions(+), 2 deletions(-)
> create mode 100644 configs/imx93-phycore_defconfig
>
> diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> index 25c778bb07..e84476c38a 100644
> --- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> +++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> @@ -2,15 +2,25 @@
> /*
> * Copyright (C) 2023 PHYTEC Messtechnik GmbH
> * Christoph Stoidner <c.stoidner@phytec.de>
> + * Copyright (C) 2024 PHYTEC Messtechnik GmbH
> *
> * Product homepage:
> - * phyBOARD-Segin carrier board is reused for the i.MX93 design.
> - * https://www.phytec.eu/en/produkte/single-board-computer/phyboard-segin-imx6ul/
> + https://www.phytec.de/produkte/system-on-modules/phycore-imx-91-93/
> */
>
> #include "imx93-u-boot.dtsi"
>
> / {
> +
> + /*
> + * If the u-boot build uses the device tree of a phyCORE-i.MX93 carrier
> + * board (i.E. imx93-phyboard-segin.dts), then this u-boot.dtsi
> + * deactivates all carrier board-specific peripherals. This means that
> + * the resulting SPL and u-boot binary can boot the phyCORE-i.MX 93 module
> + * on each carrier board.
> + */
This comment does not seem to reflect what
imx93-phyboard-segin-u-boot.dtsi is actually doing.
> + model = "PHYTEC phyCORE-i.MX93";
> +
> wdt-reboot {
> compatible = "wdt-reboot";
> wdt = <&wdog3>;
> diff --git a/board/phytec/phycore_imx93/MAINTAINERS b/board/phytec/phycore_imx93/MAINTAINERS
> index cea817ffdc..d6eb5eb287 100644
> --- a/board/phytec/phycore_imx93/MAINTAINERS
> +++ b/board/phytec/phycore_imx93/MAINTAINERS
> @@ -9,5 +9,6 @@ F: arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> F: board/phytec/phycore_imx93/
> F: board/phytec/common/imx93_som_detection.c
> F: board/phytec/common/imx93_som_detection.h
> +F: configs/imx93-phycore_defconfig
> F: configs/imx93-phyboard-segin_defconfig
> F: include/configs/phycore_imx93.h
> diff --git a/configs/imx93-phycore_defconfig b/configs/imx93-phycore_defconfig
Looking at the diff between both imx93 configs I can see that
CONFIG_PHYTEC_SOM_DETECTION is the only relevant differece you added.
The SoM detection should be applied also for the
imx93-phyboard-segin_defconfig. The detection is not related to anything
board related.
Why can't we have a single defconfig?
Regards,
Wadim
> new file mode 100644
> index 0000000000..2c818d01b7
> --- /dev/null
> +++ b/configs/imx93-phycore_defconfig
> @@ -0,0 +1,156 @@
> +CONFIG_ARM=y
> +CONFIG_ARCH_IMX9=y
> +CONFIG_TEXT_BASE=0x80200000
> +CONFIG_SYS_MALLOC_LEN=0x2000000
> +CONFIG_SYS_MALLOC_F_LEN=0x20000
> +CONFIG_SPL_LIBCOMMON_SUPPORT=y
> +CONFIG_SPL_LIBGENERIC_SUPPORT=y
> +CONFIG_NR_DRAM_BANKS=2
> +CONFIG_ENV_SOURCE_FILE="phycore_imx93"
> +CONFIG_ENV_SIZE=0x10000
> +CONFIG_ENV_OFFSET=0x700000
> +CONFIG_IMX_CONFIG="arch/arm/mach-imx/imx9/imximage.cfg"
> +CONFIG_DM_GPIO=y
> +CONFIG_DEFAULT_DEVICE_TREE="imx93-phyboard-segin"
> +CONFIG_SPL_TEXT_BASE=0x2049A000
> +CONFIG_PHYTEC_SOM_DETECTION=y
> +CONFIG_TARGET_PHYCORE_IMX93=y
> +CONFIG_OF_LIBFDT_OVERLAY=y
> +CONFIG_SYS_MONITOR_LEN=524288
> +CONFIG_SPL_SERIAL=y
> +CONFIG_SPL_DRIVERS_MISC=y
> +CONFIG_SPL_STACK=0x20519dd0
> +CONFIG_SPL=y
> +CONFIG_ENV_OFFSET_REDUND=0x720000
> +CONFIG_CMD_DEKBLOB=y
> +CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x88000000
> +CONFIG_SYS_LOAD_ADDR=0x80400000
> +CONFIG_SYS_MEMTEST_START=0x80000000
> +CONFIG_SYS_MEMTEST_END=0x90000000
> +CONFIG_REMAKE_ELF=y
> +# CONFIG_ANDROID_BOOT_IMAGE is not set
> +CONFIG_DISTRO_DEFAULTS=y
> +CONFIG_OF_SYSTEM_SETUP=y
> +CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if test ${doraucboot} = 1; then run raucinit; fi; if run loadimage; then run mmcboot; else run netboot; fi; fi;"
> +CONFIG_DEFAULT_FDT_FILE="oftree"
> +CONFIG_SYS_CBSIZE=2048
> +CONFIG_SYS_PBSIZE=2074
> +CONFIG_ARCH_MISC_INIT=y
> +CONFIG_BOARD_LATE_INIT=y
> +CONFIG_SPL_MAX_SIZE=0x26000
> +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> +CONFIG_SPL_BSS_START_ADDR=0x2051a000
> +CONFIG_SPL_BSS_MAX_SIZE=0x2000
> +CONFIG_SPL_BOARD_INIT=y
> +CONFIG_SPL_BOOTROM_SUPPORT=y
> +CONFIG_SPL_LOAD_IMX_CONTAINER=y
> +CONFIG_IMX_CONTAINER_CFG="arch/arm/mach-imx/imx9/container.cfg"
> +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
> +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1040
> +CONFIG_SPL_I2C=y
> +CONFIG_SPL_POWER=y
> +CONFIG_SPL_WATCHDOG=y
> +CONFIG_SYS_PROMPT="u-boot=> "
> +CONFIG_CMD_ERASEENV=y
> +CONFIG_CMD_NVEDIT_EFI=y
> +CONFIG_CRC32_VERIFY=y
> +CONFIG_CMD_EEPROM=y
> +CONFIG_SYS_I2C_EEPROM_BUS=2
> +CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
> +CONFIG_SYS_EEPROM_SIZE=4096
> +CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=5
> +CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=5
> +CONFIG_CMD_MEMTEST=y
> +CONFIG_CMD_CLK=y
> +CONFIG_CMD_DFU=y
> +CONFIG_CMD_FUSE=y
> +CONFIG_CMD_GPIO=y
> +CONFIG_CMD_I2C=y
> +CONFIG_CMD_MMC=y
> +CONFIG_CMD_POWEROFF=y
> +CONFIG_CMD_USB=y
> +CONFIG_CMD_USB_MASS_STORAGE=y
> +CONFIG_CMD_SNTP=y
> +CONFIG_CMD_CACHE=y
> +CONFIG_CMD_EFIDEBUG=y
> +CONFIG_CMD_RTC=y
> +CONFIG_CMD_TIME=y
> +CONFIG_CMD_GETTIME=y
> +CONFIG_CMD_TIMER=y
> +CONFIG_CMD_REGULATOR=y
> +CONFIG_CMD_HASH=y
> +CONFIG_CMD_EXT4_WRITE=y
> +CONFIG_OF_CONTROL=y
> +CONFIG_SPL_OF_CONTROL=y
> +CONFIG_ENV_OVERWRITE=y
> +CONFIG_ENV_IS_NOWHERE=y
> +CONFIG_ENV_IS_IN_MMC=y
> +CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
> +CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> +CONFIG_SYS_MMC_ENV_DEV=1
> +CONFIG_USE_ETHPRIME=y
> +CONFIG_ETHPRIME="eth1"
> +CONFIG_NET_RANDOM_ETHADDR=y
> +CONFIG_SPL_DM=y
> +CONFIG_SYSCON=y
> +CONFIG_SPL_CLK_IMX93=y
> +CONFIG_CLK_IMX93=y
> +CONFIG_CPU=y
> +CONFIG_CPU_IMX=y
> +CONFIG_DFU_MMC=y
> +CONFIG_DFU_RAM=y
> +CONFIG_IMX_RGPIO2P=y
> +CONFIG_DM_I2C=y
> +CONFIG_SYS_I2C_IMX_LPI2C=y
> +CONFIG_I2C_EEPROM=y
> +CONFIG_SYS_I2C_EEPROM_ADDR=0x50
> +CONFIG_SUPPORT_EMMC_BOOT=y
> +CONFIG_MMC_IO_VOLTAGE=y
> +CONFIG_MMC_UHS_SUPPORT=y
> +CONFIG_MMC_HS400_ES_SUPPORT=y
> +CONFIG_MMC_HS400_SUPPORT=y
> +CONFIG_FSL_USDHC=y
> +CONFIG_PHY_TI_GENERIC=y
> +CONFIG_DM_ETH_PHY=y
> +CONFIG_DWC_ETH_QOS=y
> +CONFIG_DWC_ETH_QOS_IMX=y
> +CONFIG_FEC_MXC=y
> +CONFIG_MII=y
> +CONFIG_MIPI_DPHY_HELPERS=y
> +CONFIG_PHY_IMX93_MIPI_DPHY=y
> +CONFIG_PINCTRL=y
> +CONFIG_SPL_PINCTRL=y
> +CONFIG_PINCTRL_IMX93=y
> +CONFIG_POWER_DOMAIN=y
> +CONFIG_IMX93_BLK_CTRL=y
> +CONFIG_DM_PMIC=y
> +CONFIG_DM_PMIC_PCA9450=y
> +CONFIG_SPL_DM_PMIC_PCA9450=y
> +CONFIG_DM_REGULATOR=y
> +CONFIG_DM_REGULATOR_PCA9450=y
> +CONFIG_DM_REGULATOR_FIXED=y
> +CONFIG_DM_REGULATOR_GPIO=y
> +CONFIG_DM_RTC=y
> +CONFIG_DM_SERIAL=y
> +CONFIG_FSL_LPUART=y
> +CONFIG_SPI=y
> +CONFIG_DM_SPI=y
> +CONFIG_SYSRESET=y
> +CONFIG_SPL_SYSRESET=y
> +CONFIG_SYSRESET_WATCHDOG=y
> +CONFIG_DM_THERMAL=y
> +CONFIG_IMX_TMU=y
> +CONFIG_USB=y
> +CONFIG_SPL_USB_HOST=y
> +CONFIG_USB_EHCI_HCD=y
> +CONFIG_USB_GADGET=y
> +CONFIG_SPL_USB_GADGET=y
> +CONFIG_USB_GADGET_MANUFACTURER="PHYTEC"
> +CONFIG_USB_GADGET_VENDOR_NUM=0x1fc9
> +CONFIG_USB_GADGET_PRODUCT_NUM=0x0152
> +CONFIG_CI_UDC=y
> +CONFIG_USB_PORT_AUTO=y
> +CONFIG_ULP_WATCHDOG=y
> +CONFIG_LZO=y
> +CONFIG_BZIP2=y
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Upstream] [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants
2024-11-05 7:42 ` [Upstream] " Wadim Egorov
@ 2024-11-08 18:02 ` Christoph Stoidner
2024-11-11 8:53 ` Wadim Egorov
0 siblings, 1 reply; 5+ messages in thread
From: Christoph Stoidner @ 2024-11-08 18:02 UTC (permalink / raw)
To: PHYTEC Upstream, Wadim Egorov, u-boot@lists.denx.de; +Cc: m.othacehe@gmail.com
Hi Wadim,
On Di, 2024-11-05 at 08:42 +0100, Wadim Egorov wrote:
> Hi Christoph,
>
> Am 04.11.24 um 12:25 schrieb Christoph Stoidner:
> > The phyCORE-i.MX 93 is available in various variants (e.g.
> > different ram
> > sizes, eMMC HS400 yes/no). Add a new SOM-scoped defconfig that
> > makes use
> > of the hardware introspection of the phycore-imx93 board-code, to
> > detect
> > the SOM module variant, and to configure the hardware accordingly.
> > The
> > resulting SPL and u-boot binary shall able to boot each phyCORE-
> > i.MX93
> > module variant on each carrier board.
>
> I think it would be better to simply rename the current
> imx93-phyboard-segin_defconfig to phycore_imx93_defconfig. This is
> less
> confusing and follows the idea of our other SoMs.
I see. My original reason to keep the existing
imx93-phyboard-segin_defconfig was to avoid any breaking change. And I
thought limiting the existing one to the SOM would be a breaking
change. But a further look to the imx93-phyboard-segin_defconfig
confirms what you said. It is already scoped to the SOM, only the name
"phyboard" is confusing.
So, I will rename imx93-phyboard-segin_defconfig and just add the SOM
detection. I will send a v2 for that.
Just one more note: Other than you suggested above I will use the final
name "imx93-phycore_defconfig" instead of "phycore_imx93_defconfig".
Although this does not match the Phytec names, it does fit the existing
naming scheme in the upstream u-boot. I talked a while ago with Teresa
about that. The existing phytec names have historically grown, and
later the naming scheme with imx* prefix has established in upstream.
Teresa and me agreed that we should use the upstream way.
>
> >
> > Signed-off-by: Christoph Stoidner <c.stoidner@phytec.de>
> > Cc: Mathieu Othacehe <m.othacehe@gmail.com>, Christoph Stoidner
> > <c.stoidner@phytec.de>, Stefano Babic <sbabic@denx.de>, Fabio
> > Estevam <festevam@gmail.com>, "NXP i.MX U-Boot Team" <uboot-
> > imx@nxp.com>, Tom Rini <trini@konsulko.com>, Yannic Moog
> > <y.moog@phytec.de>, Primoz Fiser <primoz.fiser@norik.com>, Andrej
> > Picej <andrej.picej@norik.com>, Wadim Egorov <w.egorov@phytec.de>
> > ---
> > arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi | 14 +-
> > board/phytec/phycore_imx93/MAINTAINERS | 1 +
> > configs/imx93-phycore_defconfig | 156
> > ++++++++++++++++++
> > 3 files changed, 169 insertions(+), 2 deletions(-)
> > create mode 100644 configs/imx93-phycore_defconfig
> >
> > diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> > b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> > index 25c778bb07..e84476c38a 100644
> > --- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> > +++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
> > @@ -2,15 +2,25 @@
> > /*
> > * Copyright (C) 2023 PHYTEC Messtechnik GmbH
> > * Christoph Stoidner <c.stoidner@phytec.de>
> > + * Copyright (C) 2024 PHYTEC Messtechnik GmbH
> > *
> > * Product homepage:
> > - * phyBOARD-Segin carrier board is reused for the i.MX93 design.
> > - * https://www.phytec.eu/en/produkte/single-board-
> > computer/phyboard-segin-imx6ul/
> > + https://www.phytec.de/produkte/system-on-modules/phycore-imx-
> > 91-93/
> > */
> >
> > #include "imx93-u-boot.dtsi"
> >
> > / {
> > +
> > + /*
> > + * If the u-boot build uses the device tree of a phyCORE-
> > i.MX93 carrier
> > + * board (i.E. imx93-phyboard-segin.dts), then this u-
> > boot.dtsi
> > + * deactivates all carrier board-specific peripherals. This
> > means that
> > + * the resulting SPL and u-boot binary can boot the
> > phyCORE-i.MX 93 module
> > + * on each carrier board.
> > + */
> This comment does not seem to reflect what
> imx93-phyboard-segin-u-boot.dtsi is actually doing.
I dont know what you mean. Do you see any carrier board peripherals
that keep activated? Or anything else? What missmatch do you mean?
>
>
> > + model = "PHYTEC phyCORE-i.MX93";
> > +
> > wdt-reboot {
> > compatible = "wdt-reboot";
> > wdt = <&wdog3>;
> > diff --git a/board/phytec/phycore_imx93/MAINTAINERS
> > b/board/phytec/phycore_imx93/MAINTAINERS
> > index cea817ffdc..d6eb5eb287 100644
> > --- a/board/phytec/phycore_imx93/MAINTAINERS
> > +++ b/board/phytec/phycore_imx93/MAINTAINERS
> > @@ -9,5 +9,6 @@ F: arch/arm/dts/imx93-phyboard-segin-u-
> > boot.dtsi
> > F: board/phytec/phycore_imx93/
> > F: board/phytec/common/imx93_som_detection.c
> > F: board/phytec/common/imx93_som_detection.h
> > +F: configs/imx93-phycore_defconfig
> > F: configs/imx93-phyboard-segin_defconfig
> > F: include/configs/phycore_imx93.h
> > diff --git a/configs/imx93-phycore_defconfig b/configs/imx93-
> > phycore_defconfig
>
> Looking at the diff between both imx93 configs I can see that
> g is the only relevant differece you added.
>
> The SoM detection should be applied also for the
> imx93-phyboard-segin_defconfig. The detection is not related to
> anything
> board related.
>
> Why can't we have a single defconfig?
True. This will be solved in a v2 (see my response in that mail
on top).
Thanks,
Christoph
>
> Regards,
> Wadim
>
> > new file mode 100644
> > index 0000000000..2c818d01b7
> > --- /dev/null
> > +++ b/configs/imx93-phycore_defconfig
> > @@ -0,0 +1,156 @@
> > +CONFIG_ARM=y
> > +CONFIG_ARCH_IMX9=y
> > +CONFIG_TEXT_BASE=0x80200000
> > +CONFIG_SYS_MALLOC_LEN=0x2000000
> > +CONFIG_SYS_MALLOC_F_LEN=0x20000
> > +CONFIG_SPL_LIBCOMMON_SUPPORT=y
> > +CONFIG_SPL_LIBGENERIC_SUPPORT=y
> > +CONFIG_NR_DRAM_BANKS=2
> > +CONFIG_ENV_SOURCE_FILE="phycore_imx93"
> > +CONFIG_ENV_SIZE=0x10000
> > +CONFIG_ENV_OFFSET=0x700000
> > +CONFIG_IMX_CONFIG="arch/arm/mach-imx/imx9/imximage.cfg"
> > +CONFIG_DM_GPIO=y
> > +CONFIG_DEFAULT_DEVICE_TREE="imx93-phyboard-segin"
> > +CONFIG_SPL_TEXT_BASE=0x2049A000
> > +CONFIG_PHYTEC_SOM_DETECTION=y
> > +CONFIG_TARGET_PHYCORE_IMX93=y
> > +CONFIG_OF_LIBFDT_OVERLAY=y
> > +CONFIG_SYS_MONITOR_LEN=524288
> > +CONFIG_SPL_SERIAL=y
> > +CONFIG_SPL_DRIVERS_MISC=y
> > +CONFIG_SPL_STACK=0x20519dd0
> > +CONFIG_SPL=y
> > +CONFIG_ENV_OFFSET_REDUND=0x720000
> > +CONFIG_CMD_DEKBLOB=y
> > +CONFIG_SPL_IMX_ROMAPI_LOADADDR=0x88000000
> > +CONFIG_SYS_LOAD_ADDR=0x80400000
> > +CONFIG_SYS_MEMTEST_START=0x80000000
> > +CONFIG_SYS_MEMTEST_END=0x90000000
> > +CONFIG_REMAKE_ELF=y
> > +# CONFIG_ANDROID_BOOT_IMAGE is not set
> > +CONFIG_DISTRO_DEFAULTS=y
> > +CONFIG_OF_SYSTEM_SETUP=y
> > +CONFIG_BOOTCOMMAND="mmc dev ${mmcdev}; if mmc rescan; then if test
> > ${doraucboot} = 1; then run raucinit; fi; if run loadimage; then
> > run mmcboot; else run netboot; fi; fi;"
> > +CONFIG_DEFAULT_FDT_FILE="oftree"
> > +CONFIG_SYS_CBSIZE=2048
> > +CONFIG_SYS_PBSIZE=2074
> > +CONFIG_ARCH_MISC_INIT=y
> > +CONFIG_BOARD_LATE_INIT=y
> > +CONFIG_SPL_MAX_SIZE=0x26000
> > +CONFIG_SPL_HAS_BSS_LINKER_SECTION=y
> > +CONFIG_SPL_BSS_START_ADDR=0x2051a000
> > +CONFIG_SPL_BSS_MAX_SIZE=0x2000
> > +CONFIG_SPL_BOARD_INIT=y
> > +CONFIG_SPL_BOOTROM_SUPPORT=y
> > +CONFIG_SPL_LOAD_IMX_CONTAINER=y
> > +CONFIG_IMX_CONTAINER_CFG="arch/arm/mach-imx/imx9/container.cfg"
> > +# CONFIG_SPL_SHARES_INIT_SP_ADDR is not set
> > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_USE_SECTOR=y
> > +CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_SECTOR=0x1040
> > +CONFIG_SPL_I2C=y
> > +CONFIG_SPL_POWER=y
> > +CONFIG_SPL_WATCHDOG=y
> > +CONFIG_SYS_PROMPT="u-boot=> "
> > +CONFIG_CMD_ERASEENV=y
> > +CONFIG_CMD_NVEDIT_EFI=y
> > +CONFIG_CRC32_VERIFY=y
> > +CONFIG_CMD_EEPROM=y
> > +CONFIG_SYS_I2C_EEPROM_BUS=2
> > +CONFIG_SYS_I2C_EEPROM_ADDR_LEN=2
> > +CONFIG_SYS_EEPROM_SIZE=4096
> > +CONFIG_SYS_EEPROM_PAGE_WRITE_BITS=5
> > +CONFIG_SYS_EEPROM_PAGE_WRITE_DELAY_MS=5
> > +CONFIG_CMD_MEMTEST=y
> > +CONFIG_CMD_CLK=y
> > +CONFIG_CMD_DFU=y
> > +CONFIG_CMD_FUSE=y
> > +CONFIG_CMD_GPIO=y
> > +CONFIG_CMD_I2C=y
> > +CONFIG_CMD_MMC=y
> > +CONFIG_CMD_POWEROFF=y
> > +CONFIG_CMD_USB=y
> > +CONFIG_CMD_USB_MASS_STORAGE=y
> > +CONFIG_CMD_SNTP=y
> > +CONFIG_CMD_CACHE=y
> > +CONFIG_CMD_EFIDEBUG=y
> > +CONFIG_CMD_RTC=y
> > +CONFIG_CMD_TIME=y
> > +CONFIG_CMD_GETTIME=y
> > +CONFIG_CMD_TIMER=y
> > +CONFIG_CMD_REGULATOR=y
> > +CONFIG_CMD_HASH=y
> > +CONFIG_CMD_EXT4_WRITE=y
> > +CONFIG_OF_CONTROL=y
> > +CONFIG_SPL_OF_CONTROL=y
> > +CONFIG_ENV_OVERWRITE=y
> > +CONFIG_ENV_IS_NOWHERE=y
> > +CONFIG_ENV_IS_IN_MMC=y
> > +CONFIG_SYS_REDUNDAND_ENVIRONMENT=y
> > +CONFIG_SYS_RELOC_GD_ENV_ADDR=y
> > +CONFIG_SYS_MMC_ENV_DEV=1
> > +CONFIG_USE_ETHPRIME=y
> > +CONFIG_ETHPRIME="eth1"
> > +CONFIG_NET_RANDOM_ETHADDR=y
> > +CONFIG_SPL_DM=y
> > +CONFIG_SYSCON=y
> > +CONFIG_SPL_CLK_IMX93=y
> > +CONFIG_CLK_IMX93=y
> > +CONFIG_CPU=y
> > +CONFIG_CPU_IMX=y
> > +CONFIG_DFU_MMC=y
> > +CONFIG_DFU_RAM=y
> > +CONFIG_IMX_RGPIO2P=y
> > +CONFIG_DM_I2C=y
> > +CONFIG_SYS_I2C_IMX_LPI2C=y
> > +CONFIG_I2C_EEPROM=y
> > +CONFIG_SYS_I2C_EEPROM_ADDR=0x50
> > +CONFIG_SUPPORT_EMMC_BOOT=y
> > +CONFIG_MMC_IO_VOLTAGE=y
> > +CONFIG_MMC_UHS_SUPPORT=y
> > +CONFIG_MMC_HS400_ES_SUPPORT=y
> > +CONFIG_MMC_HS400_SUPPORT=y
> > +CONFIG_FSL_USDHC=y
> > +CONFIG_PHY_TI_GENERIC=y
> > +CONFIG_DM_ETH_PHY=y
> > +CONFIG_DWC_ETH_QOS=y
> > +CONFIG_DWC_ETH_QOS_IMX=y
> > +CONFIG_FEC_MXC=y
> > +CONFIG_MII=y
> > +CONFIG_MIPI_DPHY_HELPERS=y
> > +CONFIG_PHY_IMX93_MIPI_DPHY=y
> > +CONFIG_PINCTRL=y
> > +CONFIG_SPL_PINCTRL=y
> > +CONFIG_PINCTRL_IMX93=y
> > +CONFIG_POWER_DOMAIN=y
> > +CONFIG_IMX93_BLK_CTRL=y
> > +CONFIG_DM_PMIC=y
> > +CONFIG_DM_PMIC_PCA9450=y
> > +CONFIG_SPL_DM_PMIC_PCA9450=y
> > +CONFIG_DM_REGULATOR=y
> > +CONFIG_DM_REGULATOR_PCA9450=y
> > +CONFIG_DM_REGULATOR_FIXED=y
> > +CONFIG_DM_REGULATOR_GPIO=y
> > +CONFIG_DM_RTC=y
> > +CONFIG_DM_SERIAL=y
> > +CONFIG_FSL_LPUART=y
> > +CONFIG_SPI=y
> > +CONFIG_DM_SPI=y
> > +CONFIG_SYSRESET=y
> > +CONFIG_SPL_SYSRESET=y
> > +CONFIG_SYSRESET_WATCHDOG=y
> > +CONFIG_DM_THERMAL=y
> > +CONFIG_IMX_TMU=y
> > +CONFIG_USB=y
> > +CONFIG_SPL_USB_HOST=y
> > +CONFIG_USB_EHCI_HCD=y
> > +CONFIG_USB_GADGET=y
> > +CONFIG_SPL_USB_GADGET=y
> > +CONFIG_USB_GADGET_MANUFACTURER="PHYTEC"
> > +CONFIG_USB_GADGET_VENDOR_NUM=0x1fc9
> > +CONFIG_USB_GADGET_PRODUCT_NUM=0x0152
> > +CONFIG_CI_UDC=y
> > +CONFIG_USB_PORT_AUTO=y
> > +CONFIG_ULP_WATCHDOG=y
> > +CONFIG_LZO=y
> > +CONFIG_BZIP2=y
>
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Upstream] [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants
2024-11-08 18:02 ` Christoph Stoidner
@ 2024-11-11 8:53 ` Wadim Egorov
0 siblings, 0 replies; 5+ messages in thread
From: Wadim Egorov @ 2024-11-11 8:53 UTC (permalink / raw)
To: Christoph Stoidner, PHYTEC Upstream, u-boot@lists.denx.de
Cc: m.othacehe@gmail.com
Am 08.11.24 um 19:02 schrieb Christoph Stoidner:
> Hi Wadim,
>
> On Di, 2024-11-05 at 08:42 +0100, Wadim Egorov wrote:
>> Hi Christoph,
>>
>> Am 04.11.24 um 12:25 schrieb Christoph Stoidner:
>>> The phyCORE-i.MX 93 is available in various variants (e.g.
>>> different ram
>>> sizes, eMMC HS400 yes/no). Add a new SOM-scoped defconfig that
>>> makes use
>>> of the hardware introspection of the phycore-imx93 board-code, to
>>> detect
>>> the SOM module variant, and to configure the hardware accordingly.
>>> The
>>> resulting SPL and u-boot binary shall able to boot each phyCORE-
>>> i.MX93
>>> module variant on each carrier board.
>>
>> I think it would be better to simply rename the current
>> imx93-phyboard-segin_defconfig to phycore_imx93_defconfig. This is
>> less
>> confusing and follows the idea of our other SoMs.
>
> I see. My original reason to keep the existing
> imx93-phyboard-segin_defconfig was to avoid any breaking change. And I
> thought limiting the existing one to the SOM would be a breaking
> change. But a further look to the imx93-phyboard-segin_defconfig
> confirms what you said. It is already scoped to the SOM, only the name
> "phyboard" is confusing.
>
> So, I will rename imx93-phyboard-segin_defconfig and just add the SOM
> detection. I will send a v2 for that.
>
> Just one more note: Other than you suggested above I will use the final
> name "imx93-phycore_defconfig" instead of "phycore_imx93_defconfig".
> Although this does not match the Phytec names, it does fit the existing
> naming scheme in the upstream u-boot. I talked a while ago with Teresa
> about that. The existing phytec names have historically grown, and
> later the naming scheme with imx* prefix has established in upstream.
> Teresa and me agreed that we should use the upstream way.
>
>>
>>>
>>> Signed-off-by: Christoph Stoidner <c.stoidner@phytec.de>
>>> Cc: Mathieu Othacehe <m.othacehe@gmail.com>, Christoph Stoidner
>>> <c.stoidner@phytec.de>, Stefano Babic <sbabic@denx.de>, Fabio
>>> Estevam <festevam@gmail.com>, "NXP i.MX U-Boot Team" <uboot-
>>> imx@nxp.com>, Tom Rini <trini@konsulko.com>, Yannic Moog
>>> <y.moog@phytec.de>, Primoz Fiser <primoz.fiser@norik.com>, Andrej
>>> Picej <andrej.picej@norik.com>, Wadim Egorov <w.egorov@phytec.de>
>>> ---
>>> arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi | 14 +-
>>> board/phytec/phycore_imx93/MAINTAINERS | 1 +
>>> configs/imx93-phycore_defconfig | 156
>>> ++++++++++++++++++
>>> 3 files changed, 169 insertions(+), 2 deletions(-)
>>> create mode 100644 configs/imx93-phycore_defconfig
>>>
>>> diff --git a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
>>> b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
>>> index 25c778bb07..e84476c38a 100644
>>> --- a/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
>>> +++ b/arch/arm/dts/imx93-phyboard-segin-u-boot.dtsi
>>> @@ -2,15 +2,25 @@
>>> /*
>>> * Copyright (C) 2023 PHYTEC Messtechnik GmbH
>>> * Christoph Stoidner <c.stoidner@phytec.de>
>>> + * Copyright (C) 2024 PHYTEC Messtechnik GmbH
>>> *
>>> * Product homepage:
>>> - * phyBOARD-Segin carrier board is reused for the i.MX93 design.
>>> - * https://www.phytec.eu/en/produkte/single-board-
>>> computer/phyboard-segin-imx6ul/
>>> + https://www.phytec.de/produkte/system-on-modules/phycore-imx-
>>> 91-93/
>>> */
>>>
>>> #include "imx93-u-boot.dtsi"
>>>
>>> / {
>>> +
>>> + /*
>>> + * If the u-boot build uses the device tree of a phyCORE-
>>> i.MX93 carrier
>>> + * board (i.E. imx93-phyboard-segin.dts), then this u-
>>> boot.dtsi
>>> + * deactivates all carrier board-specific peripherals. This
>>> means that
>>> + * the resulting SPL and u-boot binary can boot the
>>> phyCORE-i.MX 93 module
>>> + * on each carrier board.
>>> + */
>> This comment does not seem to reflect what
>> imx93-phyboard-segin-u-boot.dtsi is actually doing.
>
> I dont know what you mean. Do you see any carrier board peripherals
> that keep activated? Or anything else? What missmatch do you mean?
You are not deactivating anything in this u-boot.dtsi file so the
comment does not make a lot of sense to me.
Regards,
Wadim
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2024-11-11 8:54 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-11-04 11:25 [PATCH 3/3] board: phytec: imx93: Add phyCORE-i.MX93 support all SOM variants Christoph Stoidner
2024-11-04 13:07 ` Christoph Stoidner
2024-11-05 7:42 ` [Upstream] " Wadim Egorov
2024-11-08 18:02 ` Christoph Stoidner
2024-11-11 8:53 ` Wadim Egorov
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox