nxp-pac

Crates

git

Versions

mcxa146

Flavors

Crate nxp_pac

Crate nxp_pac 

Source
Expand description

§nxp-pac

This is a Peripheral Access Crate for NXP microcontrollers.

MCXA MetaPAC devices are generated at build time from the curated YAML and chip metadata packaged in data/, using Git-pinned chiptool. Only the selected chip’s required peripherals are rendered into Cargo’s OUT_DIR; generated Rust is not maintained in the source tree. Curated YAML is authoritative and maintained directly.

Legacy PAC devices retain their checked-in generated sources, originally derived from NXP’s mcux-soc-svd repo.

This crate will (hopefully) be used for embassy-nxp Rust Hardware Abstraction Layer (HAL) for the NXP microcontrollers.

§Cloning

Select exactly one existing chip feature, for example mcxa266 or mcxa287. The pac feature is enabled by default; metadata, rt, and defmt retain their existing roles. Metadata-only host builds are supported with default features disabled. Building a MetaPAC does not require a vendor SVD checkout, external formatter, or generator executable.

Only explicit SVD import and legacy source regeneration require a recursive clone. Import is an onboarding tool, not an automatic update of curated models.

If you forgot this, you can use git submodule update --checkout --init to fetch the submodules.

§License

The contents of this crate are auto-generated and licensed under the same terms as the underlying SVD file, which is licensed by NXP under a BSD-3-Clause license.

Modules§

adc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
aoi
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
can
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
cdog
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
cmc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
cmp
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
common
crc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
ctimer
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
dbgmailbox
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
dma
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
edma_tcd
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
eim
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
eqdc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
erm
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
flexio
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
flexpwm
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
fmc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
fmu
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
fmu0test
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
freqme
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
glikey
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
gpio
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
i3c
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
inputmux
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
lpi2c
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
lpspi
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
lptmr
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
lpuart
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
mbc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
mrcc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
ostimer
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
port
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
scg
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
spc
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
syscon
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
usb
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
utick
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
vbat
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
waketimer
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
wuu
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))
wwdt
Peripheral access API (generated using chiptool v0.1.0 (e890244 2026-11-05))

Enums§

Interrupt
interrupt

Constants§

ADC0
ADC1
AOI0
AOI1
CAN0
CDOG0
CMC
CMP0
CMP1
CRC0
CTIMER0
CTIMER1
CTIMER2
CTIMER3
CTIMER4
DBGMAILBOX
DMA0
EDMA_TCD0
EIM0
EQDC0
ERM0
FLEXIO0
FLEXPWM0
FMC0
FMU0
FMU0TEST
FREQME0
GLIKEY0
GPIO0
GPIO1
GPIO2
GPIO3
GPIO4
I3C0
INPUTMUX0
LPI2C0
LPI2C1
LPI2C2
LPI2C3
LPSPI0
LPSPI1
LPTMR0
LPUART0
LPUART1
LPUART2
LPUART3
LPUART4
MBC0
MRCC0
NVIC_PRIO_BITS
Number available in the NVIC for configuring priority
OSTIMER0
PORT0
PORT1
PORT2
PORT3
PORT4
SCG0
SPC0
SYSCON
USB0
UTICK0
VBAT0
WAKETIMER0
WUU0
WWDT0

Attribute Macros§

interrupt