DistroKit Mailinglist
 help / color / mirror / Atom feed
From: Ahmad Fatoum <a.fatoum@pengutronix.de>
To: Fabian Pflug <f.pflug@pengutronix.de>, distrokit@pengutronix.de
Subject: Re: [DistroKit] [PATCH v2] v8a: Add support for tq-ma93xxca
Date: Wed, 23 Apr 2025 15:53:45 +0200	[thread overview]
Message-ID: <e3dd00bd-9cf7-4b3d-a574-2b7eb472817c@pengutronix.de> (raw)
In-Reply-To: <20250423134941.711485-1-f.pflug@pengutronix.de>

On 4/23/25 15:49, Fabian Pflug wrote:
> A new board, with an IMX93 processor.
> 
> - Barebox patch has been send upstream and accecpted into next
> - magic number ist chosen at random
> - has been tested on real hardware
> 
> Signed-off-by: Fabian Pflug <f.pflug@pengutronix.de>

Acked-by: Ahmad Fatoum <a.fatoum@pengutronix.de>

Thanks,
Ahmad

> ---
> There is still a small issue with USB-WLAN module not working.
> 
> v1 -> v2:
>   - reworded uploading in docs (Ahmad)
>   - fix spelling error in commit message (Ahmad)
>   - added barebox-env/bootloader GPT partition (Ahmad)
>   https://lore.distrokit.org/distrokit/37a1bdb7-74f5-4c4f-a2e6-82ea97d347df@pengutronix.de/T/#u
> ---
>  .../barebox-common-defaultenv/init/bootsource |  2 +-
>  configs/platform-v8a/barebox.config           | 25 +++++++---
>  .../platform-v8a/config/images/imx93.config   | 24 ++++++++++
>  configs/platform-v8a/dts/bootstate.dtsi       | 21 +++++++++
>  configs/platform-v8a/kernelconfig             |  9 ++--
>  ...ma93xx-add-dummy-supply-to-regulator.patch | 38 +++++++++++++++
>  .../patches/barebox-2025.03.0/series          |  1 +
>  configs/platform-v8a/platformconfig           |  5 +-
>  .../platforms/image-tq-mba93xxca.in           | 10 ++++
>  configs/platform-v8a/rules/firmware-imx.make  |  1 +
>  .../rules/image-tq-mba93xxca.make             | 35 ++++++++++++++
>  doc/hardware.rst                              |  1 +
>  doc/hardware_v8a_tqma93xxca.rst               | 47 +++++++++++++++++++
>  13 files changed, 206 insertions(+), 13 deletions(-)
>  create mode 100644 configs/platform-v8a/config/images/imx93.config
>  create mode 100644 configs/platform-v8a/patches/barebox-2025.03.0/0001-ARM-dts-tqma93xx-add-dummy-supply-to-regulator.patch
>  create mode 100644 configs/platform-v8a/patches/barebox-2025.03.0/series
>  create mode 100644 configs/platform-v8a/platforms/image-tq-mba93xxca.in
>  create mode 100644 configs/platform-v8a/rules/image-tq-mba93xxca.make
>  create mode 100644 doc/hardware_v8a_tqma93xxca.rst
> 
> diff --git a/configs/platform-v8a/barebox-common-defaultenv/init/bootsource b/configs/platform-v8a/barebox-common-defaultenv/init/bootsource
> index aa1d06d..19a0429 100644
> --- a/configs/platform-v8a/barebox-common-defaultenv/init/bootsource
> +++ b/configs/platform-v8a/barebox-common-defaultenv/init/bootsource
> @@ -10,7 +10,7 @@ if [ "$bootsource" = mmc ]; then
>  	global.boot.default="mmc$bootsource_instance net"
>  fi
>  
> -if of_compatible -k radxa,rock3a tq,imx8mp-tqma8mpql-mba8mpxl; then
> +if of_compatible -k radxa,rock3a tq,imx8mp-tqma8mpql-mba8mpxl tq,imx93-tqma9352; then
>  	global.boot.default="bootchooser net"
>  	global bootchooser.state_prefix="state.bootstate"
>  	global bootchooser.targets="system0 system1"
> diff --git a/configs/platform-v8a/barebox.config b/configs/platform-v8a/barebox.config
> index 7d3794a..1576088 100644
> --- a/configs/platform-v8a/barebox.config
> +++ b/configs/platform-v8a/barebox.config
> @@ -48,6 +48,8 @@ CONFIG_ARCH_IMX8MM=y
>  CONFIG_ARCH_IMX8MN=y
>  CONFIG_ARCH_IMX8MP=y
>  CONFIG_ARCH_IMX8MQ=y
> +CONFIG_ARCH_IMX9=y
> +CONFIG_ARCH_IMX93=y
>  
>  #
>  # i.MX8M boards
> @@ -72,7 +74,7 @@ CONFIG_MACH_TQ_MBA8MPXL=y
>  #
>  # i.MX93 boards
>  #
> -# CONFIG_MACH_TQMA93XX is not set
> +CONFIG_MACH_TQMA93XX=y
>  # end of i.MX boards
>  
>  #
> @@ -80,7 +82,10 @@ CONFIG_MACH_TQ_MBA8MPXL=y
>  #
>  # CONFIG_IMX_IIM is not set
>  CONFIG_IMX_SAVE_BOOTROM_LOG=y
> +CONFIG_HAB=y
> +CONFIG_AHAB=y
>  # CONFIG_HABV4 is not set
> +# CONFIG_HAB_CERTS_ENV is not set
>  # end of i.MX specific settings
>  
>  #
> @@ -138,6 +143,7 @@ CONFIG_BOARD_GENERIC_DT=y
>  # CONFIG_BOARD_GENERIC_FIT is not set
>  # end of General architecture-dependent options
>  
> +CONFIG_BOARD_TQ=y
>  CONFIG_CC_IS_GCC=y
>  CONFIG_GCC_VERSION=140201
>  CONFIG_CLANG_VERSION=0
> @@ -517,6 +523,7 @@ CONFIG_CMD_USB=y
>  CONFIG_CMD_USBGADGET=y
>  CONFIG_CMD_WD=y
>  CONFIG_CMD_WD_DEFAULT_TIMOUT=0
> +# CONFIG_CMD_HAB is not set
>  # end of Hardware manipulation
>  
>  #
> @@ -591,7 +598,7 @@ CONFIG_SERIAL_DEV_BUS=y
>  CONFIG_DRIVER_SERIAL_IMX=y
>  CONFIG_DRIVER_SERIAL_NS16550=y
>  # CONFIG_DRIVER_SERIAL_CADENCE is not set
> -# CONFIG_DRIVER_SERIAL_LPUART32 is not set
> +CONFIG_DRIVER_SERIAL_LPUART32=y
>  # CONFIG_SERIAL_SIFIVE is not set
>  # end of serial drivers
>  
> @@ -664,7 +671,7 @@ CONFIG_SPI_MEM=y
>  CONFIG_DRIVER_SPI_IMX=y
>  CONFIG_DRIVER_SPI_IMX_2_3=y
>  # CONFIG_DRIVER_SPI_LITEX_SPIFLASH is not set
> -# CONFIG_SPI_NXP_FLEXSPI is not set
> +CONFIG_SPI_NXP_FLEXSPI=y
>  CONFIG_SPI_ROCKCHIP=y
>  # end of SPI drivers
>  
> @@ -675,7 +682,7 @@ CONFIG_I2C=y
>  #
>  # CONFIG_I2C_GPIO is not set
>  CONFIG_I2C_IMX=y
> -# CONFIG_I2C_IMX_LPI2C is not set
> +CONFIG_I2C_IMX_LPI2C=y
>  # CONFIG_I2C_DESIGNWARE is not set
>  # CONFIG_I2C_MV64XXX is not set
>  CONFIG_I2C_RK3X=y
> @@ -748,7 +755,7 @@ CONFIG_USB_DWC3=y
>  # CONFIG_USB_DWC3_GADGET is not set
>  CONFIG_USB_DWC3_DUAL_ROLE=y
>  CONFIG_USB_DWC3_OF_SIMPLE=y
> -# CONFIG_USB_EHCI is not set
> +CONFIG_USB_EHCI=y
>  CONFIG_USB_XHCI=y
>  # CONFIG_USB_ULPI is not set
>  CONFIG_USB_OTGDEV=y
> @@ -908,7 +915,8 @@ CONFIG_GPIO_GENERIC=y
>  # CONFIG_GPIO_74XX_MMIO is not set
>  # CONFIG_GPIO_GENERIC_PLATFORM is not set
>  CONFIG_GPIO_IMX=y
> -# CONFIG_GPIO_PCA953X is not set
> +CONFIG_GPIO_VF610=y
> +CONFIG_GPIO_PCA953X=y
>  # CONFIG_GPIO_PCF857X is not set
>  # CONFIG_GPIO_PL061 is not set
>  CONFIG_GPIO_ROCKCHIP=y
> @@ -934,6 +942,7 @@ CONFIG_NVMEM=y
>  # CONFIG_NVMEM_SNVS_LPGPR is not set
>  CONFIG_IMX_OCOTP=y
>  # CONFIG_IMX_OCOTP_WRITE is not set
> +# CONFIG_IMX_OCOTP_ELE is not set
>  # CONFIG_EEPROM_93XX46 is not set
>  CONFIG_NVMEM_ROCKCHIP_OTP=y
>  
> @@ -1064,6 +1073,7 @@ CONFIG_IMX8M_BLK_CTRL=y
>  #
>  CONFIG_IMX_DRAM=y
>  CONFIG_IMX8M_DRAM=y
> +CONFIG_IMX9_DRAM=y
>  # end of i.MX DDR controllers
>  
>  CONFIG_REBOOT_MODE=y
> @@ -1216,6 +1226,7 @@ CONFIG_PBL_STACKPROTECTOR_NONE=y
>  # Crypto support
>  #
>  CONFIG_CRC32=y
> +CONFIG_CRC_ITU_T=y
>  CONFIG_DIGEST=y
>  CONFIG_HAVE_DIGEST_MD5=y
>  CONFIG_HAVE_DIGEST_SHA1=y
> @@ -1249,6 +1260,7 @@ CONFIG_FIRMWARE_IMX8MM_ATF=y
>  CONFIG_FIRMWARE_IMX8MN_ATF=y
>  CONFIG_FIRMWARE_IMX8MP_ATF=y
>  CONFIG_FIRMWARE_IMX8MQ_ATF=y
> +CONFIG_FIRMWARE_IMX93_ATF=y
>  # end of Firmware files
>  
>  #
> @@ -1256,6 +1268,7 @@ CONFIG_FIRMWARE_IMX8MQ_ATF=y
>  #
>  # CONFIG_COMPILE_HOST_TOOLS is not set
>  CONFIG_ARCH_IMX_USBLOADER=y
> +CONFIG_IMX9_IMAGE=y
>  CONFIG_RK_IMAGE=y
>  CONFIG_RK_USB_LOADER=y
>  # end of Host Tools
> diff --git a/configs/platform-v8a/config/images/imx93.config b/configs/platform-v8a/config/images/imx93.config
> new file mode 100644
> index 0000000..1efd2d2
> --- /dev/null
> +++ b/configs/platform-v8a/config/images/imx93.config
> @@ -0,0 +1,24 @@
> +image @IMAGE@ {
> +	hdimage {
> +		align = 32k
> +		partition-table-type = gpt
> +	}
> +	partition barebox {
> +		image = "@BAREBOX_IMAGE@"
> +		offset = 32k
> +		size = 2528k # = 2,5M - 32k to align at 512k
> +	}
> +	partition barebox-environment {
> +		# is not used by barebox at the moment, because there is an environment in the SPI flash
> +		size = 1M
> +		partition-type-uuid = barebox-env
> +	}
> +	partition barebox-state {
> +		size = 512k
> +		partition-type-uuid = barebox-state
> +	}
> +	partition root-A {
> +		image = "root.ext2"
> +		partition-type-uuid = root-arm64
> +	}
> +}
> diff --git a/configs/platform-v8a/dts/bootstate.dtsi b/configs/platform-v8a/dts/bootstate.dtsi
> index 1a8fe3f..4d16623 100644
> --- a/configs/platform-v8a/dts/bootstate.dtsi
> +++ b/configs/platform-v8a/dts/bootstate.dtsi
> @@ -40,6 +40,27 @@
>  
>  #endif
>  
> +/** TQ-Systems i.MX93 TQMa93xxLA/TQMa93xxCA on MBa93xxCA starter kit **********/
> +#ifdef imx93_tqma9352_mba93xxca_dts
> +/ {
> +	aliases {
> +		state = &state_sd;
> +	};
> +
> +	state_sd: state {
> +		#address-cells = <1>;
> +		#size-cells = <1>;
> +		compatible = "barebox,state";
> +		magic = <0xd46d4d28>;
> +		backend = <&usdhc2>;   // via GPT Type UUID
> +		backend-type = "raw";
> +		backend-storage-type = "direct";
> +		backend-stridesize = <0x40>;
> +	};
> +};
> +
> +#endif
> +
>  /** Generic bootstate node for all platforms **********************************/
>  / {
>  	state: state {
> diff --git a/configs/platform-v8a/kernelconfig b/configs/platform-v8a/kernelconfig
> index 3e226b9..0513e64 100644
> --- a/configs/platform-v8a/kernelconfig
> +++ b/configs/platform-v8a/kernelconfig
> @@ -2313,7 +2313,8 @@ CONFIG_SERIAL_CORE_CONSOLE=y
>  # CONFIG_SERIAL_XILINX_PS_UART is not set
>  # CONFIG_SERIAL_ARC is not set
>  # CONFIG_SERIAL_RP2 is not set
> -# CONFIG_SERIAL_FSL_LPUART is not set
> +CONFIG_SERIAL_FSL_LPUART=y
> +CONFIG_SERIAL_FSL_LPUART_CONSOLE=y
>  # CONFIG_SERIAL_FSL_LINFLEXUART is not set
>  # CONFIG_SERIAL_CONEXANT_DIGICOLOR is not set
>  # CONFIG_SERIAL_SPRD is not set
> @@ -2564,7 +2565,7 @@ CONFIG_PINCTRL_IMX8MP=y
>  CONFIG_PINCTRL_IMX8MQ=y
>  # CONFIG_PINCTRL_IMX8ULP is not set
>  # CONFIG_PINCTRL_IMX91 is not set
> -# CONFIG_PINCTRL_IMX93 is not set
> +CONFIG_PINCTRL_IMX93=y
>  CONFIG_PINCTRL_MVEBU=y
>  CONFIG_PINCTRL_ARMADA_AP806=y
>  CONFIG_PINCTRL_ARMADA_CP110=y
> @@ -3986,8 +3987,8 @@ CONFIG_CLK_IMX8MN=y
>  CONFIG_CLK_IMX8MP=y
>  CONFIG_CLK_IMX8MQ=y
>  # CONFIG_CLK_IMX8ULP is not set
> -# CONFIG_CLK_IMX93 is not set
> -# CONFIG_CLK_IMX95_BLK_CTL is not set
> +CONFIG_CLK_IMX93=y
> +CONFIG_CLK_IMX95_BLK_CTL=y
>  CONFIG_ARMADA_AP_CP_HELPER=y
>  CONFIG_ARMADA_37XX_CLK=y
>  CONFIG_ARMADA_AP806_SYSCON=y
> diff --git a/configs/platform-v8a/patches/barebox-2025.03.0/0001-ARM-dts-tqma93xx-add-dummy-supply-to-regulator.patch b/configs/platform-v8a/patches/barebox-2025.03.0/0001-ARM-dts-tqma93xx-add-dummy-supply-to-regulator.patch
> new file mode 100644
> index 0000000..11786ad
> --- /dev/null
> +++ b/configs/platform-v8a/patches/barebox-2025.03.0/0001-ARM-dts-tqma93xx-add-dummy-supply-to-regulator.patch
> @@ -0,0 +1,38 @@
> +From b46d4de70f4b9b96ee5277037dd79ba2d7f75751 Mon Sep 17 00:00:00 2001
> +From: Fabian Pflug <f.pflug@pengutronix.de>
> +Date: Thu, 17 Apr 2025 10:35:16 +0200
> +Subject: [PATCH] ARM: dts: tqma93xx add dummy supply to regulator
> +
> +The regulator for the usdhc2 references the BUCK4 as its input.
> +The BUCK4 is part of the pca9451, which in turn is not a regulator
> +in barebox, so there is a problem during initialisation:
> +
> +WARNING: imx-esdhc 42860000.mmc@42860000.of: Failed to get 'vmmc' regulator (ignored)
> +
> +Since the dependency could not be resolved, the reg_usdhc2_vmmc
> +regulator is not correctly initialized, leaving the gpio in a floating
> +state, which results in the GPIO being low, which in turn disables
> +the SD-Card.
> +
> +Signed-off-by: Fabian Pflug <f.pflug@pengutronix.de>
> +---
> + arch/arm/dts/imx93-tqma93xx.dtsi | 3 +++
> + 1 file changed, 3 insertions(+)
> +
> +diff --git a/arch/arm/dts/imx93-tqma93xx.dtsi b/arch/arm/dts/imx93-tqma93xx.dtsi
> +index 40425e39a7..aafeadc275 100644
> +--- a/arch/arm/dts/imx93-tqma93xx.dtsi
> ++++ b/arch/arm/dts/imx93-tqma93xx.dtsi
> +@@ -15,6 +15,9 @@ pca9451a: pmic@25 {
> + 		reg = <0x25>;
> + 		pinctrl-names = "default";
> + 		pinctrl-0 = <&pinctrl_pca9451>;
> ++		regulators {
> ++			barebox,allow-dummy-supply;
> ++		};
> + 	};
> + };
> + 
> +-- 
> +2.39.5
> +
> diff --git a/configs/platform-v8a/patches/barebox-2025.03.0/series b/configs/platform-v8a/patches/barebox-2025.03.0/series
> new file mode 100644
> index 0000000..2d4b3ce
> --- /dev/null
> +++ b/configs/platform-v8a/patches/barebox-2025.03.0/series
> @@ -0,0 +1 @@
> +0001-ARM-dts-tqma93xx-add-dummy-supply-to-regulator.patch
> diff --git a/configs/platform-v8a/platformconfig b/configs/platform-v8a/platformconfig
> index fb1019c..fde26da 100644
> --- a/configs/platform-v8a/platformconfig
> +++ b/configs/platform-v8a/platformconfig
> @@ -137,7 +137,7 @@ PTXCONF_KERNEL_IMAGE_RAW=y
>  PTXCONF_KERNEL_IMAGE="Image"
>  PTXCONF_KERNEL_DTB=y
>  PTXCONF_KERNEL_DTS_PATH="${PTXDIST_PLATFORMCONFIG_SUBDIR}/dts:${KERNEL_DIR}/arch/${GENERIC_KERNEL_ARCH}/boot/dts"
> -PTXCONF_KERNEL_DTS="armada-3720-community.dts freescale/imx8mm-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mp-evk.dts freescale/imx8mq-evk.dts rockchip/rk3568-rock-3a.dts freescale/imx8mp-tqma8mpql-mba8mpxl.dts"
> +PTXCONF_KERNEL_DTS="armada-3720-community.dts freescale/imx8mm-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mn-ddr4-evk.dts freescale/imx8mp-evk.dts freescale/imx8mq-evk.dts rockchip/rk3568-rock-3a.dts freescale/imx8mp-tqma8mpql-mba8mpxl.dts freescale/imx93-tqma9352-mba93xxca.dts"
>  # PTXCONF_KERNEL_DTBO is not set
>  # PTXCONF_KERNEL_CODE_SIGNING is not set
>  # PTXCONF_KERNEL_ZSTD is not set
> @@ -213,7 +213,7 @@ PTXCONF_TF_A_MD5="dea016f3707117c7935a8a26433a1e46 5b90a1c21210702e64234a2beb79f
>  PTXCONF_TF_A_ARCH_STRING="aarch64"
>  PTXCONF_TF_A_ARM_ARCH_MAJOR_8=y
>  PTXCONF_TF_A_ARM_ARCH_MAJOR=8
> -PTXCONF_TF_A_PLATFORMS="imx8mq imx8mm imx8mn imx8mp"
> +PTXCONF_TF_A_PLATFORMS="imx8mq imx8mm imx8mn imx8mp imx93"
>  PTXCONF_TF_A_ARM_ARCH_MINOR=0
>  PTXCONF_TF_A_EXTRA_ARGS="IMX_BOOT_UART_BASE=auto"
>  PTXCONF_TF_A_ARTIFACTS="bl31.bin"
> @@ -291,6 +291,7 @@ PTXCONF_IMAGE_ROOT_TGZ_LABEL=""
>  # PTXCONF_IMAGE_ROOT_UBI is not set
>  # PTXCONF_IMAGE_ROOT_UBIFS is not set
>  PTXCONF_IMAGE_TQ_MBA8MPXL=y
> +PTXCONF_IMAGE_TQ_MBA93XXCA=y
>  
>  #
>  # ipkg options                  
> diff --git a/configs/platform-v8a/platforms/image-tq-mba93xxca.in b/configs/platform-v8a/platforms/image-tq-mba93xxca.in
> new file mode 100644
> index 0000000..b36e285
> --- /dev/null
> +++ b/configs/platform-v8a/platforms/image-tq-mba93xxca.in
> @@ -0,0 +1,10 @@
> +## SECTION=image
> +
> +config IMAGE_TQ_MBA93XXCA
> +	tristate
> +	select HOST_GENIMAGE
> +	select IMAGE_ROOT_EXT
> +	select BAREBOX
> +	prompt "Generate images/tq-mba93xxca.img"
> +	help
> +	  Generate a bootable SD card image to deploy on a TQ MBa93xxCA board.
> diff --git a/configs/platform-v8a/rules/firmware-imx.make b/configs/platform-v8a/rules/firmware-imx.make
> index 1cdc3ee..6b01af3 100644
> --- a/configs/platform-v8a/rules/firmware-imx.make
> +++ b/configs/platform-v8a/rules/firmware-imx.make
> @@ -34,6 +34,7 @@ BAREBOX_INJECT_FILES	+= imx8mm-bl31.bin:firmware/imx8mm-bl31.bin
>  BAREBOX_INJECT_FILES	+= imx8mn-bl31.bin:firmware/imx8mn-bl31.bin
>  BAREBOX_INJECT_FILES	+= imx8mp-bl31.bin:firmware/imx8mp-bl31.bin
>  BAREBOX_INJECT_FILES	+= imx8mq-bl31.bin:firmware/imx8mq-bl31.bin
> +BAREBOX_INJECT_FILES	+= imx93-bl31.bin:firmware/imx93-bl31.bin
>  ifdef PTXCONF_FIRMWARE_IMX_BOOTIMAGE_IMX8
>  BAREBOX_INJECT_FILES	+= ddr/synopsys/lpddr4_pmu_train_1d_dmem.bin:firmware/lpddr4_pmu_train_1d_dmem.bin
>  BAREBOX_INJECT_FILES	+= ddr/synopsys/lpddr4_pmu_train_1d_imem.bin:firmware/lpddr4_pmu_train_1d_imem.bin
> diff --git a/configs/platform-v8a/rules/image-tq-mba93xxca.make b/configs/platform-v8a/rules/image-tq-mba93xxca.make
> new file mode 100644
> index 0000000..5e6bcd7
> --- /dev/null
> +++ b/configs/platform-v8a/rules/image-tq-mba93xxca.make
> @@ -0,0 +1,35 @@
> +# -*-makefile-*-
> +#
> +# Copyright (C) 2025 by Fabian Pflug <f.pflug@pengutronix.de>
> +#
> +# For further information about the PTXdist project and license conditions
> +# see the README file.
> +#
> +
> +#
> +# We provide this package
> +#
> +IMAGE_PACKAGES-$(PTXCONF_IMAGE_TQ_MBA93XXCA) += image-tq-mba93xxca
> +
> +#
> +# Paths and names
> +#
> +IMAGE_TQ_MBA93XXCA		:= image-tq-mba93xxca
> +IMAGE_TQ_MBA93XXCA_DIR		:= $(BUILDDIR)/$(IMAGE_TQ_MBA93XXCA)
> +IMAGE_TQ_MBA93XXCA_IMAGE	:= $(IMAGEDIR)/tq-mba93xxca.img
> +IMAGE_TQ_MBA93XXCA_FILES	:= $(IMAGEDIR)/root.tgz
> +IMAGE_TQ_MBA93XXCA_CONFIG	:= imx93.config
> +
> +# ----------------------------------------------------------------------------
> +# Image
> +# ----------------------------------------------------------------------------
> +
> +IMAGE_TQ_MBA93XXCA_ENV := \
> +        BAREBOX_IMAGE=barebox-tqma93xx.img
> +
> +$(IMAGE_TQ_MBA93XXCA_IMAGE):
> +	@$(call targetinfo)
> +	@$(call image/genimage, IMAGE_TQ_MBA93XXCA)
> +	@$(call finish)
> +
> +# vim: syntax=make
> diff --git a/doc/hardware.rst b/doc/hardware.rst
> index 5c9a0df..ccec2b4 100644
> --- a/doc/hardware.rst
> +++ b/doc/hardware.rst
> @@ -131,6 +131,7 @@ Currently, DistroKit supports the following hardware:
>  
>     hardware_v8a_espressobin
>     hardware_v8a_rock3a
> +   hardware_v8a_tqma93xxca
>  
>  
>  rpi1 Platform
> diff --git a/doc/hardware_v8a_tqma93xxca.rst b/doc/hardware_v8a_tqma93xxca.rst
> new file mode 100644
> index 0000000..c516854
> --- /dev/null
> +++ b/doc/hardware_v8a_tqma93xxca.rst
> @@ -0,0 +1,47 @@
> +TQ-Systems i.MX93 TQMa93xxLA/TQMa93xxCA on MBa93xxCA starter kit
> +================================================================
> +
> +
> +Boot Media
> +----------
> +
> +Booting is available via multiple sources (Compare Table 6: Boot configuration i.MX 93 from TQMa93xxCA UM 0003)
> +
> +.. csv-table:: Example :rst:dir:`csv-table`
> +   :header: "Boot Source", "BOOT_MODE2", "BOOT_MODE1", "BOOT_MODE0"
> +
> +   "Boot from eFuse",               "0", "0", "0"
> +   "Serial Downloader (USB1)",      "0", "0", "1"
> +   "Boot from eMMC 5.1",            "0", "1", "0"
> +   "Boot from SD 3.0 card",         "0", "1", "1"
> +   "Boot from FlexSPI Serial NOR",  "1", "0", "0"
> +
> +
> +Booting from USB and NFS
> +~~~~~~~~~~~~~~~~~~~~~~~~
> +
> +Upload the bootloader ``platform-v8a/images/barebox-tqma93xx.img`` via USB:
> +
> +.. code-block:: shell
> +
> +    platform-v8a/sysroot-host/bin/imx-usb-loader platform-v8a/images/barebox-tqma93xx.img
> +
> +In Barebox, set the default boot location to nfs:
> +
> +    nv boot.default nfs://dude06//ptx/work/user/fpg/DistroKit/platform-v8a/root
> +
> +replace the path to one, where you have compiled your Distrokit
> +
> +
> +Booting via SD-Card
> +~~~~~~~~~~~~~~~~~~~
> +
> +Write the image ``platform-v8a/images/tq-mba93xxca.img`` to a microSD card. Put the
> +microSD card into the TQMa93xxCA and boot it.
> +
> +
> +Serial Console
> +--------------
> +
> +The serial boot console is available via the microUSB Connector on the board.
> +It brings 4 UARTS, whereas the first is the Serial console used by kernel and bootloader.

-- 
Pengutronix e.K.                  |                             |
Steuerwalder Str. 21              | http://www.pengutronix.de/  |
31137 Hildesheim, Germany         | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686  | Fax:   +49-5121-206917-5555 |




  reply	other threads:[~2025-04-23 13:53 UTC|newest]

Thread overview: 3+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-04-23 13:49 Fabian Pflug
2025-04-23 13:53 ` Ahmad Fatoum [this message]
2025-04-23 14:31 ` Robert Schwebel

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=e3dd00bd-9cf7-4b3d-a574-2b7eb472817c@pengutronix.de \
    --to=a.fatoum@pengutronix.de \
    --cc=distrokit@pengutronix.de \
    --cc=f.pflug@pengutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox