Out-of-tree Zephyr board files for the ALP Lab E1M System-on-Module
evaluation kits. Consumed by
alplabai/alp-sdk as a Zephyr
module via either a west.yml project entry or the
EXTRA_ZEPHYR_MODULES environment variable.
The alp-sdk repo carries the portable API surface (<alp/...>
headers, chip drivers, OS backends, metadata). The board files
that describe each EVK (per-pin device-tree, defconfig, CMake glue,
power-rail sequencing) are SoM-family specific and update on the
EVK's hardware revision cadence, not the SDK's API cadence. Keeping
them out-of-tree:
- lets a customer pin alp-sdk and bump their EVK board file independently;
- keeps the alp-sdk's Zephyr-LTS bump cycle decoupled from EVK schematic revisions;
- mirrors how Zephyr itself wants downstream boards delivered (board porting guide).
Zephyr v3.7 LTS board files for the official ALP Lab EVKs:
| Board | Carrier + SoM | Status |
|---|---|---|
alp_e1m_evk_aen |
E1M EVK (UG-E1M-001) + E1M-AEN family | board file pending |
alp_e1m_evk_v2n |
E1M-X EVK + E1M-X V2N family | board file pending |
alp_e1m_evk_v2n_m1 |
E1M-X EVK + E1M-X V2N-M1 family | board file pending |
alp_e1m_evk_imx93 |
E1M EVK + E1M-i.MX93 family | board file pending |
Each board ships its .dts, .yaml, _defconfig, board.cmake,
and Kconfig.board under boards/alp/<board_name>/ per Zephyr's
v3.7 board layout.
The alp-sdk's DT overlays (tests/zephyr/peripheral/boards/*.overlay,
examples/*/boards/*.overlay) re-alias what these board files
expose onto the SDK's alp_i2c0 / alp_pwm3 / alp_uartN names.
Repo scaffold only — board files pending hardware bring-up.
The first alp_e1m_evk_aen board file lands once the corresponding
alp-sdk SoM HW config (pin assignments, clock setup, power-rail
sequencing) is finalised by the alp-sdk maintainer. Until then this
repo:
- holds the published home for the board URLs already referenced from alp-sdk's docs, tests, and the nightly HIL workflow (so those references resolve instead of 404'ing);
- declares itself as a Zephyr module (
zephyr/module.yml) so a consumer pointingEXTRA_ZEPHYR_MODULEShere today gets a no-op module instead of a parse error; - documents the format new board files should land in.
See alp-sdk PLAN.md for the upstream-board file roadmap and alp-sdk docs/zephyr-version-policy.md for the LTS pin the boards target.
Add to your application's west.yml:
manifest:
projects:
- name: alp-zephyr-modules
url: https://github.com/alplabai/alp-zephyr-modules
revision: main
path: modules/alp-zephyr-modulesThen west update and west build -b alp_e1m_evk_aen <app> once
the matching board file is present.
For a one-shot CI run or local-only consumption:
west build -p always -b alp_e1m_evk_aen \
-- -DEXTRA_ZEPHYR_MODULES=/path/to/alp-zephyr-modules \
/path/to/alp-sdk/tests/zephyr/peripheralThe alp-sdk's nightly AEN HIL workflow uses the second form (see
.github/workflows/nightly-aen-hil.yml in alp-sdk).
The board files pin to a specific Zephyr LTS. Currently
v3.7.0, matching alp-sdk's pin. Bumps land in lockstep with
alp-sdk's docs/zephyr-version-policy.md rollover — never in this
repo independently.
See CONTRIBUTING.md for the new-board file
checklist.
Apache License 2.0 — see LICENSE.
Copyright 2026 ALP Lab AB.