Skip to content

Update embedded-services + hals#16

Open
kurtjd wants to merge 2 commits into
OpenDevicePartnership:mainfrom
kurtjd:update-embedded-services
Open

Update embedded-services + hals#16
kurtjd wants to merge 2 commits into
OpenDevicePartnership:mainfrom
kurtjd:update-embedded-services

Conversation

@kurtjd
Copy link
Copy Markdown
Contributor

@kurtjd kurtjd commented May 13, 2026

Recently updated uart-service to use v7 of embedded-io-async so update embedded-services here to pull in those changes. Additionally had to make several changes to all the HALs (embassy-imxrt, embassy-mcxa, embassy-npcx, and embassy-qemu-riscv) to clean some things up (like updating those hals to impl v7 and implementing the traits for unsplit uart instances).

This allows some cleanup here such as removing all the uart wrappers.

@kurtjd kurtjd self-assigned this May 13, 2026
Copilot AI review requested due to automatic review settings May 13, 2026 17:13
@kurtjd kurtjd requested a review from a team as a code owner May 13, 2026 17:13
@kurtjd kurtjd added the enhancement New feature or request label May 13, 2026
@kurtjd kurtjd requested a review from dymk May 13, 2026 17:13
@github-project-automation github-project-automation Bot moved this to In progress in ODP Backlog May 13, 2026
@kurtjd kurtjd moved this from In progress to In review in ODP Backlog May 13, 2026
@kurtjd kurtjd force-pushed the update-embedded-services branch from 9a85894 to 38d6ff4 Compare May 13, 2026 17:14
@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 13, 2026

Cargo Vet Audit Failed

cargo vet has failed for one or more platforms in this PR. See the cargo-vet workflow run for which platform(s) failed, and run cargo vet --locked locally from platform/<dev-*>/ to reproduce.
Details about the vetting process can be found in docs/supply-chain.md.

If the unvetted dependencies are not needed

Please modify Cargo.toml file to avoid including the dependencies.

If the unvetted dependencies are needed

Post a new comment with the questionnaire below to the PR to help the auditors vet the dependencies.
After the auditors have vetted the dependencies, the PR will need to be rebased to pick up the new audits and pass this check.

Copy and paste the questionnaire as a new comment and provide your answers:

1. What crates (with version) need to be audited?

2. How many of the crates are version updates vs new dependencies?

3. To confirm none of the already included crates serve your needs, please provide a brief description of the purpose of the new crates.

4. Any extra notes to the auditors to help with their audits.

Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR updates the firmware’s OpenDevicePartnership embedded-services dependency set (including uart-service moving to embedded-io-async v0.7) and aligns platform HAL usage to remove now-unnecessary UART adapter/wrapper layers.

Changes:

  • Bump platform-common to explicitly include embedded-io/embedded-io-async v0.7 to match the updated service stack.
  • Update dev-npcx and dev-mcxa to pass HAL UART instances directly into uart-service tasks (removing wrapper/adapter code).
  • Refresh per-platform lockfiles to the new embedded-services + HAL revisions.

Reviewed changes

Copilot reviewed 6 out of 11 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
platform/platform-common/Cargo.toml Adds embedded-io/embedded-io-async v0.7 dependencies to align with updated services.
platform/platform-common/Cargo.lock Lockfile refresh for updated embedded-services revision and dependency graph.
platform/dev-qemu/Cargo.lock Lockfile refresh for updated embedded-services + embassy-qemu-riscv revision and embedded-io(-async) v0.7.
platform/dev-npcx/src/main.rs Updates UART task signature to accept the HAL UART directly (no wrapper).
platform/dev-npcx/src/board.rs Removes UART wrapper and exposes uart::Uart directly from the board.
platform/dev-npcx/Cargo.lock Lockfile refresh reflecting updated dependencies (still shows embedded-io-async v0.6 pulled in).
platform/dev-mcxa/src/uart_adapter.rs Deletes the v0.6 compatibility adapter (no longer needed with v0.7 services).
platform/dev-mcxa/src/main.rs Updates UART task to use lpuart::LpuartBbq directly and removes adapter usage.
platform/dev-mcxa/Cargo.toml Updates embassy-mcxa revision and removes explicit v0.6 embedded-io(-async) compatibility deps.
platform/dev-mcxa/Cargo.lock Lockfile refresh for updated embassy revision + service stack changes.
platform/dev-imxrt/meta_err.txt Adds/keeps an empty file in the repo (appears to be an artifact).
platform/dev-imxrt/Cargo.lock Lockfile refresh for updated embedded-services + embassy-imxrt revision and embedded-io(-async) v0.7 additions.

Comment thread platform/dev-npcx/src/board.rs
Copy link
Copy Markdown
Contributor

@tullom tullom left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you! Resolves #15

@tullom tullom linked an issue May 13, 2026 that may be closed by this pull request
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

cargo vet enhancement New feature or request

Projects

Status: In review

Development

Successfully merging this pull request may close these issues.

Update dev-mcxa and dev-npcx to use embedded-io v0.7

3 participants