diff --git a/esp-hal/CHANGELOG.md b/esp-hal/CHANGELOG.md index 4983d95aa16..c54adfb77df 100644 --- a/esp-hal/CHANGELOG.md +++ b/esp-hal/CHANGELOG.md @@ -58,6 +58,7 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - I8080, camera, DPI: The various standalone configuration options have been merged into `Config` (#2610) - Dropped GPIO futures stop listening for interrupts (#2625) - UART driver's `StopBits` enum variants now correctly use UpperCamelCase (#2669) +- The `PeripheralInput` and `PeripheralOutput` traits are now sealed (#2690) ### Fixed diff --git a/esp-hal/src/gpio/interconnect.rs b/esp-hal/src/gpio/interconnect.rs index c63c37ecc68..887ed71ae80 100644 --- a/esp-hal/src/gpio/interconnect.rs +++ b/esp-hal/src/gpio/interconnect.rs @@ -28,13 +28,13 @@ use crate::{ /// /// Peripheral drivers are encouraged to accept types that implement this and /// [`PeripheralOutput`] as arguments instead of pin types. -pub trait PeripheralInput: Into + 'static {} +pub trait PeripheralInput: Into + 'static + crate::private::Sealed {} /// A signal that can be connected to a peripheral input and/or output. /// /// Peripheral drivers are encouraged to accept types that implement this and /// [`PeripheralInput`] as arguments instead of pin types. -pub trait PeripheralOutput: Into + 'static {} +pub trait PeripheralOutput: Into + 'static + crate::private::Sealed {} // Pins impl PeripheralInput for P {}