1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
|
Release Name: Embassy MCXA276 HAL
Release Version: 0.1.0
Package License: MIT (see ./License.txt)
Note: The crate is dual-licensed “MIT OR Apache-2.0” per Cargo.toml; choosing MIT satisfies the dual-license terms.
Scope of this Register
This file documents software content that is part of this repository and, for transparency, lists major non-vendored Rust dependencies that are resolved from crates.io during builds. Components that are not present in the repository (e.g., external crates) are listed under “Non‑vendored Rust dependencies”.
Repository Components (included in this release)
embassy_mcxa276_hal Name: Embassy MCXA276 HAL (library + examples)
Version: 0.1.0
Outgoing License: MIT
License File: ./License.txt
Format: Rust source code, examples, scripts, linker scripts
Description: Hardware Abstraction Layer for NXP MCXA276 using the Embassy async framework. Implements drivers and helpers for:
- LPUART2 (UART), OSTIMER0, RTC0, ADC1, GPIO
- Embassy integration (executors, time)
Location: ./src, ./examples, ./build.rs, ./memory.x, ./ram.ld, ./defmt.x, ./.cargo/config.toml, ./run.sh, ./tools/
Origin: OEMWCSE (MIT)
URL: https://bitbucket.sw.nxp.com/scm/oemwcse/mcxa_rust.git
mcxa276_pac Name: MCXA276 Peripheral Access Crate (PAC)
Version: 0.1.0
Outgoing License: MIT OR Apache-2.0
License File: (see crate metadata)
Format: Rust source code (auto-generated PAC)
Description: Auto-generated register mappings for MCXA276 peripherals (svd2rust). Includes device.x and interrupt vectors.
Location: External (git): https://github.com/bogdan-petru/mcxa-pac (pinned rev a9dd3301)
Origin: Generated by svdtools + svd2rust from NXP SVD 25.06.00
URL: N/A (generated from NXP SVD)
examples Name: Example applications
Version: N/A
Outgoing License: MIT
License File: ./License.txt
Format: Rust source code (examples)
Description: Demonstrations for HAL peripherals and features:
- hello, blink
- lpuart_polling, lpuart_buffered, uart_interrupt
- rtc_alarm
- adc_polling, adc_interrupt
- ostimer_alarm, ostimer_async, ostimer_counter, ostimer_race_test
Location: ./examples
Origin: OEMWCSE (MIT)
Non‑vendored Rust dependencies (resolved from crates.io at build time)
The following crates are not vendored in this repository. They are fetched during builds via Cargo. See Cargo.lock for exact versions. License summaries below are for convenience; consult each crate for authoritative terms.
cortex-m License: MIT OR Apache-2.0 Purpose: Cortex-M core support
cortex-m-rt License: MIT OR Apache-2.0 Purpose: Cortex-M runtime (vectors, reset)
embassy-executor License: MIT OR Apache-2.0 Purpose: Async executor for Cortex-M
embassy-time (+ driver) License: MIT OR Apache-2.0 Purpose: Time abstraction and drivers
embassy-sync License: MIT OR Apache-2.0 Purpose: No-std synchronization primitives
embassy-embedded-hal License: MIT OR Apache-2.0 Purpose: Traits/adapters for embedded-hal
embassy-hal-internal License: MIT OR Apache-2.0 Purpose: HAL building blocks (peripherals!)
embedded-hal (1.0) License: MIT OR Apache-2.0 Purpose: Core embedded hardware traits
embedded-hal (0.2.6) License: MIT OR Apache-2.0 Purpose: Legacy HAL traits ("unproven")
embedded-hal-async License: MIT OR Apache-2.0 Purpose: Async HAL traits
embedded-hal-nb License: MIT OR Apache-2.0 Purpose: Non-blocking HAL traits
embedded-io / embedded-io-async License: MIT OR Apache-2.0 Purpose: IO traits
critical-section License: MIT OR Apache-2.0 Purpose: Critical-section abstraction
heapless License: MIT OR Apache-2.0 Purpose: Fixed-capacity data structures
paste License: MIT OR Apache-2.0 Purpose: Macro hygiene utility
nb License: MIT OR Apache-2.0 Purpose: Non-blocking result type
vcell License: MIT OR Apache-2.0 Purpose: Volatile cell (PAC dependency)
defmt, defmt-rtt, rtt-target, panic-probe License: MIT OR Apache-2.0 Purpose: Optional (feature-gated) logging/panic crates
Attribution notes
- MCXA276 PAC is sourced as an external dependency (see Cargo.toml). SVD 25.06.00 already includes OS_EVENT and WAKETIMER0 interrupts (no local fixes).
- Examples run from RAM using custom linker setup; see README.txt for platform-specific instructions.
Compliance
- This repository’s distributed source is covered by MIT (see License.txt). Where crates are pulled from crates.io, those crates retain their own licenses; the dual-license compatibility (MIT OR Apache-2.0) is standard in the Rust embedded ecosystem and is compatible with this project’s selected MIT distribution.
|