From 2843faa777066dd30709fd4aee9837aabc49a52c Mon Sep 17 00:00:00 2001 From: James Munns Date: Thu, 4 Dec 2025 19:50:28 +0100 Subject: Remove more ODP files --- embassy-mcxa/CODEOWNERS | 5 -- embassy-mcxa/CODE_OF_CONDUCT.md | 132 ----------------------------------- embassy-mcxa/CONTRIBUTING.md | 28 -------- embassy-mcxa/LICENSE | 21 ------ embassy-mcxa/README.md | 8 --- embassy-mcxa/SECURITY.md | 66 ------------------ embassy-mcxa/SW-Content-Register.txt | 78 --------------------- embassy-mcxa/defmt.x | 6 -- embassy-mcxa/run.sh | 93 ------------------------ embassy-mcxa/rustfmt.toml | 3 - 10 files changed, 440 deletions(-) delete mode 100644 embassy-mcxa/CODEOWNERS delete mode 100644 embassy-mcxa/CODE_OF_CONDUCT.md delete mode 100644 embassy-mcxa/CONTRIBUTING.md delete mode 100644 embassy-mcxa/LICENSE delete mode 100644 embassy-mcxa/SECURITY.md delete mode 100644 embassy-mcxa/SW-Content-Register.txt delete mode 100644 embassy-mcxa/defmt.x delete mode 100644 embassy-mcxa/run.sh delete mode 100644 embassy-mcxa/rustfmt.toml diff --git a/embassy-mcxa/CODEOWNERS b/embassy-mcxa/CODEOWNERS deleted file mode 100644 index 6e0f4c4c6..000000000 --- a/embassy-mcxa/CODEOWNERS +++ /dev/null @@ -1,5 +0,0 @@ -* @jamesmunns @felipebalbi - -# Any changes in the supply-chain folder needs approval -# from auditors as it relates to cargo vet -**/supply-chain @OpenDevicePartnership/crate-auditors \ No newline at end of file diff --git a/embassy-mcxa/CODE_OF_CONDUCT.md b/embassy-mcxa/CODE_OF_CONDUCT.md deleted file mode 100644 index 54a673e04..000000000 --- a/embassy-mcxa/CODE_OF_CONDUCT.md +++ /dev/null @@ -1,132 +0,0 @@ -# Contributor Covenant Code of Conduct - -## Our Pledge - -We as members, contributors, and leaders pledge to make participation in our -community a harassment-free experience for everyone, regardless of age, body -size, visible or invisible disability, ethnicity, sex characteristics, gender -identity and expression, level of experience, education, socio-economic status, -nationality, personal appearance, race, caste, color, religion, or sexual -identity and orientation. - -We pledge to act and interact in ways that contribute to an open, welcoming, -diverse, inclusive, and healthy community. - -## Our Standards - -Examples of behavior that contributes to a positive environment for our -community include: - -* Demonstrating empathy and kindness toward other people -* Being respectful of differing opinions, viewpoints, and experiences -* Giving and gracefully accepting constructive feedback -* Accepting responsibility and apologizing to those affected by our mistakes, - and learning from the experience -* Focusing on what is best not just for us as individuals, but for the overall - community - -Examples of unacceptable behavior include: - -* The use of sexualized language or imagery, and sexual attention or advances of - any kind -* Trolling, insulting or derogatory comments, and personal or political attacks -* Public or private harassment -* Publishing others' private information, such as a physical or email address, - without their explicit permission -* Other conduct which could reasonably be considered inappropriate in a - professional setting - -## Enforcement Responsibilities - -Community leaders are responsible for clarifying and enforcing our standards of -acceptable behavior and will take appropriate and fair corrective action in -response to any behavior that they deem inappropriate, threatening, offensive, -or harmful. - -Community leaders have the right and responsibility to remove, edit, or reject -comments, commits, code, wiki edits, issues, and other contributions that are -not aligned to this Code of Conduct, and will communicate reasons for moderation -decisions when appropriate. - -## Scope - -This Code of Conduct applies within all community spaces, and also applies when -an individual is officially representing the community in public spaces. -Examples of representing our community include using an official e-mail address, -posting via an official social media account, or acting as an appointed -representative at an online or offline event. - -## Enforcement - -Instances of abusive, harassing, or otherwise unacceptable behavior may be -reported to the community leaders responsible for enforcement at -odpadmin@microsoft.com. -All complaints will be reviewed and investigated promptly and fairly. - -All community leaders are obligated to respect the privacy and security of the -reporter of any incident. - -## Enforcement Guidelines - -Community leaders will follow these Community Impact Guidelines in determining -the consequences for any action they deem in violation of this Code of Conduct: - -### 1. Correction - -**Community Impact**: Use of inappropriate language or other behavior deemed -unprofessional or unwelcome in the community. - -**Consequence**: A private, written warning from community leaders, providing -clarity around the nature of the violation and an explanation of why the -behavior was inappropriate. A public apology may be requested. - -### 2. Warning - -**Community Impact**: A violation through a single incident or series of -actions. - -**Consequence**: A warning with consequences for continued behavior. No -interaction with the people involved, including unsolicited interaction with -those enforcing the Code of Conduct, for a specified period of time. This -includes avoiding interactions in community spaces as well as external channels -like social media. Violating these terms may lead to a temporary or permanent -ban. - -### 3. Temporary Ban - -**Community Impact**: A serious violation of community standards, including -sustained inappropriate behavior. - -**Consequence**: A temporary ban from any sort of interaction or public -communication with the community for a specified period of time. No public or -private interaction with the people involved, including unsolicited interaction -with those enforcing the Code of Conduct, is allowed during this period. -Violating these terms may lead to a permanent ban. - -### 4. Permanent Ban - -**Community Impact**: Demonstrating a pattern of violation of community -standards, including sustained inappropriate behavior, harassment of an -individual, or aggression toward or disparagement of classes of individuals. - -**Consequence**: A permanent ban from any sort of public interaction within the -community. - -## Attribution - -This Code of Conduct is adapted from the [Contributor Covenant][homepage], -version 2.1, available at -[https://www.contributor-covenant.org/version/2/1/code_of_conduct.html][v2.1]. - -Community Impact Guidelines were inspired by -[Mozilla's code of conduct enforcement ladder][Mozilla CoC]. - -For answers to common questions about this code of conduct, see the FAQ at -[https://www.contributor-covenant.org/faq][FAQ]. Translations are available at -[https://www.contributor-covenant.org/translations][translations]. - -[homepage]: https://www.contributor-covenant.org -[v2.1]: https://www.contributor-covenant.org/version/2/1/code_of_conduct.html -[Mozilla CoC]: https://github.com/mozilla/diversity -[FAQ]: https://www.contributor-covenant.org/faq -[translations]: https://www.contributor-covenant.org/translations diff --git a/embassy-mcxa/CONTRIBUTING.md b/embassy-mcxa/CONTRIBUTING.md deleted file mode 100644 index f10eb5be9..000000000 --- a/embassy-mcxa/CONTRIBUTING.md +++ /dev/null @@ -1,28 +0,0 @@ -# Contributing to Open Device Partnership - -The Open Device Partnership project welcomes your suggestions and contributions! Before opening your first issue or pull request, please review our -[Code of Conduct](CODE_OF_CONDUCT.md) to understand how our community interacts in an inclusive and respectful manner. - -## Contribution Licensing - -Most of our code is distributed under the terms of the [MIT license](LICENSE), and when you contribute code that you wrote to our repositories, -you agree that you are contributing under those same terms. In addition, by submitting your contributions you are indicating that -you have the right to submit those contributions under those terms. - -## Other Contribution Information - -If you wish to contribute code or documentation authored by others, or using the terms of any other license, please indicate that clearly in your -pull request so that the project team can discuss the situation with you. - -## Commit Message - -* Use meaningful commit messages. See [this blogpost](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html) - -## PR Etiquette - -* Create a draft PR first -* Make sure that your branch has `.github` folder and all the code linting/sanity check workflows are passing in your draft PR before sending it out to code reviewers. - -## Regressions - -When reporting a regression, please ensure that you use `git bisect` to find the first offending commit, as that will help us finding the culprit a lot faster. diff --git a/embassy-mcxa/LICENSE b/embassy-mcxa/LICENSE deleted file mode 100644 index 609bd42da..000000000 --- a/embassy-mcxa/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Open Device Partnership - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/embassy-mcxa/README.md b/embassy-mcxa/README.md index 6e7d61c0e..079eeb487 100644 --- a/embassy-mcxa/README.md +++ b/embassy-mcxa/README.md @@ -1,13 +1,5 @@ # Embassy MCXA256 HAL -[![check](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/check.yml/badge.svg)](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/check.yml) -[![no-std](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/nostd.yml/badge.svg)](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/nostd.yml) -[![rolling](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/rolling.yml/badge.svg)](https://github.com/OpenDevicePartnership/embassy-mcxa/actions/workflows/rolling.yml) - A Hardware Abstraction Layer (HAL) for the NXP MCXA256 microcontroller using the Embassy async framework. This HAL provides safe, idiomatic Rust interfaces for GPIO, UART, and OSTIMER peripherals. - -## License - -This project is licensed under MIT OR Apache-2.0. diff --git a/embassy-mcxa/SECURITY.md b/embassy-mcxa/SECURITY.md deleted file mode 100644 index 5357b8824..000000000 --- a/embassy-mcxa/SECURITY.md +++ /dev/null @@ -1,66 +0,0 @@ -# Vulnerability Disclosure and Embargo Policy - -The Open Device Partnership project welcomes the responsible disclosure of vulnerabilities. - -## Initial Contact - -All security bugs in Open Device Partnership should be reported to the security team. -To do so, please reach out in the form of a -[Github Security Advisory](https://docs.github.com/en/code-security/security-advisories/guidance-on-reporting-and-writing-information-about-vulnerabilities). - -You will be invited to join this private area to discuss specifics. Doing so -allows us to start with a high level of confidentiality and relax it if the -issue is less critical, moving to work on the fix in the open. - -Your initial contact will be acknowledged within 48 hours, and you’ll receive -a more detailed response within 96 hours indicating the next steps in handling -your report. - -After the initial reply to your report, the security team will endeavor to -keep you informed of the progress being made towards a fix and full -announcement. As recommended by -[RFPolicy](https://dl.packetstormsecurity.net/papers/general/rfpolicy-2.0.txt), -these updates will be sent at least every five working days. - -## Disclosure Policy - -The Open Device Partnership project has a 5 step disclosure process. - -1. Contact is established, a private channel created, and the security report - is received and is assigned a primary handler. This person will coordinate - the fix and release process. -2. The problem is confirmed and a list of all affected versions is determined. - If an embargo is needed (see below), details of the embargo are decided. -3. Code is audited to find any potential similar problems. -4. Fixes are prepared for all releases which are still under maintenance. In - case of embargo, these fixes are not committed to the public repository but - rather held in a private fork pending the announcement. -5. The changes are pushed to the public repository and new builds are deployed. - -This process can take some time, especially when coordination is required -with maintainers of other projects. Every effort will be made to handle the bug -in as timely a manner as possible, however it is important that we follow the -release process above to ensure that the disclosure is handled in a consistent -manner. - -## Embargoes - -While the Open Device Partnership project aims to follow the highest standards of -transparency and openness, handling some security issues may pose such an -immediate threat to various stakeholders and require coordination between -various actors that it cannot be made immediately public. - -In this case, security issues will fall under an embargo. - -An embargo can be called for in various cases: - -- when disclosing the issue without simultaneously providing a mitigation - would seriously endanger users, -- when producing a fix requires coordinating between multiple actors (such as - upstream or downstream/dependency projects), or simply -- when proper analysis of the issue and its ramifications demands time. - -If we determine that an issue you report requires an embargo, we will discuss -this with you and try to find a reasonable expiry date (aka “embargo -completion date”), as well as who should be included in the list of -need-to-know people. diff --git a/embassy-mcxa/SW-Content-Register.txt b/embassy-mcxa/SW-Content-Register.txt deleted file mode 100644 index 09f879c2f..000000000 --- a/embassy-mcxa/SW-Content-Register.txt +++ /dev/null @@ -1,78 +0,0 @@ -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. - - - diff --git a/embassy-mcxa/defmt.x b/embassy-mcxa/defmt.x deleted file mode 100644 index dbd6d0850..000000000 --- a/embassy-mcxa/defmt.x +++ /dev/null @@ -1,6 +0,0 @@ -/* - Dummy defmt.x to satisfy -Tdefmt.x when building without the `defmt` feature. - When `defmt` is enabled, the real defmt.x provided by the defmt crate is used via the linker search path. - This file intentionally contains no SECTIONS so it won't override ram.ld. -*/ - diff --git a/embassy-mcxa/run.sh b/embassy-mcxa/run.sh deleted file mode 100644 index 418dc8a24..000000000 --- a/embassy-mcxa/run.sh +++ /dev/null @@ -1,93 +0,0 @@ -#!/usr/bin/env bash -set -euo pipefail - -ELF="${1:-}" -if [[ -z "${ELF}" ]]; then - echo "Usage: $0 " - exit 1 -fi -if [[ ! -f "${ELF}" ]]; then - echo "ELF not found: ${ELF}" - exit 1 -fi - -# Configurable via env -CHIP="${CHIP:-MCXA276}" -SPEED="${PROBE_SPEED:-1000}" # kHz -# Default to J-Link if PROBE not provided -PROBE_OPT=(--probe "${PROBE:-1366:0101:000600110607}") -PORT="${PROBE_RS_GDB_PORT:-1337}" - -cleanup() { - if [[ -n "${GDB_SERVER_PID:-}" ]]; then kill "${GDB_SERVER_PID}" 2>/dev/null || true; fi - [[ -n "${GDB_SCRIPT:-}" ]] && rm -f "${GDB_SCRIPT}" || true - [[ -n "${SERVER_LOG:-}" ]] && rm -f "${SERVER_LOG}" || true -} -trap cleanup EXIT - -if ! command -v probe-rs >/dev/null 2>&1; then - echo "probe-rs not found (cargo install probe-rs --features cli)" - exit 1 -fi -if ! command -v gdb-multiarch >/dev/null 2>&1; then - echo "gdb-multiarch not found; install it (e.g., sudo apt install gdb-multiarch)." - exit 1 -fi - -# Start probe-rs GDB server and capture its output to a log (do not hide errors) -SERVER_LOG=$(mktemp) -set +e -probe-rs gdb --chip "${CHIP}" --protocol swd --speed "${SPEED}" --non-interactive "${ELF}" "${PROBE_OPT[@]}" \ - >"${SERVER_LOG}" 2>&1 & -GDB_SERVER_PID=$! -set -e - -# Wait for server readiness without touching the TCP port to avoid corrupting the GDB protocol -ready="" -for _ in {1..50}; do - if grep -q "Firing up GDB stub" "${SERVER_LOG}"; then ready=1; break; fi - if grep -q "Connecting to the chip was unsuccessful" "${SERVER_LOG}"; then - echo "probe-rs gdb server failed to connect to target. Log:" >&2 - echo "----- probe-rs gdb log -----" >&2 - sed -e 's/^/ /' "${SERVER_LOG}" >&2 || true - exit 1 - fi - sleep 0.1 -done -if [[ -z "${ready}" ]]; then - echo "probe-rs gdb server did not report readiness. Log:" >&2 - echo "----- probe-rs gdb log -----" >&2 - sed -e 's/^/ /' "${SERVER_LOG}" >&2 || true - exit 1 -fi - -# GDB script: load to RAM and run, no reset -GDB_SCRIPT=$(mktemp) -cat >"${GDB_SCRIPT}" <&2 - echo "----- probe-rs gdb log -----" >&2 - sed -e 's/^/ /' "${SERVER_LOG}" >&2 || true - exit 1 -fi - -echo "Program loaded and started (no reset)" diff --git a/embassy-mcxa/rustfmt.toml b/embassy-mcxa/rustfmt.toml deleted file mode 100644 index 9eb3c3b4f..000000000 --- a/embassy-mcxa/rustfmt.toml +++ /dev/null @@ -1,3 +0,0 @@ -group_imports = "StdExternalCrate" -imports_granularity = "Module" -max_width = 120 -- cgit