rust-embedded / embedded-hal

A Hardware Abstraction Layer (HAL) for embedded systems
Apache License 2.0
1.95k stars 197 forks source link

spi: move async ExclusiveDevice to embedded-hal-bus. #474

Closed Dirbaio closed 1 year ago

Dirbaio commented 1 year ago

!! REQUIRES #472 (for the MSRV bump and CI fixes) !!

Same logic as to why the blocking bus impls are in a separate crate: if we ever want to stabilize embedded-hal-async 1.0 we can't make breaking changes to ExclusiveDevice, so it's best to keep it in a separate crate so we can.

bugadani commented 1 year ago

To be quite honest, ExclusiveDevice is both the sync and the async implementor, so including that under the asynch module is a bit weird. It was equally weird to have it in embedded-hal-async but that's the past. I feel like the type could be moved up from asynch::spi to spi.