Skip to main content

EVAL-KIT-SOM-SMARC Software Setup

The EVAL-KIT-SOM-SMARC is built around the Carrier-SMARC-E71 (E71), a universal SMARC 2.1.1 carrier board capable of hosting both ARM and x86 Computer on Modules (CoMs) from the SECO portfolio.

Because ARM and x86 platforms rely on fundamentally different boot architectures and hardware discovery mechanisms, the software setup required to enable the onboard peripherals of the Carrier-SMARC-E71 varies depending on the installed module:

  • ARM Modules: ARM-based systems rely on the bootloader (U-Boot) and the Linux Device Tree (.dtb) to describe non-discoverable hardware interfaces routed to the carrier board (such as I2C GPIO expanders, audio codecs, video outputs, and pin multiplexing). Since a single SMARC module can be paired with different carrier boards, the system must load the specific Device Tree Overlay (.dtbo) for the E71 carrier—either interactively from the U-Boot console (seco_config) or during the image flashing process (genio-flash), depending on the SoC family.
  • x86 Modules: x86-based systems use BIOS/UEFI firmware (ACPI tables and PCIe/USB enumeration) combined with operating system drivers (for Linux or Windows) rather than Device Tree Overlays.

Module Compatibility and Setup Overview​

The table below summarizes the supported SECO SMARC modules, their current peripheral support status on the Carrier-SMARC-E71, and the required software configuration method:

ModuleArchitectureBootAll E71 Peripherals SupportedConfiguration Method / Notes
SOM-SMARC-MX8M-Plus (D18)ARM (NXP)✅✅Stop at U-Boot console and run seco_config
SOM-SMARC-MX95 (E88)ARM (NXP)✅✅Stop at U-Boot console and run seco_config
SOM-SMARC-QCS6490 / QCS5430 (E81)ARM (Qualcomm)✅✅Stop at U-Boot console and run seco_config
SOM-SMARC-Genio510 / Genio700 (E58)ARM (MediaTek)✅✅Load overlay at flashing (genio-flash --load-dtbo seco-e58-e71.dtbo) — Available from Clea OS 2-06-00
SOM-SMARC-MX93 (E39)ARM (NXP)✅PartialBoots with standard image; full E71 carrier peripheral support in progress
SOM-SMARC-Dragonwing-IQ8 (F86)ARM (Qualcomm)✅PartialBoots with standard image; full E71 carrier peripheral support in progress
x86 SMARC Modules (e.g., E08, C93)x86 (Intel)✅Coming soonBoots on the carrier; full E71 carrier peripheral support coming soon

ARM Modules Configuration​

Configuration via U-Boot (seco_config)​

For the following SECO ARM SMARC modules, carrier selection is performed directly from the U-Boot bootloader console using the seco_config utility:

The seco_config command launches an interactive multiple-choice menu that configures the U-Boot environment to load the appropriate Device Tree Overlay (.dtbo) into the Linux kernel at boot time. Selecting the E71 carrier ensures that all peripherals on the Carrier-SMARC-E71—such as the I2C GPIO expander, HD Audio codec, and video/expansion interfaces—are properly initialized and available to the operating system.

Step-by-Step Procedure​

  1. Connect to the Debug Serial Port: Connect your host PC to the debug UART connector of the Carrier-SMARC-E71 and open a serial terminal emulator (such as minicom, picocom, or PuTTY) configured at 115200 baud, 8N1.
  2. Interrupt the Boot Sequence: Power on (or reset) the board and press any key when prompted during startup to stop the autoboot countdown and enter the U-Boot command-line console.
  3. Run seco_config: At the U-Boot prompt, run:
    seco_config
  4. Select the E71 Carrier: Follow the interactive multiple-choice prompts presented by the tool and select E71 when asked for the carrier board in use (along with any desired video/peripheral options).
  5. Save and Boot: Complete the configuration wizard to save the updated environment variables to non-volatile memory, then boot the board:
    boot
    (Alternatively, power-cycle or reset the board to start with the newly selected E71 configuration.)

Configuration at Flashing Time (MediaTek Genio Modules)​

info

Full support for the Carrier-SMARC-E71 on SOM-SMARC-Genio510 / Genio700 (E58) is available starting from Clea OS 2-06-00.

On MediaTek Genio platforms, interactive Device Tree Overlay selection via U-Boot is not used. Instead, the .dtbo file corresponding to the E71 carrier (seco-e58-e71.dtbo) must be passed directly when flashing the software image onto the module using the genio-flash tool:

genio-flash --load-dtbo seco-e58-e71.dtbo

You can also combine seco-e58-e71.dtbo with additional peripheral or display overlays by appending further --load-dtbo arguments. For complete details on setting up the host environment and flashing MediaTek E58 modules, refer to the SOM-SMARC-Genio700/510 (E58) Flashing Guide.


ARM Modules with Partial Support (E39, F86)​

For SOM-SMARC-MX93 (E39) and SOM-SMARC-Dragonwing-IQ8 (F86), full software support for the Carrier-SMARC-E71 is currently under development.

Both modules successfully boot on the Carrier-SMARC-E71 using their standard software images; however, full operation of all E71 carrier-specific peripherals is not yet guaranteed. Complete carrier enablement will be provided in upcoming software releases.


x86 Modules Support​

Full software and driver validation for SECO x86 SMARC modules mounted on the Carrier-SMARC-E71 is currently in progress and will be available soon.

At the moment, x86 SMARC modules boot normally when installed on the Carrier-SMARC-E71, but full functionality across all onboard carrier peripherals is not yet guaranteed out of the box. Dedicated setup instructions and driver packages will be published on this page as soon as validation is completed.