From 354c8486d563a722bf915f2b960c06878188d908 Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 09:48:15 -0700 Subject: [PATCH 1/6] Rename `type-c-interface` to `tcpm-interface` --- Cargo.lock | 32 +++++++------- Cargo.toml | 4 +- examples/std/Cargo.lock | 28 ++++++------ examples/std/Cargo.toml | 2 +- .../std/src/lib/type_c/mock_controller.rs | 44 +++++++++---------- .../Cargo.toml | 2 +- .../src/control/dp.rs | 0 .../src/control/mod.rs | 0 .../src/control/pd.rs | 0 .../src/control/power.rs | 0 .../src/control/retimer.rs | 0 .../src/control/svid.rs | 0 .../src/control/tbt.rs | 0 .../src/control/type_c.rs | 0 .../src/control/usb.rs | 0 .../src/control/vdm.rs | 0 .../src/controller/electrical_disconnect.rs | 0 .../src/controller/max_sink_voltage.rs | 0 .../src/controller/mod.rs | 0 .../src/controller/pd.rs | 0 .../src/controller/power.rs | 0 .../src/controller/retimer.rs | 0 .../src/controller/type_c.rs | 0 .../src/lib.rs | 0 .../src/port/electrical_disconnect.rs | 0 .../src/port/event.rs | 0 .../src/port/max_sink_voltage.rs | 0 .../src/port/mod.rs | 0 .../src/port/notification.rs | 0 .../src/port/pd.rs | 0 .../src/port/power.rs | 0 .../src/port/retimer.rs | 0 .../src/port/type_c.rs | 0 .../src/service/event.rs | 0 .../src/service/mod.rs | 0 .../src/service/notification.rs | 0 .../src/ucsi.rs | 0 .../src/util.rs | 0 type-c-interface-mocks/Cargo.toml | 6 +-- type-c-interface-mocks/src/port/mod.rs | 24 +++++----- .../tests/connect_disconnect.rs | 4 +- type-c-interface-test-mocks/Cargo.toml | 4 +- .../src/controller/max_sink_voltage.rs | 4 +- .../src/controller/mod.rs | 42 +++++++++--------- .../src/controller/pd.rs | 6 +-- .../src/controller/ucsi.rs | 2 +- type-c-service/Cargo.toml | 6 +-- .../src/controller/electrical_disconnect.rs | 6 +-- type-c-service/src/controller/event.rs | 4 +- .../src/controller/event_receiver.rs | 2 +- type-c-service/src/controller/macros.rs | 18 ++++---- .../src/controller/max_sink_voltage.rs | 6 +-- type-c-service/src/controller/mod.rs | 16 +++---- type-c-service/src/controller/pd.rs | 18 ++++---- type-c-service/src/controller/power.rs | 14 +++--- type-c-service/src/controller/retimer.rs | 8 ++-- type-c-service/src/controller/type_c.rs | 8 ++-- type-c-service/src/controller/ucsi.rs | 6 +-- type-c-service/src/lib.rs | 2 +- type-c-service/src/service/event_receiver.rs | 10 ++--- type-c-service/src/service/mod.rs | 18 ++++---- type-c-service/src/service/power.rs | 2 +- type-c-service/src/service/registration.rs | 6 +-- type-c-service/src/service/ucsi.rs | 2 +- type-c-service/src/task.rs | 4 +- type-c-service/tests/common/mod.rs | 24 +++++----- type-c-service/tests/debug_accessory.rs | 2 +- type-c-service/tests/notifications.rs | 2 +- type-c-service/tests/power.rs | 2 +- type-c-service/tests/ucsi.rs | 6 +-- type-c-service/tests/unconstrained.rs | 2 +- 71 files changed, 199 insertions(+), 199 deletions(-) rename {type-c-interface => tcpm-interface}/Cargo.toml (96%) rename {type-c-interface => tcpm-interface}/src/control/dp.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/mod.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/pd.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/power.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/retimer.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/svid.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/tbt.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/type_c.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/usb.rs (100%) rename {type-c-interface => tcpm-interface}/src/control/vdm.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/electrical_disconnect.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/max_sink_voltage.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/mod.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/pd.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/power.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/retimer.rs (100%) rename {type-c-interface => tcpm-interface}/src/controller/type_c.rs (100%) rename {type-c-interface => tcpm-interface}/src/lib.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/electrical_disconnect.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/event.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/max_sink_voltage.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/mod.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/notification.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/pd.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/power.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/retimer.rs (100%) rename {type-c-interface => tcpm-interface}/src/port/type_c.rs (100%) rename {type-c-interface => tcpm-interface}/src/service/event.rs (100%) rename {type-c-interface => tcpm-interface}/src/service/mod.rs (100%) rename {type-c-interface => tcpm-interface}/src/service/notification.rs (100%) rename {type-c-interface => tcpm-interface}/src/ucsi.rs (100%) rename {type-c-interface => tcpm-interface}/src/util.rs (100%) diff --git a/Cargo.lock b/Cargo.lock index 7610c1567..460d100d8 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1873,6 +1873,19 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "tcpm-interface" +version = "0.1.0" +dependencies = [ + "bitfield 0.17.0", + "defmt 0.3.100", + "embedded-services", + "embedded-usb-pd", + "heapless 0.9.3", + "log", + "power-policy-interface", +] + [[package]] name = "thermal-service" version = "0.1.0" @@ -2132,19 +2145,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "type-c-interface" -version = "0.1.0" -dependencies = [ - "bitfield 0.17.0", - "defmt 0.3.100", - "embedded-services", - "embedded-usb-pd", - "heapless 0.9.3", - "log", - "power-policy-interface", -] - [[package]] name = "type-c-interface-mocks" version = "0.1.0" @@ -2156,8 +2156,8 @@ dependencies = [ "embedded-usb-pd", "log", "power-policy-interface", + "tcpm-interface", "tokio", - "type-c-interface", ] [[package]] @@ -2166,7 +2166,7 @@ version = "0.1.0" dependencies = [ "embedded-services", "embedded-usb-pd", - "type-c-interface", + "tcpm-interface", ] [[package]] @@ -2187,8 +2187,8 @@ dependencies = [ "paste", "power-policy-interface", "power-policy-service", + "tcpm-interface", "tokio", - "type-c-interface", "type-c-interface-test-mocks", ] diff --git a/Cargo.toml b/Cargo.toml index 7f96ed623..ba0102a72 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -28,7 +28,7 @@ members = [ "keyboard-service", "power-policy-interface", "odp-service-common", - "type-c-interface", + "tcpm-interface", "fw-update-interface", "fw-update-interface-test-mocks", "mctp-rs", @@ -121,7 +121,7 @@ thermal-service-interface = { path = "./thermal-service-interface" } thermal-service-relay = { path = "./thermal-service-relay" } time-alarm-service-interface = { path = "./time-alarm-service-interface" } time-alarm-service-relay = { path = "./time-alarm-service-relay" } -type-c-interface = { path = "./type-c-interface" } +tcpm-interface = { path = "./tcpm-interface" } type-c-interface-mocks = { path = "./type-c-interface-mocks" } type-c-interface-test-mocks = { path = "./type-c-interface-test-mocks" } typenum = "1.20" diff --git a/examples/std/Cargo.lock b/examples/std/Cargo.lock index 1558cc646..667a3803f 100644 --- a/examples/std/Cargo.lock +++ b/examples/std/Cargo.lock @@ -1225,9 +1225,9 @@ dependencies = [ "power-policy-interface", "power-policy-service", "static_cell", + "tcpm-interface", "thermal-service", "thermal-service-interface", - "type-c-interface", "type-c-service", ] @@ -1260,6 +1260,18 @@ dependencies = [ "unicode-ident", ] +[[package]] +name = "tcpm-interface" +version = "0.1.0" +dependencies = [ + "bitfield 0.17.0", + "embedded-services", + "embedded-usb-pd", + "heapless", + "log", + "power-policy-interface", +] + [[package]] name = "thermal-service" version = "0.1.0" @@ -1375,18 +1387,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "type-c-interface" -version = "0.1.0" -dependencies = [ - "bitfield 0.17.0", - "embedded-services", - "embedded-usb-pd", - "heapless", - "log", - "power-policy-interface", -] - [[package]] name = "type-c-service" version = "0.1.0" @@ -1400,7 +1400,7 @@ dependencies = [ "heapless", "log", "power-policy-interface", - "type-c-interface", + "tcpm-interface", ] [[package]] diff --git a/examples/std/Cargo.toml b/examples/std/Cargo.toml index 3bdd2ffa5..75a424d49 100644 --- a/examples/std/Cargo.toml +++ b/examples/std/Cargo.toml @@ -41,7 +41,7 @@ embedded-cfu-protocol = { git = "https://github.com/OpenDevicePartnership/embedd battery-service = { path = "../../battery-service", features = ["log", "mock"] } type-c-service = { path = "../../type-c-service", features = ["log"] } -type-c-interface = { path = "../../type-c-interface", features = ["log"] } +tcpm-interface = { path = "../../tcpm-interface", features = ["log"] } thermal-service = { path = "../../thermal-service", features = ["log", "mock"] } thermal-service-interface = { path = "../../thermal-service-interface" } diff --git a/examples/std/src/lib/type_c/mock_controller.rs b/examples/std/src/lib/type_c/mock_controller.rs index c069fe827..51256ff03 100644 --- a/examples/std/src/lib/type_c/mock_controller.rs +++ b/examples/std/src/lib/type_c/mock_controller.rs @@ -11,19 +11,19 @@ use embedded_usb_pd::{type_c::ConnectionState, ucsi::v1_2::lpm}; use log::{debug, info}; use power_policy_interface::capability::PowerCapability; -use type_c_interface::control::dp::{DpConfig, DpPinConfig, DpStatus}; -use type_c_interface::control::pd::{ +use tcpm_interface::control::dp::{DpConfig, DpPinConfig, DpStatus}; +use tcpm_interface::control::pd::{ PdSinkInfo, PdSourceInfo, PdStateMachineConfig, PortStatus, SinkContract, SourceContract, }; -use type_c_interface::control::power::SystemPowerState; -use type_c_interface::control::retimer::RetimerFwUpdateState; -use type_c_interface::control::svid::DiscoveredSvids; -use type_c_interface::control::tbt::TbtConfig; -use type_c_interface::control::type_c::TypeCStateMachineState; -use type_c_interface::control::usb::UsbControlConfig; -use type_c_interface::control::vdm::{AttnVdm, OtherVdm, SendVdm}; -use type_c_interface::port::event::PortEventBitfield; -use type_c_interface::util::power_capability_from_current; +use tcpm_interface::control::power::SystemPowerState; +use tcpm_interface::control::retimer::RetimerFwUpdateState; +use tcpm_interface::control::svid::DiscoveredSvids; +use tcpm_interface::control::tbt::TbtConfig; +use tcpm_interface::control::type_c::TypeCStateMachineState; +use tcpm_interface::control::usb::UsbControlConfig; +use tcpm_interface::control::vdm::{AttnVdm, OtherVdm, SendVdm}; +use tcpm_interface::port::event::PortEventBitfield; +use tcpm_interface::util::power_capability_from_current; use type_c_service::controller::state::SharedState; pub struct ControllerState { @@ -177,14 +177,14 @@ impl Named for Controller<'_> { } } -impl type_c_interface::controller::Controller for Controller<'_> { +impl tcpm_interface::controller::Controller for Controller<'_> { async fn reset_controller(&mut self) -> Result<(), PdError> { debug!("Reset controller"); Ok(()) } } -impl type_c_interface::controller::pd::Pd for Controller<'_> { +impl tcpm_interface::controller::pd::Pd for Controller<'_> { async fn get_port_status(&mut self, _port: LocalPortId) -> Result { debug!("Get port status: {:#?}", *self.state.status.lock().await); Ok(*self.state.status.lock().await) @@ -289,14 +289,14 @@ impl type_c_interface::controller::pd::Pd for Controller<'_> { } } -impl type_c_interface::controller::max_sink_voltage::MaxSinkVoltage for Controller<'_> { +impl tcpm_interface::controller::max_sink_voltage::MaxSinkVoltage for Controller<'_> { async fn set_max_sink_voltage(&mut self, port: LocalPortId, voltage_mv: Option) -> Result<(), PdError> { debug!("Set max sink voltage for port {}: {:?}", port.0, voltage_mv); Ok(()) } } -impl type_c_interface::controller::pd::StateMachine for Controller<'_> { +impl tcpm_interface::controller::pd::StateMachine for Controller<'_> { async fn set_pd_state_machine_config( &mut self, port: LocalPortId, @@ -307,7 +307,7 @@ impl type_c_interface::controller::pd::StateMachine for Controller<'_> { } } -impl type_c_interface::controller::type_c::StateMachine for Controller<'_> { +impl tcpm_interface::controller::type_c::StateMachine for Controller<'_> { async fn set_type_c_state_machine_config( &mut self, port: LocalPortId, @@ -318,7 +318,7 @@ impl type_c_interface::controller::type_c::StateMachine for Controller<'_> { } } -impl type_c_interface::ucsi::Lpm for Controller<'_> { +impl tcpm_interface::ucsi::Lpm for Controller<'_> { async fn execute_lpm_command(&mut self, command: lpm::LocalCommand) -> Result, PdError> { debug!("Execute UCSI command for port {:?}: {command:?}", command.port()); match command.operation() { @@ -330,7 +330,7 @@ impl type_c_interface::ucsi::Lpm for Controller<'_> { } } -impl type_c_interface::controller::electrical_disconnect::ElectricalDisconnect for Controller<'_> { +impl tcpm_interface::controller::electrical_disconnect::ElectricalDisconnect for Controller<'_> { async fn execute_electrical_disconnect( &mut self, port: LocalPortId, @@ -341,7 +341,7 @@ impl type_c_interface::controller::electrical_disconnect::ElectricalDisconnect f } } -impl type_c_interface::controller::power::SystemPowerStateStatus for Controller<'_> { +impl tcpm_interface::controller::power::SystemPowerStateStatus for Controller<'_> { async fn set_system_power_state_status( &mut self, port: LocalPortId, @@ -352,7 +352,7 @@ impl type_c_interface::controller::power::SystemPowerStateStatus for Controller< } } -impl type_c_interface::controller::retimer::Retimer for Controller<'_> { +impl tcpm_interface::controller::retimer::Retimer for Controller<'_> { async fn get_rt_fw_update_status(&mut self, _port: LocalPortId) -> Result { debug!("Get retimer fw update status"); Ok(RetimerFwUpdateState::Inactive) @@ -386,8 +386,8 @@ pub type Port<'a> = type_c_service::controller::Port< 'a, Mutex>, Mutex, - type_c_interface::port::event::NonBlockingSenderNotifier< - channel::DynamicSender<'a, type_c_interface::service::event::PortEventData>, + tcpm_interface::port::event::NonBlockingSenderNotifier< + channel::DynamicSender<'a, tcpm_interface::service::event::PortEventData>, >, PowerNotifier<'a>, channel::DynamicSender<'a, type_c_service::controller::event::Loopback>, diff --git a/type-c-interface/Cargo.toml b/tcpm-interface/Cargo.toml similarity index 96% rename from type-c-interface/Cargo.toml rename to tcpm-interface/Cargo.toml index f8565d547..b83e6455f 100644 --- a/type-c-interface/Cargo.toml +++ b/tcpm-interface/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "type-c-interface" +name = "tcpm-interface" version.workspace = true edition.workspace = true license.workspace = true diff --git a/type-c-interface/src/control/dp.rs b/tcpm-interface/src/control/dp.rs similarity index 100% rename from type-c-interface/src/control/dp.rs rename to tcpm-interface/src/control/dp.rs diff --git a/type-c-interface/src/control/mod.rs b/tcpm-interface/src/control/mod.rs similarity index 100% rename from type-c-interface/src/control/mod.rs rename to tcpm-interface/src/control/mod.rs diff --git a/type-c-interface/src/control/pd.rs b/tcpm-interface/src/control/pd.rs similarity index 100% rename from type-c-interface/src/control/pd.rs rename to tcpm-interface/src/control/pd.rs diff --git a/type-c-interface/src/control/power.rs b/tcpm-interface/src/control/power.rs similarity index 100% rename from type-c-interface/src/control/power.rs rename to tcpm-interface/src/control/power.rs diff --git a/type-c-interface/src/control/retimer.rs b/tcpm-interface/src/control/retimer.rs similarity index 100% rename from type-c-interface/src/control/retimer.rs rename to tcpm-interface/src/control/retimer.rs diff --git a/type-c-interface/src/control/svid.rs b/tcpm-interface/src/control/svid.rs similarity index 100% rename from type-c-interface/src/control/svid.rs rename to tcpm-interface/src/control/svid.rs diff --git a/type-c-interface/src/control/tbt.rs b/tcpm-interface/src/control/tbt.rs similarity index 100% rename from type-c-interface/src/control/tbt.rs rename to tcpm-interface/src/control/tbt.rs diff --git a/type-c-interface/src/control/type_c.rs b/tcpm-interface/src/control/type_c.rs similarity index 100% rename from type-c-interface/src/control/type_c.rs rename to tcpm-interface/src/control/type_c.rs diff --git a/type-c-interface/src/control/usb.rs b/tcpm-interface/src/control/usb.rs similarity index 100% rename from type-c-interface/src/control/usb.rs rename to tcpm-interface/src/control/usb.rs diff --git a/type-c-interface/src/control/vdm.rs b/tcpm-interface/src/control/vdm.rs similarity index 100% rename from type-c-interface/src/control/vdm.rs rename to tcpm-interface/src/control/vdm.rs diff --git a/type-c-interface/src/controller/electrical_disconnect.rs b/tcpm-interface/src/controller/electrical_disconnect.rs similarity index 100% rename from type-c-interface/src/controller/electrical_disconnect.rs rename to tcpm-interface/src/controller/electrical_disconnect.rs diff --git a/type-c-interface/src/controller/max_sink_voltage.rs b/tcpm-interface/src/controller/max_sink_voltage.rs similarity index 100% rename from type-c-interface/src/controller/max_sink_voltage.rs rename to tcpm-interface/src/controller/max_sink_voltage.rs diff --git a/type-c-interface/src/controller/mod.rs b/tcpm-interface/src/controller/mod.rs similarity index 100% rename from type-c-interface/src/controller/mod.rs rename to tcpm-interface/src/controller/mod.rs diff --git a/type-c-interface/src/controller/pd.rs b/tcpm-interface/src/controller/pd.rs similarity index 100% rename from type-c-interface/src/controller/pd.rs rename to tcpm-interface/src/controller/pd.rs diff --git a/type-c-interface/src/controller/power.rs b/tcpm-interface/src/controller/power.rs similarity index 100% rename from type-c-interface/src/controller/power.rs rename to tcpm-interface/src/controller/power.rs diff --git a/type-c-interface/src/controller/retimer.rs b/tcpm-interface/src/controller/retimer.rs similarity index 100% rename from type-c-interface/src/controller/retimer.rs rename to tcpm-interface/src/controller/retimer.rs diff --git a/type-c-interface/src/controller/type_c.rs b/tcpm-interface/src/controller/type_c.rs similarity index 100% rename from type-c-interface/src/controller/type_c.rs rename to tcpm-interface/src/controller/type_c.rs diff --git a/type-c-interface/src/lib.rs b/tcpm-interface/src/lib.rs similarity index 100% rename from type-c-interface/src/lib.rs rename to tcpm-interface/src/lib.rs diff --git a/type-c-interface/src/port/electrical_disconnect.rs b/tcpm-interface/src/port/electrical_disconnect.rs similarity index 100% rename from type-c-interface/src/port/electrical_disconnect.rs rename to tcpm-interface/src/port/electrical_disconnect.rs diff --git a/type-c-interface/src/port/event.rs b/tcpm-interface/src/port/event.rs similarity index 100% rename from type-c-interface/src/port/event.rs rename to tcpm-interface/src/port/event.rs diff --git a/type-c-interface/src/port/max_sink_voltage.rs b/tcpm-interface/src/port/max_sink_voltage.rs similarity index 100% rename from type-c-interface/src/port/max_sink_voltage.rs rename to tcpm-interface/src/port/max_sink_voltage.rs diff --git a/type-c-interface/src/port/mod.rs b/tcpm-interface/src/port/mod.rs similarity index 100% rename from type-c-interface/src/port/mod.rs rename to tcpm-interface/src/port/mod.rs diff --git a/type-c-interface/src/port/notification.rs b/tcpm-interface/src/port/notification.rs similarity index 100% rename from type-c-interface/src/port/notification.rs rename to tcpm-interface/src/port/notification.rs diff --git a/type-c-interface/src/port/pd.rs b/tcpm-interface/src/port/pd.rs similarity index 100% rename from type-c-interface/src/port/pd.rs rename to tcpm-interface/src/port/pd.rs diff --git a/type-c-interface/src/port/power.rs b/tcpm-interface/src/port/power.rs similarity index 100% rename from type-c-interface/src/port/power.rs rename to tcpm-interface/src/port/power.rs diff --git a/type-c-interface/src/port/retimer.rs b/tcpm-interface/src/port/retimer.rs similarity index 100% rename from type-c-interface/src/port/retimer.rs rename to tcpm-interface/src/port/retimer.rs diff --git a/type-c-interface/src/port/type_c.rs b/tcpm-interface/src/port/type_c.rs similarity index 100% rename from type-c-interface/src/port/type_c.rs rename to tcpm-interface/src/port/type_c.rs diff --git a/type-c-interface/src/service/event.rs b/tcpm-interface/src/service/event.rs similarity index 100% rename from type-c-interface/src/service/event.rs rename to tcpm-interface/src/service/event.rs diff --git a/type-c-interface/src/service/mod.rs b/tcpm-interface/src/service/mod.rs similarity index 100% rename from type-c-interface/src/service/mod.rs rename to tcpm-interface/src/service/mod.rs diff --git a/type-c-interface/src/service/notification.rs b/tcpm-interface/src/service/notification.rs similarity index 100% rename from type-c-interface/src/service/notification.rs rename to tcpm-interface/src/service/notification.rs diff --git a/type-c-interface/src/ucsi.rs b/tcpm-interface/src/ucsi.rs similarity index 100% rename from type-c-interface/src/ucsi.rs rename to tcpm-interface/src/ucsi.rs diff --git a/type-c-interface/src/util.rs b/tcpm-interface/src/util.rs similarity index 100% rename from type-c-interface/src/util.rs rename to tcpm-interface/src/util.rs diff --git a/type-c-interface-mocks/Cargo.toml b/type-c-interface-mocks/Cargo.toml index 53490e184..bc6cc2dd0 100644 --- a/type-c-interface-mocks/Cargo.toml +++ b/type-c-interface-mocks/Cargo.toml @@ -10,7 +10,7 @@ repository.workspace = true embedded-services = { workspace = true } embedded-usb-pd = { workspace = true } power-policy-interface = { workspace = true } -type-c-interface = { workspace = true } +tcpm-interface = { workspace = true } defmt = { workspace = true, optional = true } log = { workspace = true, optional = true } @@ -21,13 +21,13 @@ defmt = [ "embedded-services/defmt", "embedded-usb-pd/defmt", "power-policy-interface/defmt", - "type-c-interface/defmt", + "tcpm-interface/defmt", ] log = [ "dep:log", "embedded-services/log", "power-policy-interface/log", - "type-c-interface/log", + "tcpm-interface/log", ] [dev-dependencies] diff --git a/type-c-interface-mocks/src/port/mod.rs b/type-c-interface-mocks/src/port/mod.rs index b2fc95550..bf201a0cd 100644 --- a/type-c-interface-mocks/src/port/mod.rs +++ b/type-c-interface-mocks/src/port/mod.rs @@ -1,4 +1,4 @@ -//! Mock implementation of the per-port [`type_c_interface::port::pd::Pd`] and +//! Mock implementation of the per-port [`tcpm_interface::port::pd::Pd`] and //! [`power_policy_interface::psu::Psu`] traits. use core::future::ready; @@ -12,7 +12,7 @@ use power_policy_interface::capability::{ ConsumerFlags, ConsumerPowerCapability, PowerCapability, ProviderFlags, ProviderPowerCapability, PsuType, }; use power_policy_interface::psu::{Error as PsuError, Psu, State}; -use type_c_interface::control::{ +use tcpm_interface::control::{ dp::{DpConfig, DpStatus}, pd::{PdSinkInfo, PdSourceInfo, PortStatus, SinkContract, SourceContract}, svid::DiscoveredSvids, @@ -20,9 +20,9 @@ use type_c_interface::control::{ usb::UsbControlConfig, vdm::{AttnVdm, OtherVdm, SendVdm}, }; -use type_c_interface::port::event::PortStatusEventBitfield; -use type_c_interface::port::pd::Pd; -use type_c_interface::service::event::StatusChangedData; +use tcpm_interface::port::event::PortStatusEventBitfield; +use tcpm_interface::port::pd::Pd; +use tcpm_interface::service::event::StatusChangedData; /// Error type for [`PortMock`] control operations #[derive(Debug, Clone, Copy, PartialEq, Eq)] @@ -53,7 +53,7 @@ impl Default for ConnectionConfig { /// Mock implementation of a single Type-C port for use in tests pub struct PortMock< - TypeCSender: NonBlockingSender, + TypeCSender: NonBlockingSender, PowerSender: NonBlockingSender, > { name: &'static str, @@ -69,7 +69,7 @@ pub struct PortMock< impl PortMock where - TypeCSender: NonBlockingSender, + TypeCSender: NonBlockingSender, PowerSender: NonBlockingSender, { /// Create a new mock with the given name @@ -182,7 +182,7 @@ where if self .type_c_sender - .try_send(type_c_interface::service::event::PortEventData::StatusChanged( + .try_send(tcpm_interface::service::event::PortEventData::StatusChanged( StatusChangedData { status_event, previous_status, @@ -222,7 +222,7 @@ where if self .type_c_sender - .try_send(type_c_interface::service::event::PortEventData::StatusChanged( + .try_send(tcpm_interface::service::event::PortEventData::StatusChanged( StatusChangedData { status_event, previous_status, @@ -239,7 +239,7 @@ where impl Named for PortMock where - TypeCSender: NonBlockingSender, + TypeCSender: NonBlockingSender, PowerSender: NonBlockingSender, { fn name(&self) -> &'static str { @@ -249,7 +249,7 @@ where impl Pd for PortMock where - TypeCSender: NonBlockingSender, + TypeCSender: NonBlockingSender, PowerSender: NonBlockingSender, { async fn get_port_status(&mut self) -> Result { @@ -329,7 +329,7 @@ where impl Psu for PortMock where - TypeCSender: NonBlockingSender, + TypeCSender: NonBlockingSender, PowerSender: NonBlockingSender, { async fn disconnect(&mut self) -> Result<(), PsuError> { diff --git a/type-c-interface-mocks/tests/connect_disconnect.rs b/type-c-interface-mocks/tests/connect_disconnect.rs index 4289aea12..03b3f91ba 100644 --- a/type-c-interface-mocks/tests/connect_disconnect.rs +++ b/type-c-interface-mocks/tests/connect_disconnect.rs @@ -11,8 +11,8 @@ use power_policy_interface::capability::{ }; use power_policy_interface::psu::event::EventData as PsuEventData; use power_policy_interface::psu::{Psu, PsuState}; -use type_c_interface::service::event::PortEventData; -use type_c_interface_mocks::port::{ConnectionConfig, PortMock, PortMockError}; +use tcpm_interface::service::event::PortEventData; +use tcpm_interface_mocks::port::{ConnectionConfig, PortMock, PortMockError}; const CHANNEL_SIZE: usize = 4; diff --git a/type-c-interface-test-mocks/Cargo.toml b/type-c-interface-test-mocks/Cargo.toml index 9c3f10a6d..d4e10fa7e 100644 --- a/type-c-interface-test-mocks/Cargo.toml +++ b/type-c-interface-test-mocks/Cargo.toml @@ -9,11 +9,11 @@ repository.workspace = true [dependencies] embedded-services = { workspace = true } embedded-usb-pd = { workspace = true } -type-c-interface = { workspace = true } +tcpm-interface = { workspace = true } [features] default = [] -log = ["embedded-services/log", "type-c-interface/log"] +log = ["embedded-services/log", "tcpm-interface/log"] [lints] workspace = true diff --git a/type-c-interface-test-mocks/src/controller/max_sink_voltage.rs b/type-c-interface-test-mocks/src/controller/max_sink_voltage.rs index ad9e4a013..14f97ed8b 100644 --- a/type-c-interface-test-mocks/src/controller/max_sink_voltage.rs +++ b/type-c-interface-test-mocks/src/controller/max_sink_voltage.rs @@ -1,7 +1,7 @@ -//! Mock implementation of [`type_c_interface::controller::max_sink_voltage::MaxSinkVoltage`] +//! Mock implementation of [`tcpm_interface::controller::max_sink_voltage::MaxSinkVoltage`] use embedded_usb_pd::{LocalPortId, PdError}; -use type_c_interface::controller::max_sink_voltage::MaxSinkVoltage; +use tcpm_interface::controller::max_sink_voltage::MaxSinkVoltage; use super::FnCall as ControllerFnCall; use super::Mock; diff --git a/type-c-interface-test-mocks/src/controller/mod.rs b/type-c-interface-test-mocks/src/controller/mod.rs index 0eebd8161..093a1a1c1 100644 --- a/type-c-interface-test-mocks/src/controller/mod.rs +++ b/type-c-interface-test-mocks/src/controller/mod.rs @@ -4,7 +4,7 @@ use std::collections::VecDeque; use embedded_services::named::Named; use embedded_usb_pd::{PdError, ado::Ado}; -use type_c_interface::control::{ +use tcpm_interface::control::{ dp::DpStatus, pd::PortStatus, vdm::{AttnVdm, OtherVdm}, @@ -26,45 +26,45 @@ pub struct Mock { name: &'static str, /// Recorded function calls pub fn_calls: VecDeque, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_port_status`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_port_status`] pub next_result_get_port_status: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::clear_dead_battery_flag`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::clear_dead_battery_flag`] pub next_result_clear_dead_battery_flag: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::enable_sink_path`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::enable_sink_path`] pub next_result_enable_sink_path: VecDeque>, - /// Next results to return for [`type_c_interface::controller::max_sink_voltage::MaxSinkVoltage::set_max_sink_voltage`] + /// Next results to return for [`tcpm_interface::controller::max_sink_voltage::MaxSinkVoltage::set_max_sink_voltage`] pub next_result_set_max_sink_voltage: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_pd_alert`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_pd_alert`] pub next_result_get_pd_alert: VecDeque, PdError>>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::set_unconstrained_power`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::set_unconstrained_power`] pub next_result_set_unconstrained_power: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_other_vdm`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_other_vdm`] pub next_result_get_other_vdm: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_attn_vdm`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_attn_vdm`] pub next_result_get_attn_vdm: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::send_vdm`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::send_vdm`] pub next_result_send_vdm: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::execute_drst`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::execute_drst`] pub next_result_execute_drst: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_dp_status`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_dp_status`] pub next_result_get_dp_status: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::set_dp_config`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::set_dp_config`] pub next_result_set_dp_config: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::set_tbt_config`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::set_tbt_config`] pub next_result_set_tbt_config: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::set_usb_control`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::set_usb_control`] pub next_result_set_usb_control: VecDeque>, - /// Next results to return for [`type_c_interface::ucsi::Lpm::execute_lpm_command`] + /// Next results to return for [`tcpm_interface::ucsi::Lpm::execute_lpm_command`] pub next_result_execute_lpm_command: VecDeque, PdError>>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::hard_reset`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::hard_reset`] pub next_result_hard_reset: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_discovered_svids`] - pub next_result_get_discovered_svids: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_discover_identity_sop_response`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_discovered_svids`] + pub next_result_get_discovered_svids: VecDeque>, + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_discover_identity_sop_response`] pub next_result_get_discover_identity_sop_response: VecDeque>, - /// Next results to return for [`type_c_interface::controller::pd::Pd::get_discover_identity_sop_prime_response`] + /// Next results to return for [`tcpm_interface::controller::pd::Pd::get_discover_identity_sop_prime_response`] pub next_result_get_discover_identity_sop_prime_response: VecDeque< Result, >, diff --git a/type-c-interface-test-mocks/src/controller/pd.rs b/type-c-interface-test-mocks/src/controller/pd.rs index 62aa1193d..ee77935da 100644 --- a/type-c-interface-test-mocks/src/controller/pd.rs +++ b/type-c-interface-test-mocks/src/controller/pd.rs @@ -1,7 +1,7 @@ -//! Mock implementation of [`type_c_interface::controller::pd::Pd`] +//! Mock implementation of [`tcpm_interface::controller::pd::Pd`] use embedded_usb_pd::{LocalPortId, PdError, ado::Ado}; -use type_c_interface::{ +use tcpm_interface::{ control::{ dp::{DpConfig, DpStatus}, pd::PortStatus, @@ -147,7 +147,7 @@ impl Pd for Mock { async fn get_discovered_svids( &mut self, port: LocalPortId, - ) -> Result { + ) -> Result { self.fn_calls .push_back(ControllerFnCall::Pd(FnCall::GetDiscoveredSvids(port))); self.next_result_get_discovered_svids diff --git a/type-c-interface-test-mocks/src/controller/ucsi.rs b/type-c-interface-test-mocks/src/controller/ucsi.rs index e76146f2a..ad618c167 100644 --- a/type-c-interface-test-mocks/src/controller/ucsi.rs +++ b/type-c-interface-test-mocks/src/controller/ucsi.rs @@ -1,6 +1,6 @@ use embedded_usb_pd::PdError; use embedded_usb_pd::ucsi::v1_2::lpm; -use type_c_interface::ucsi::Lpm as UcsiLpm; +use tcpm_interface::ucsi::Lpm as UcsiLpm; use super::FnCall as ControllerFnCall; use super::Mock; diff --git a/type-c-service/Cargo.toml b/type-c-service/Cargo.toml index d0fd8336f..2ba3ad538 100644 --- a/type-c-service/Cargo.toml +++ b/type-c-service/Cargo.toml @@ -24,7 +24,7 @@ fw-update-interface.workspace = true heapless.workspace = true log = { workspace = true, optional = true } power-policy-interface.workspace = true -type-c-interface.workspace = true +tcpm-interface.workspace = true [dev-dependencies] embassy-time = { workspace = true, features = ["std", "generic-queue-8"] } @@ -47,7 +47,7 @@ defmt = [ "embassy-sync/defmt", "embedded-usb-pd/defmt", "power-policy-interface/defmt", - "type-c-interface/defmt", + "tcpm-interface/defmt", "fw-update-interface/defmt", "power-policy-service/defmt", ] @@ -57,7 +57,7 @@ log = [ "embassy-time/log", "embassy-sync/log", "power-policy-interface/log", - "type-c-interface/log", + "tcpm-interface/log", "fw-update-interface/log", "power-policy-service/log", "type-c-interface-test-mocks/log", diff --git a/type-c-service/src/controller/electrical_disconnect.rs b/type-c-service/src/controller/electrical_disconnect.rs index 6dad4b6d2..cccc04c02 100644 --- a/type-c-service/src/controller/electrical_disconnect.rs +++ b/type-c-service/src/controller/electrical_disconnect.rs @@ -3,7 +3,7 @@ use core::num::NonZeroU8; use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::PdError; -use type_c_interface::controller::electrical_disconnect::ElectricalDisconnect; +use tcpm_interface::controller::electrical_disconnect::ElectricalDisconnect; use super::*; use crate::controller::state::SharedState; @@ -12,10 +12,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::electrical_disconnect::ElectricalDisconnect +> tcpm_interface::port::electrical_disconnect::ElectricalDisconnect for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn execute_electrical_disconnect(&mut self, reconnect_time_s: Option) -> Result<(), PdError> { diff --git a/type-c-service/src/controller/event.rs b/type-c-service/src/controller/event.rs index 54a227a7e..96faf9ed4 100644 --- a/type-c-service/src/controller/event.rs +++ b/type-c-service/src/controller/event.rs @@ -1,6 +1,6 @@ //! Port event types -use type_c_interface::port::event::PortEventBitfield; +use tcpm_interface::port::event::PortEventBitfield; /// Top-level port event type #[derive(Copy, Clone, Debug)] @@ -8,7 +8,7 @@ use type_c_interface::port::event::PortEventBitfield; #[non_exhaustive] pub enum Event { /// Port event - PortEvent(type_c_interface::port::event::PortEvent), + PortEvent(tcpm_interface::port::event::PortEvent), } /// Loopback event to allow `sync_state` and similar functions diff --git a/type-c-service/src/controller/event_receiver.rs b/type-c-service/src/controller/event_receiver.rs index d29c3a7d5..2e0ef0c2b 100644 --- a/type-c-service/src/controller/event_receiver.rs +++ b/type-c-service/src/controller/event_receiver.rs @@ -10,7 +10,7 @@ use embedded_services::sync::Lockable; use crate::PortEventStreamer; use crate::controller::event::{Event, Loopback}; use crate::controller::state::SharedState; -use type_c_interface::port::event::{PortEvent, PortEventBitfield, PortStatusEventBitfield}; +use tcpm_interface::port::event::{PortEvent, PortEventBitfield, PortStatusEventBitfield}; /// Trait used for receiving interrupt from the controller. pub trait InterruptReceiver { diff --git a/type-c-service/src/controller/macros.rs b/type-c-service/src/controller/macros.rs index 0fc866275..ed715af8c 100644 --- a/type-c-service/src/controller/macros.rs +++ b/type-c-service/src/controller/macros.rs @@ -2,7 +2,7 @@ use embedded_services::{ event::{NonBlockingSender, Receiver}, sync::Lockable, }; -use type_c_interface::port::event::PortEventBitfield; +use tcpm_interface::port::event::PortEventBitfield; use crate::controller::{event_receiver::EventReceiver, state}; @@ -16,7 +16,7 @@ pub struct PortComponents< 'a, Port, SharedState: Lockable, - TypeCReceiver: Receiver, + TypeCReceiver: Receiver, PowerPolicyReceveiver: Receiver, LoopbackReceiver: Receiver, InterruptReceiver: Receiver, @@ -51,12 +51,12 @@ macro_rules! define_controller_port_static_cell_channel { ::embassy_sync::channel::DynamicReceiver<'static, ::power_policy_interface::psu::event::EventData>; /// Type alias for the type-c service event sender - pub type InnerTypeCSenderType = ::embassy_sync::channel::DynamicSender<'static, ::type_c_interface::service::event::PortEventData>; + pub type InnerTypeCSenderType = ::embassy_sync::channel::DynamicSender<'static, ::tcpm_interface::service::event::PortEventData>; /// Type alias for the type-c service event notifier pub type InnerTypeCNotifierType = - ::type_c_interface::port::event::NonBlockingSenderNotifier; + ::tcpm_interface::port::event::NonBlockingSenderNotifier; /// Type alias for the type-c service event receiver - pub type InnerTypeCReceiverType = ::embassy_sync::channel::DynamicReceiver<'static, ::type_c_interface::service::event::PortEventData>; + pub type InnerTypeCReceiverType = ::embassy_sync::channel::DynamicReceiver<'static, ::tcpm_interface::service::event::PortEventData>; /// Type alias for the loopback sender pub type InnerLoopbackSenderType = @@ -67,10 +67,10 @@ macro_rules! define_controller_port_static_cell_channel { /// Type alias for the interrupt sender pub type InnerInterruptReceiverType = - ::embassy_sync::channel::DynamicReceiver<'static, ::type_c_interface::port::event::PortEventBitfield>; + ::embassy_sync::channel::DynamicReceiver<'static, ::tcpm_interface::port::event::PortEventBitfield>; /// Type alias for the interrupt receiver pub type InnerInterruptSenderType = - ::embassy_sync::channel::DynamicSender<'static, ::type_c_interface::port::event::PortEventBitfield>; + ::embassy_sync::channel::DynamicSender<'static, ::tcpm_interface::port::event::PortEventBitfield>; /// Type alias for the shared state mutex pub type InnerSharedStateType = @@ -97,7 +97,7 @@ macro_rules! define_controller_port_static_cell_channel { static TYPE_C_CHANNEL: ::static_cell::StaticCell< ::embassy_sync::channel::Channel< $mutex, - ::type_c_interface::service::event::PortEventData, + ::tcpm_interface::service::event::PortEventData, { $crate::controller::macros::DEFAULT_TYPE_C_CHANNEL_SIZE }, >, > = ::static_cell::StaticCell::new(); @@ -121,7 +121,7 @@ macro_rules! define_controller_port_static_cell_channel { static INTERRUPT_CHANNEL: ::static_cell::StaticCell< ::embassy_sync::channel::Channel< $mutex, - ::type_c_interface::port::event::PortEventBitfield, + ::tcpm_interface::port::event::PortEventBitfield, { $crate::controller::macros::DEFAULT_INTERRUPT_CHANNEL_SIZE }, >, > = ::static_cell::StaticCell::new(); diff --git a/type-c-service/src/controller/max_sink_voltage.rs b/type-c-service/src/controller/max_sink_voltage.rs index ba13f2113..0f3f6acc0 100644 --- a/type-c-service/src/controller/max_sink_voltage.rs +++ b/type-c-service/src/controller/max_sink_voltage.rs @@ -3,7 +3,7 @@ use embassy_time::Instant; use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::PdError; use power_policy_interface::capability::{DisconnectFlags, DisconnectReason}; -use type_c_interface::controller::max_sink_voltage::MaxSinkVoltage; +use tcpm_interface::controller::max_sink_voltage::MaxSinkVoltage; use super::*; use crate::controller::state::SharedState; @@ -12,10 +12,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::max_sink_voltage::MaxSinkVoltage +> tcpm_interface::port::max_sink_voltage::MaxSinkVoltage for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn set_max_sink_voltage(&mut self, voltage_mv: Option) -> Result<(), PdError> { diff --git a/type-c-service/src/controller/mod.rs b/type-c-service/src/controller/mod.rs index e802d5f14..76da1bae7 100644 --- a/type-c-service/src/controller/mod.rs +++ b/type-c-service/src/controller/mod.rs @@ -2,11 +2,11 @@ use embedded_services::{debug, error, event::NonBlockingSender, info, named::Named, sync::Lockable}; use embedded_usb_pd::{LocalPortId, PdError}; use power_policy_interface::psu::PsuState; -use type_c_interface::control::pd::PortStatus; -use type_c_interface::controller::pd::Pd; -use type_c_interface::port::event::PortEventBitfield; -use type_c_interface::port::{event::PortEvent as InterfacePortEvent, event::PortStatusEventBitfield}; -use type_c_interface::service::event::{PortEventData as ServicePortEventData, StatusChangedData}; +use tcpm_interface::control::pd::PortStatus; +use tcpm_interface::controller::pd::Pd; +use tcpm_interface::port::event::PortEventBitfield; +use tcpm_interface::port::{event::PortEvent as InterfacePortEvent, event::PortStatusEventBitfield}; +use tcpm_interface::service::event::{PortEventData as ServicePortEventData, StatusChangedData}; use crate::controller::event::{Event, Loopback}; use crate::controller::state::SharedState; @@ -28,7 +28,7 @@ pub struct Port< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > { @@ -58,7 +58,7 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> @@ -237,7 +237,7 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > Named for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> diff --git a/type-c-service/src/controller/pd.rs b/type-c-service/src/controller/pd.rs index 8bf7139f9..ee7677503 100644 --- a/type-c-service/src/controller/pd.rs +++ b/type-c-service/src/controller/pd.rs @@ -3,7 +3,7 @@ use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::PdError; use embedded_usb_pd::ado::Ado; use embedded_usb_pd::vdm::structured::command::discover_identity::{sop, sop_prime}; -use type_c_interface::control::{ +use tcpm_interface::control::{ dp::{DpConfig, DpStatus}, pd::{PdStateMachineConfig, PortStatus}, svid::DiscoveredSvids, @@ -11,9 +11,9 @@ use type_c_interface::control::{ usb::UsbControlConfig, vdm::{AttnVdm, OtherVdm, SendVdm}, }; -use type_c_interface::controller::pd::StateMachine; -use type_c_interface::port::event::{VdmData, VdmNotification}; -use type_c_interface::service::event::PortEventData as ServicePortEventData; +use tcpm_interface::controller::pd::StateMachine; +use tcpm_interface::port::event::{VdmData, VdmNotification}; +use tcpm_interface::service::event::PortEventData as ServicePortEventData; use super::*; use crate::controller::state::SharedState; @@ -22,7 +22,7 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> @@ -85,10 +85,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::pd::Pd for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> +> tcpm_interface::port::pd::Pd for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn get_port_status(&mut self) -> Result { self.controller.lock().await.get_port_status(self.port).await @@ -179,10 +179,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::pd::StateMachine for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> +> tcpm_interface::port::pd::StateMachine for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn set_pd_state_machine_config(&mut self, config: PdStateMachineConfig) -> Result<(), PdError> { self.controller diff --git a/type-c-service/src/controller/power.rs b/type-c-service/src/controller/power.rs index 11c501c5e..96636dc1d 100644 --- a/type-c-service/src/controller/power.rs +++ b/type-c-service/src/controller/power.rs @@ -9,10 +9,10 @@ use power_policy_interface::{ capability::{ConsumerPowerCapability, DisconnectFlags, DisconnectReason, ProviderPowerCapability, PsuType}, psu::{Error as PsuError, Psu, State}, }; -use type_c_interface::controller::power::SystemPowerStateStatus; +use tcpm_interface::controller::power::SystemPowerStateStatus; use crate::controller::config::UnconstrainedSink; -use type_c_interface::util::power_policy_error_from_pd_error; +use tcpm_interface::util::power_policy_error_from_pd_error; use super::*; @@ -20,7 +20,7 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> @@ -237,7 +237,7 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, > Psu for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> @@ -293,15 +293,15 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::power::SystemPowerStateStatus +> tcpm_interface::port::power::SystemPowerStateStatus for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn set_system_power_state_status( &mut self, - state: type_c_interface::control::power::SystemPowerState, + state: tcpm_interface::control::power::SystemPowerState, ) -> Result<(), PdError> { self.controller .lock() diff --git a/type-c-service/src/controller/retimer.rs b/type-c-service/src/controller/retimer.rs index 74114fd42..413797590 100644 --- a/type-c-service/src/controller/retimer.rs +++ b/type-c-service/src/controller/retimer.rs @@ -1,8 +1,8 @@ //! Retimer port trait implementation use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::PdError; -use type_c_interface::control::retimer::RetimerFwUpdateState; -use type_c_interface::controller::retimer::Retimer; +use tcpm_interface::control::retimer::RetimerFwUpdateState; +use tcpm_interface::controller::retimer::Retimer; use super::*; use crate::controller::state::SharedState; @@ -11,10 +11,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::retimer::Retimer for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> +> tcpm_interface::port::retimer::Retimer for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn get_rt_fw_update_status(&mut self) -> Result { self.controller.lock().await.get_rt_fw_update_status(self.port).await diff --git a/type-c-service/src/controller/type_c.rs b/type-c-service/src/controller/type_c.rs index 740bdb8da..dc11f17c6 100644 --- a/type-c-service/src/controller/type_c.rs +++ b/type-c-service/src/controller/type_c.rs @@ -1,8 +1,8 @@ //! Type-C state machine port trait implementation use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::PdError; -use type_c_interface::control::type_c::TypeCStateMachineState; -use type_c_interface::controller::type_c::StateMachine; +use tcpm_interface::control::type_c::TypeCStateMachineState; +use tcpm_interface::controller::type_c::StateMachine; use super::*; use crate::controller::state::SharedState; @@ -11,10 +11,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::port::type_c::StateMachine +> tcpm_interface::port::type_c::StateMachine for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn set_type_c_state_machine_config(&mut self, state: TypeCStateMachineState) -> Result<(), PdError> { diff --git a/type-c-service/src/controller/ucsi.rs b/type-c-service/src/controller/ucsi.rs index 05a6fef54..63e35a829 100644 --- a/type-c-service/src/controller/ucsi.rs +++ b/type-c-service/src/controller/ucsi.rs @@ -1,7 +1,7 @@ //! UCSI LPM port trait implementation use embedded_services::{event::NonBlockingSender, sync::Lockable}; use embedded_usb_pd::{PdError, ucsi::v1_2::lpm}; -use type_c_interface::ucsi::Lpm as UcsiLpm; +use tcpm_interface::ucsi::Lpm as UcsiLpm; use super::*; use crate::controller::state::SharedState; @@ -10,10 +10,10 @@ impl< 'device, C: Lockable, Shared: Lockable, - PortNotifier: type_c_interface::port::notification::Notifier, + PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> type_c_interface::ucsi::Lpm for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> +> tcpm_interface::ucsi::Lpm for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn execute_lpm_command(&mut self, command: lpm::LocalCommand) -> Result, PdError> { self.controller.lock().await.execute_lpm_command(command).await diff --git a/type-c-service/src/lib.rs b/type-c-service/src/lib.rs index ce1fa8604..6d9716b11 100644 --- a/type-c-service/src/lib.rs +++ b/type-c-service/src/lib.rs @@ -6,7 +6,7 @@ pub mod util; use core::iter::Enumerate; -use type_c_interface::port::event::{ +use tcpm_interface::port::event::{ PortEvent, PortEventBitfield, PortNotificationEventBitfield, PortStatusEventBitfield, }; diff --git a/type-c-service/src/service/event_receiver.rs b/type-c-service/src/service/event_receiver.rs index eb2e669bc..b78a468c5 100644 --- a/type-c-service/src/service/event_receiver.rs +++ b/type-c-service/src/service/event_receiver.rs @@ -4,7 +4,7 @@ use crate::service::Event; use embassy_futures::select::{Either, select, select_slice}; use embedded_services::{event::Receiver, sync::Lockable}; use power_policy_interface::service::event::EventData as PowerPolicyEventData; -use type_c_interface::{port::pd::Pd, service::event::PortEvent}; +use tcpm_interface::{port::pd::Pd, service::event::PortEvent}; struct PowerPolicySubscriber> { receiver: PowerReceiver, @@ -21,7 +21,7 @@ pub struct ArrayPortReceivers< 'port, const N: usize, Port: Lockable, - PortReceiver: Receiver, + PortReceiver: Receiver, > { ports: [&'port Port; N], port_receivers: [PortReceiver; N], @@ -31,7 +31,7 @@ impl< 'port, const N: usize, Port: Lockable, - PortReceiver: Receiver, + PortReceiver: Receiver, > ArrayPortReceivers<'port, N, Port, PortReceiver> { /// Get the next pending PSU event @@ -57,7 +57,7 @@ pub struct ArrayEventReceiver< 'a, const N: usize, Port: Lockable, - PortReceiver: Receiver, + PortReceiver: Receiver, PowerReceiver: Receiver, > { /// Power policy event subscriber @@ -70,7 +70,7 @@ impl< 'port, const N: usize, Port: Lockable, - PortReceiver: Receiver, + PortReceiver: Receiver, PowerReceiver: Receiver, > ArrayEventReceiver<'port, N, Port, PortReceiver, PowerReceiver> { diff --git a/type-c-service/src/service/mod.rs b/type-c-service/src/service/mod.rs index 2b5fbc528..dffe86b91 100644 --- a/type-c-service/src/service/mod.rs +++ b/type-c-service/src/service/mod.rs @@ -8,15 +8,15 @@ use embedded_usb_pd::GlobalPortId; use embedded_usb_pd::PdError as Error; use embedded_usb_pd::ado::Ado; use power_policy_interface::service::event::EventData as PowerPolicyEventData; -use type_c_interface::control::dp::DpStatus; -use type_c_interface::control::pd::PortStatus; -use type_c_interface::port::event::VdmData; -use type_c_interface::port::notification::NotificationHandler; -use type_c_interface::port::pd::Pd; -use type_c_interface::service::event::{PortEvent, PortEventData}; -use type_c_interface::service::notification::Notifier as _; - -use type_c_interface::port::event::PortStatusEventBitfield; +use tcpm_interface::control::dp::DpStatus; +use tcpm_interface::control::pd::PortStatus; +use tcpm_interface::port::event::VdmData; +use tcpm_interface::port::notification::NotificationHandler; +use tcpm_interface::port::pd::Pd; +use tcpm_interface::service::event::{PortEvent, PortEventData}; +use tcpm_interface::service::notification::Notifier as _; + +use tcpm_interface::port::event::PortStatusEventBitfield; use crate::service::registration::Registration; diff --git a/type-c-service/src/service/power.rs b/type-c-service/src/service/power.rs index b955e0a6a..06d879e4a 100644 --- a/type-c-service/src/service/power.rs +++ b/type-c-service/src/service/power.rs @@ -3,7 +3,7 @@ use core::ptr; use embedded_services::sync::Lockable as _; use power_policy_interface::service as power_policy; use power_policy_interface::service::event::EventData as PowerPolicyEventData; -use type_c_interface::port::pd::Pd as _; +use tcpm_interface::port::pd::Pd as _; use super::*; diff --git a/type-c-service/src/service/registration.rs b/type-c-service/src/service/registration.rs index b7510d702..db267cb6c 100644 --- a/type-c-service/src/service/registration.rs +++ b/type-c-service/src/service/registration.rs @@ -2,9 +2,9 @@ use embedded_services::sync::Lockable; use embedded_usb_pd::{GlobalPortId, LocalPortId}; -use type_c_interface::port::pd::Pd; -use type_c_interface::service::notification::Notifier as ServiceNotifierTrait; -use type_c_interface::ucsi::Lpm as UcsiLpm; +use tcpm_interface::port::pd::Pd; +use tcpm_interface::service::notification::Notifier as ServiceNotifierTrait; +use tcpm_interface::ucsi::Lpm as UcsiLpm; /// Registration trait that abstracts over various registration details. pub trait Registration<'port> { diff --git a/type-c-service/src/service/ucsi.rs b/type-c-service/src/service/ucsi.rs index eb61b859e..f634e2e11 100644 --- a/type-c-service/src/service/ucsi.rs +++ b/type-c-service/src/service/ucsi.rs @@ -8,7 +8,7 @@ use embedded_usb_pd::ucsi::v1_2::ppm::state_machine::{ }; use embedded_usb_pd::ucsi::v1_2::{GlobalCommand, ResponseData, lpm, ppm}; use embedded_usb_pd::{PdError, PowerRole}; -use type_c_interface::ucsi::Lpm as _; +use tcpm_interface::ucsi::Lpm as _; use super::*; diff --git a/type-c-service/src/task.rs b/type-c-service/src/task.rs index 8ad364bd9..e465ccefe 100644 --- a/type-c-service/src/task.rs +++ b/type-c-service/src/task.rs @@ -1,6 +1,6 @@ use embedded_services::{error, event::Receiver, info, sync::Lockable}; use power_policy_interface::service::event::EventData as PowerPolicyEventData; -use type_c_interface::port::pd::Pd; +use tcpm_interface::port::pd::Pd; use crate::service::{Service, event_receiver::ArrayEventReceiver, registration::Registration}; @@ -8,7 +8,7 @@ use crate::service::{Service, event_receiver::ArrayEventReceiver, registration:: pub async fn task< const N: usize, Port: Lockable, - PortReceiver: Receiver, + PortReceiver: Receiver, PowerReceiver: Receiver, >( service: &'static impl Lockable>>, diff --git a/type-c-service/tests/common/mod.rs b/type-c-service/tests/common/mod.rs index d86c99b02..8c83f2c01 100644 --- a/type-c-service/tests/common/mod.rs +++ b/type-c-service/tests/common/mod.rs @@ -32,11 +32,11 @@ pub const POWER_POLICY_SENDER_COUNT: usize = 1; pub type ControllerMockMutexType = Mutex; /// [`type_c_service::controller::Port`] sender to type-C service -pub type PortTypeCSender<'a> = DynamicSender<'a, type_c_interface::service::event::PortEventData>; +pub type PortTypeCSender<'a> = DynamicSender<'a, tcpm_interface::service::event::PortEventData>; /// Corresponding receiver for [`PortTypeCSender`] -pub type PortTypeCReceiver<'a> = DynamicReceiver<'a, type_c_interface::service::event::PortEventData>; +pub type PortTypeCReceiver<'a> = DynamicReceiver<'a, tcpm_interface::service::event::PortEventData>; /// Type-C port notification wrapper -pub type PortTypeCNotifier<'a> = type_c_interface::port::event::NonBlockingSenderNotifier>; +pub type PortTypeCNotifier<'a> = tcpm_interface::port::event::NonBlockingSenderNotifier>; /// [`type_c_service::controller::Port`] sender to power policy service pub type PortPowerSender<'a> = DynamicSender<'a, power_policy_interface::psu::event::EventData>; /// Corresponding receiver for [`PortPowerSender`] @@ -48,9 +48,9 @@ pub type PortLoopbackSender<'a> = DynamicSender<'a, type_c_service::controller:: /// Corresponding receiver for [`PortLoopbackSender`] pub type PortLoopbackReceiver<'a> = DynamicReceiver<'a, type_c_service::controller::event::Loopback>; /// Interrupt sender into a [`type_c_service::controller::Port`]'s event receiver -pub type PortInterruptSender<'a> = DynamicSender<'a, type_c_interface::port::event::PortEventBitfield>; +pub type PortInterruptSender<'a> = DynamicSender<'a, tcpm_interface::port::event::PortEventBitfield>; /// Corresponding receiver for [`PortInterruptSender`] -pub type PortInterruptReceiver<'a> = DynamicReceiver<'a, type_c_interface::port::event::PortEventBitfield>; +pub type PortInterruptReceiver<'a> = DynamicReceiver<'a, tcpm_interface::port::event::PortEventBitfield>; /// Shared port state type pub type PortSharedState = Mutex; /// Port type @@ -112,12 +112,12 @@ pub type PowerPolicyServiceMutexType<'port, 'ch> = /// Sender for events broadcast by the type-C service pub type TypeCServiceSender<'port, 'ch> = - DynamicSender<'ch, type_c_interface::service::event::Event<'port, PortMutexType<'port, 'ch>>>; + DynamicSender<'ch, tcpm_interface::service::event::Event<'port, PortMutexType<'port, 'ch>>>; /// Receiver for events broadcast by the type-C service pub type TypeCServiceReceiver<'port, 'ch> = - DynamicReceiver<'ch, type_c_interface::service::event::Event<'port, PortMutexType<'port, 'ch>>>; + DynamicReceiver<'ch, tcpm_interface::service::event::Event<'port, PortMutexType<'port, 'ch>>>; /// Notifier for events broadcast by the type-C service -pub type TypeCServiceNotifier<'port, 'ch> = type_c_interface::service::event::NonBlockingSenderNotifier< +pub type TypeCServiceNotifier<'port, 'ch> = tcpm_interface::service::event::NonBlockingSenderNotifier< 'port, PortMutexType<'port, 'ch>, TypeCServiceSender<'port, 'ch>, @@ -186,7 +186,7 @@ macro_rules! define_port { ($name:ident, $mock_name:expr, $port_name:expr, $config:expr, $local_id:expr) => { paste! { let [<$name _type_c_channel>]: Channel< GlobalRawMutex, - type_c_interface::service::event::PortEventData, + tcpm_interface::service::event::PortEventData, CHANNEL_SIZE, > = Channel::new(); } paste! { let [<$name _type_c_sender>] = [<$name _type_c_channel>].dyn_sender(); } @@ -210,7 +210,7 @@ macro_rules! define_port { paste! { let [<$name _interrupt_channel>]: Channel< GlobalRawMutex, - type_c_interface::port::event::PortEventBitfield, + tcpm_interface::port::event::PortEventBitfield, CHANNEL_SIZE, > = Channel::new(); } paste! { let [<$name _interrupt_sender>] = [<$name _interrupt_channel>].dyn_sender(); } @@ -291,7 +291,7 @@ async fn type_c_service_task<'port, 'ch, 'service, 'completion>( 'port, TYPE_C_PORT_COUNT, PortMutexType<'port, 'ch>, - DynamicReceiver<'ch, type_c_interface::service::event::PortEventData>, + DynamicReceiver<'ch, tcpm_interface::service::event::PortEventData>, DynamicReceiver<'ch, power_policy_interface::service::event::EventData>, >, ) { @@ -350,7 +350,7 @@ pub async fn run_test( // Channel to broadcast events from the type-C service let type_c_service_channel: ManuallyDrop< - Channel>, CHANNEL_SIZE>, + Channel>, CHANNEL_SIZE>, > = ManuallyDrop::new(Channel::new()); let type_c_service_sender = type_c_service_channel.dyn_sender(); let type_c_service_receiver = type_c_service_channel.dyn_receiver(); diff --git a/type-c-service/tests/debug_accessory.rs b/type-c-service/tests/debug_accessory.rs index b603cad35..170282c51 100644 --- a/type-c-service/tests/debug_accessory.rs +++ b/type-c-service/tests/debug_accessory.rs @@ -12,7 +12,7 @@ use power_policy_interface::{ psu::{Psu, PsuState}, service::event::Event as PowerPolicyEvent, }; -use type_c_interface::{ +use tcpm_interface::{ control::pd::{PortStatus, SourceContract}, port::event::{PortEventBitfield, PortStatusEventBitfield}, service::event::{DebugAccessoryData, EventData as TypeCEventData}, diff --git a/type-c-service/tests/notifications.rs b/type-c-service/tests/notifications.rs index f0490c919..deb00aa0f 100644 --- a/type-c-service/tests/notifications.rs +++ b/type-c-service/tests/notifications.rs @@ -5,7 +5,7 @@ use embassy_futures::join::join; use embassy_time::{TimeoutError, with_timeout}; use embedded_usb_pd::{ado::Ado, type_c::ConnectionState}; -use type_c_interface::{ +use tcpm_interface::{ control::dp::{DpPinConfig, DpStatus}, control::pd::PortStatus, control::vdm::{ATTN_VDM_LEN, AttnVdm, OTHER_VDM_LEN, OtherVdm}, diff --git a/type-c-service/tests/power.rs b/type-c-service/tests/power.rs index 4976aedc5..b63c09d5d 100644 --- a/type-c-service/tests/power.rs +++ b/type-c-service/tests/power.rs @@ -19,7 +19,7 @@ use power_policy_interface::{ psu::{Psu, PsuState}, service::event::Event as PowerPolicyEvent, }; -use type_c_interface::{ +use tcpm_interface::{ control::pd::{PdSinkInfo, PortStatus, SinkContract, SourceContract}, port::{ event::{PortEvent, PortEventBitfield, PortStatusEventBitfield}, diff --git a/type-c-service/tests/ucsi.rs b/type-c-service/tests/ucsi.rs index 2f849bd53..8bc5a2313 100644 --- a/type-c-service/tests/ucsi.rs +++ b/type-c-service/tests/ucsi.rs @@ -20,9 +20,9 @@ use embedded_usb_pd::ucsi::v1_2::ppm::{ use embedded_usb_pd::ucsi::v1_2::{GlobalCommand, ResponseData as UcsiResponseData}; use embedded_usb_pd::{GlobalPortId, PdError, PowerRole}; use log::info; -use type_c_interface::control::pd::PortStatus; -use type_c_interface::port::event::{PortEvent, PortStatusEventBitfield}; -use type_c_interface::service::event::EventData; +use tcpm_interface::control::pd::PortStatus; +use tcpm_interface::port::event::{PortEvent, PortStatusEventBitfield}; +use tcpm_interface::service::event::EventData; use type_c_service::controller::event::Event; use crate::common::{ diff --git a/type-c-service/tests/unconstrained.rs b/type-c-service/tests/unconstrained.rs index 6e1ee5667..3656d7f0d 100644 --- a/type-c-service/tests/unconstrained.rs +++ b/type-c-service/tests/unconstrained.rs @@ -12,7 +12,7 @@ use power_policy_interface::{ capability::PowerCapability, service::{UnconstrainedState, event::Event as PowerPolicyEvent}, }; -use type_c_interface::{ +use tcpm_interface::{ control::pd::{PdSinkInfo, PortStatus, SinkContract}, port::event::{PortEvent, PortStatusEventBitfield}, }; From 9a3722a26d6d5095c48ec8748c3526db6df8e7c6 Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 09:55:16 -0700 Subject: [PATCH 2/6] Rename `type-c-interface-test-mocks` to `tcpm-interface-test-mocks` --- .github/workflows/check.yml | 2 +- Cargo.lock | 20 +++++++++---------- Cargo.toml | 4 ++-- .../Cargo.toml | 2 +- .../src/controller/max_sink_voltage.rs | 0 .../src/controller/mod.rs | 0 .../src/controller/pd.rs | 0 .../src/controller/ucsi.rs | 0 .../src/lib.rs | 0 type-c-service/Cargo.toml | 4 ++-- type-c-service/tests/common/mod.rs | 4 ++-- type-c-service/tests/notifications.rs | 2 +- type-c-service/tests/power.rs | 2 +- type-c-service/tests/unconstrained.rs | 2 +- 14 files changed, 21 insertions(+), 21 deletions(-) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/Cargo.toml (91%) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/src/controller/max_sink_voltage.rs (100%) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/src/controller/mod.rs (100%) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/src/controller/pd.rs (100%) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/src/controller/ucsi.rs (100%) rename {type-c-interface-test-mocks => tcpm-interface-test-mocks}/src/lib.rs (100%) diff --git a/.github/workflows/check.yml b/.github/workflows/check.yml index f5a162102..3ba587c44 100644 --- a/.github/workflows/check.yml +++ b/.github/workflows/check.yml @@ -33,7 +33,7 @@ concurrency: name: check env: # Crates that require std and won't build on embedded-targets - STD_EXCLUDED_CRATES: "--exclude fw-update-interface-test-mocks --exclude type-c-interface-test-mocks --exclude power-policy-interface-test-mocks" + STD_EXCLUDED_CRATES: "--exclude fw-update-interface-test-mocks --exclude tcpm-interface-test-mocks --exclude power-policy-interface-test-mocks" jobs: fmt: diff --git a/Cargo.lock b/Cargo.lock index 460d100d8..e9efff120 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1886,6 +1886,15 @@ dependencies = [ "power-policy-interface", ] +[[package]] +name = "tcpm-interface-test-mocks" +version = "0.1.0" +dependencies = [ + "embedded-services", + "embedded-usb-pd", + "tcpm-interface", +] + [[package]] name = "thermal-service" version = "0.1.0" @@ -2160,15 +2169,6 @@ dependencies = [ "tokio", ] -[[package]] -name = "type-c-interface-test-mocks" -version = "0.1.0" -dependencies = [ - "embedded-services", - "embedded-usb-pd", - "tcpm-interface", -] - [[package]] name = "type-c-service" version = "0.1.0" @@ -2188,8 +2188,8 @@ dependencies = [ "power-policy-interface", "power-policy-service", "tcpm-interface", + "tcpm-interface-test-mocks", "tokio", - "type-c-interface-test-mocks", ] [[package]] diff --git a/Cargo.toml b/Cargo.toml index ba0102a72..3dc304d7d 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -33,7 +33,7 @@ members = [ "fw-update-interface-test-mocks", "mctp-rs", "type-c-interface-mocks", - "type-c-interface-test-mocks", + "tcpm-interface-test-mocks", "power-policy-interface-test-mocks", ] exclude = ["examples/*"] @@ -123,7 +123,7 @@ time-alarm-service-interface = { path = "./time-alarm-service-interface" } time-alarm-service-relay = { path = "./time-alarm-service-relay" } tcpm-interface = { path = "./tcpm-interface" } type-c-interface-mocks = { path = "./type-c-interface-mocks" } -type-c-interface-test-mocks = { path = "./type-c-interface-test-mocks" } +tcpm-interface-test-mocks = { path = "./tcpm-interface-test-mocks" } typenum = "1.20" syn = "2.0" tokio = { version = "1.42.0" } diff --git a/type-c-interface-test-mocks/Cargo.toml b/tcpm-interface-test-mocks/Cargo.toml similarity index 91% rename from type-c-interface-test-mocks/Cargo.toml rename to tcpm-interface-test-mocks/Cargo.toml index d4e10fa7e..c6a15ba57 100644 --- a/type-c-interface-test-mocks/Cargo.toml +++ b/tcpm-interface-test-mocks/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "type-c-interface-test-mocks" +name = "tcpm-interface-test-mocks" version.workspace = true edition.workspace = true rust-version.workspace = true diff --git a/type-c-interface-test-mocks/src/controller/max_sink_voltage.rs b/tcpm-interface-test-mocks/src/controller/max_sink_voltage.rs similarity index 100% rename from type-c-interface-test-mocks/src/controller/max_sink_voltage.rs rename to tcpm-interface-test-mocks/src/controller/max_sink_voltage.rs diff --git a/type-c-interface-test-mocks/src/controller/mod.rs b/tcpm-interface-test-mocks/src/controller/mod.rs similarity index 100% rename from type-c-interface-test-mocks/src/controller/mod.rs rename to tcpm-interface-test-mocks/src/controller/mod.rs diff --git a/type-c-interface-test-mocks/src/controller/pd.rs b/tcpm-interface-test-mocks/src/controller/pd.rs similarity index 100% rename from type-c-interface-test-mocks/src/controller/pd.rs rename to tcpm-interface-test-mocks/src/controller/pd.rs diff --git a/type-c-interface-test-mocks/src/controller/ucsi.rs b/tcpm-interface-test-mocks/src/controller/ucsi.rs similarity index 100% rename from type-c-interface-test-mocks/src/controller/ucsi.rs rename to tcpm-interface-test-mocks/src/controller/ucsi.rs diff --git a/type-c-interface-test-mocks/src/lib.rs b/tcpm-interface-test-mocks/src/lib.rs similarity index 100% rename from type-c-interface-test-mocks/src/lib.rs rename to tcpm-interface-test-mocks/src/lib.rs diff --git a/type-c-service/Cargo.toml b/type-c-service/Cargo.toml index 2ba3ad538..63f55ad9f 100644 --- a/type-c-service/Cargo.toml +++ b/type-c-service/Cargo.toml @@ -33,7 +33,7 @@ embassy-futures.workspace = true tokio = { workspace = true, features = ["rt", "macros", "time"] } log.workspace = true env_logger = "0.11.8" -type-c-interface-test-mocks.workspace = true +tcpm-interface-test-mocks.workspace = true power-policy-service.workspace = true paste.workspace = true critical-section = { workspace = true, features = ["std"] } @@ -60,5 +60,5 @@ log = [ "tcpm-interface/log", "fw-update-interface/log", "power-policy-service/log", - "type-c-interface-test-mocks/log", + "tcpm-interface-test-mocks/log", ] diff --git a/type-c-service/tests/common/mod.rs b/type-c-service/tests/common/mod.rs index 8c83f2c01..86462289c 100644 --- a/type-c-service/tests/common/mod.rs +++ b/type-c-service/tests/common/mod.rs @@ -29,7 +29,7 @@ pub const TYPE_C_SERVICE_SENDER_COUNT: usize = 1; pub const POWER_POLICY_SENDER_COUNT: usize = 1; /// Mutex wrapped controller mock -pub type ControllerMockMutexType = Mutex; +pub type ControllerMockMutexType = Mutex; /// [`type_c_service::controller::Port`] sender to type-C service pub type PortTypeCSender<'a> = DynamicSender<'a, tcpm_interface::service::event::PortEventData>; @@ -216,7 +216,7 @@ macro_rules! define_port { paste! { let [<$name _interrupt_sender>] = [<$name _interrupt_channel>].dyn_sender(); } paste! { let [<$name _interrupt_receiver>] = [<$name _interrupt_channel>].dyn_receiver(); } - paste! { let [<$name _mock>] = Mutex::new(type_c_interface_test_mocks::controller::Mock::new($mock_name)); } + paste! { let [<$name _mock>] = Mutex::new(tcpm_interface_test_mocks::controller::Mock::new($mock_name)); } paste! { let [<$name _shared_state>] = PortSharedState::new(type_c_service::controller::state::SharedState::new()); } paste! { let [<$name _event_receiver>] = type_c_service::controller::event_receiver::EventReceiver::new( diff --git a/type-c-service/tests/notifications.rs b/type-c-service/tests/notifications.rs index deb00aa0f..ad6a3faa6 100644 --- a/type-c-service/tests/notifications.rs +++ b/type-c-service/tests/notifications.rs @@ -12,7 +12,7 @@ use tcpm_interface::{ port::event::{PortEvent, PortStatusEventBitfield, VdmData, VdmNotification}, service::event::PortEventData, }; -use type_c_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; +use tcpm_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; use type_c_service::controller::event::Event; use crate::common::{ diff --git a/type-c-service/tests/power.rs b/type-c-service/tests/power.rs index b63c09d5d..dfa5e40c9 100644 --- a/type-c-service/tests/power.rs +++ b/type-c-service/tests/power.rs @@ -27,7 +27,7 @@ use tcpm_interface::{ }, util::POWER_CAPABILITY_5V_1A5, }; -use type_c_interface_test_mocks::controller::{ +use tcpm_interface_test_mocks::controller::{ FnCall as ControllerFnCall, max_sink_voltage::FnCall as MaxSinkVoltageFnCall, pd::FnCall as PdFnCall, }; use type_c_service::controller::event::Event; diff --git a/type-c-service/tests/unconstrained.rs b/type-c-service/tests/unconstrained.rs index 3656d7f0d..014053597 100644 --- a/type-c-service/tests/unconstrained.rs +++ b/type-c-service/tests/unconstrained.rs @@ -16,7 +16,7 @@ use tcpm_interface::{ control::pd::{PdSinkInfo, PortStatus, SinkContract}, port::event::{PortEvent, PortStatusEventBitfield}, }; -use type_c_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; +use tcpm_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; use type_c_service::controller::{ config::{Config as PortConfig, UnconstrainedSink}, event::Event, From f2daafaecf68299bf4d7af09db10eb222b993aa7 Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 09:59:41 -0700 Subject: [PATCH 3/6] Rename `type-c-interface-mocks` to `tcpm-interface-mocks` --- Cargo.lock | 30 +++++++++---------- Cargo.toml | 4 +-- .../Cargo.toml | 2 +- .../src/lib.rs | 0 .../src/port/mod.rs | 0 .../tests/connect_disconnect.rs | 0 6 files changed, 18 insertions(+), 18 deletions(-) rename {type-c-interface-mocks => tcpm-interface-mocks}/Cargo.toml (93%) rename {type-c-interface-mocks => tcpm-interface-mocks}/src/lib.rs (100%) rename {type-c-interface-mocks => tcpm-interface-mocks}/src/port/mod.rs (100%) rename {type-c-interface-mocks => tcpm-interface-mocks}/tests/connect_disconnect.rs (100%) diff --git a/Cargo.lock b/Cargo.lock index e9efff120..f97add153 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1886,6 +1886,21 @@ dependencies = [ "power-policy-interface", ] +[[package]] +name = "tcpm-interface-mocks" +version = "0.1.0" +dependencies = [ + "critical-section", + "defmt 0.3.100", + "embassy-sync", + "embedded-services", + "embedded-usb-pd", + "log", + "power-policy-interface", + "tcpm-interface", + "tokio", +] + [[package]] name = "tcpm-interface-test-mocks" version = "0.1.0" @@ -2154,21 +2169,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "type-c-interface-mocks" -version = "0.1.0" -dependencies = [ - "critical-section", - "defmt 0.3.100", - "embassy-sync", - "embedded-services", - "embedded-usb-pd", - "log", - "power-policy-interface", - "tcpm-interface", - "tokio", -] - [[package]] name = "type-c-service" version = "0.1.0" diff --git a/Cargo.toml b/Cargo.toml index 3dc304d7d..0bbba40dd 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -32,7 +32,7 @@ members = [ "fw-update-interface", "fw-update-interface-test-mocks", "mctp-rs", - "type-c-interface-mocks", + "tcpm-interface-mocks", "tcpm-interface-test-mocks", "power-policy-interface-test-mocks", ] @@ -122,7 +122,7 @@ thermal-service-relay = { path = "./thermal-service-relay" } time-alarm-service-interface = { path = "./time-alarm-service-interface" } time-alarm-service-relay = { path = "./time-alarm-service-relay" } tcpm-interface = { path = "./tcpm-interface" } -type-c-interface-mocks = { path = "./type-c-interface-mocks" } +tcpm-interface-mocks = { path = "./tcpm-interface-mocks" } tcpm-interface-test-mocks = { path = "./tcpm-interface-test-mocks" } typenum = "1.20" syn = "2.0" diff --git a/type-c-interface-mocks/Cargo.toml b/tcpm-interface-mocks/Cargo.toml similarity index 93% rename from type-c-interface-mocks/Cargo.toml rename to tcpm-interface-mocks/Cargo.toml index bc6cc2dd0..6e02ebbe4 100644 --- a/type-c-interface-mocks/Cargo.toml +++ b/tcpm-interface-mocks/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "type-c-interface-mocks" +name = "tcpm-interface-mocks" version.workspace = true edition.workspace = true rust-version.workspace = true diff --git a/type-c-interface-mocks/src/lib.rs b/tcpm-interface-mocks/src/lib.rs similarity index 100% rename from type-c-interface-mocks/src/lib.rs rename to tcpm-interface-mocks/src/lib.rs diff --git a/type-c-interface-mocks/src/port/mod.rs b/tcpm-interface-mocks/src/port/mod.rs similarity index 100% rename from type-c-interface-mocks/src/port/mod.rs rename to tcpm-interface-mocks/src/port/mod.rs diff --git a/type-c-interface-mocks/tests/connect_disconnect.rs b/tcpm-interface-mocks/tests/connect_disconnect.rs similarity index 100% rename from type-c-interface-mocks/tests/connect_disconnect.rs rename to tcpm-interface-mocks/tests/connect_disconnect.rs From 055e33e9da0a18de32270e17bde876eee52ddf4c Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 10:05:55 -0700 Subject: [PATCH 4/6] Rename `type-c-service` to `tcpm-service` --- CODEOWNERS | 2 +- Cargo.lock | 46 ++++++------- Cargo.toml | 2 +- examples/std/Cargo.lock | 34 +++++----- examples/std/Cargo.toml | 2 +- .../std/src/lib/type_c/mock_controller.rs | 8 +-- {type-c-service => tcpm-service}/Cargo.toml | 2 +- .../src/controller/config.rs | 0 .../src/controller/electrical_disconnect.rs | 0 .../src/controller/event.rs | 0 .../src/controller/event_receiver.rs | 0 .../src/controller/macros.rs | 0 .../src/controller/max_sink_voltage.rs | 0 .../src/controller/mod.rs | 0 .../src/controller/pd.rs | 0 .../src/controller/power.rs | 0 .../src/controller/retimer.rs | 0 .../src/controller/state.rs | 0 .../src/controller/type_c.rs | 0 .../src/controller/ucsi.rs | 0 {type-c-service => tcpm-service}/src/lib.rs | 0 .../src/service/config.rs | 0 .../src/service/event_receiver.rs | 0 .../src/service/mod.rs | 0 .../src/service/power.rs | 0 .../src/service/registration.rs | 0 .../src/service/ucsi.rs | 0 {type-c-service => tcpm-service}/src/task.rs | 0 {type-c-service => tcpm-service}/src/util.rs | 0 .../tests/common/mod.rs | 68 +++++++++---------- .../tests/debug_accessory.rs | 0 .../tests/notifications.rs | 2 +- .../tests/power.rs | 4 +- .../tests/ucsi.rs | 4 +- .../tests/unconstrained.rs | 2 +- 35 files changed, 88 insertions(+), 88 deletions(-) rename {type-c-service => tcpm-service}/Cargo.toml (98%) rename {type-c-service => tcpm-service}/src/controller/config.rs (100%) rename {type-c-service => tcpm-service}/src/controller/electrical_disconnect.rs (100%) rename {type-c-service => tcpm-service}/src/controller/event.rs (100%) rename {type-c-service => tcpm-service}/src/controller/event_receiver.rs (100%) rename {type-c-service => tcpm-service}/src/controller/macros.rs (100%) rename {type-c-service => tcpm-service}/src/controller/max_sink_voltage.rs (100%) rename {type-c-service => tcpm-service}/src/controller/mod.rs (100%) rename {type-c-service => tcpm-service}/src/controller/pd.rs (100%) rename {type-c-service => tcpm-service}/src/controller/power.rs (100%) rename {type-c-service => tcpm-service}/src/controller/retimer.rs (100%) rename {type-c-service => tcpm-service}/src/controller/state.rs (100%) rename {type-c-service => tcpm-service}/src/controller/type_c.rs (100%) rename {type-c-service => tcpm-service}/src/controller/ucsi.rs (100%) rename {type-c-service => tcpm-service}/src/lib.rs (100%) rename {type-c-service => tcpm-service}/src/service/config.rs (100%) rename {type-c-service => tcpm-service}/src/service/event_receiver.rs (100%) rename {type-c-service => tcpm-service}/src/service/mod.rs (100%) rename {type-c-service => tcpm-service}/src/service/power.rs (100%) rename {type-c-service => tcpm-service}/src/service/registration.rs (100%) rename {type-c-service => tcpm-service}/src/service/ucsi.rs (100%) rename {type-c-service => tcpm-service}/src/task.rs (100%) rename {type-c-service => tcpm-service}/src/util.rs (100%) rename {type-c-service => tcpm-service}/tests/common/mod.rs (88%) rename {type-c-service => tcpm-service}/tests/debug_accessory.rs (100%) rename {type-c-service => tcpm-service}/tests/notifications.rs (99%) rename {type-c-service => tcpm-service}/tests/power.rs (99%) rename {type-c-service => tcpm-service}/tests/ucsi.rs (99%) rename {type-c-service => tcpm-service}/tests/unconstrained.rs (99%) diff --git a/CODEOWNERS b/CODEOWNERS index 219af4b5d..9002841df 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -4,7 +4,7 @@ /espi-service @OpenDevicePartnership/ec-espi-team /hid-service @OpenDevicePartnership/ec-hid-team /power-policy-service @OpenDevicePartnership/ec-battery-team @OpenDevicePartnership/ec-usb-c-pd-team -/type-c-service @OpenDevicePartnership/ec-usb-c-pd-team +/tcpm-service @OpenDevicePartnership/ec-usb-c-pd-team # Any changes in the supply-chain folder needs approval # from auditors as it relates to cargo vet diff --git a/Cargo.lock b/Cargo.lock index f97add153..7a996e539 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1910,6 +1910,29 @@ dependencies = [ "tcpm-interface", ] +[[package]] +name = "tcpm-service" +version = "0.1.0" +dependencies = [ + "critical-section", + "defmt 0.3.100", + "embassy-futures", + "embassy-sync", + "embassy-time", + "embedded-services", + "embedded-usb-pd", + "env_logger", + "fw-update-interface", + "heapless 0.9.3", + "log", + "paste", + "power-policy-interface", + "power-policy-service", + "tcpm-interface", + "tcpm-interface-test-mocks", + "tokio", +] + [[package]] name = "thermal-service" version = "0.1.0" @@ -2169,29 +2192,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "type-c-service" -version = "0.1.0" -dependencies = [ - "critical-section", - "defmt 0.3.100", - "embassy-futures", - "embassy-sync", - "embassy-time", - "embedded-services", - "embedded-usb-pd", - "env_logger", - "fw-update-interface", - "heapless 0.9.3", - "log", - "paste", - "power-policy-interface", - "power-policy-service", - "tcpm-interface", - "tcpm-interface-test-mocks", - "tokio", -] - [[package]] name = "typenum" version = "1.20.0" diff --git a/Cargo.toml b/Cargo.toml index 0bbba40dd..3cfcec7a7 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -22,7 +22,7 @@ members = [ "time-alarm-service", "time-alarm-service-interface", "time-alarm-service-relay", - "type-c-service", + "tcpm-service", "debug-service", "debug-service-messages", "keyboard-service", diff --git a/examples/std/Cargo.lock b/examples/std/Cargo.lock index 667a3803f..8c7a311ca 100644 --- a/examples/std/Cargo.lock +++ b/examples/std/Cargo.lock @@ -1226,9 +1226,9 @@ dependencies = [ "power-policy-service", "static_cell", "tcpm-interface", + "tcpm-service", "thermal-service", "thermal-service-interface", - "type-c-service", ] [[package]] @@ -1272,6 +1272,22 @@ dependencies = [ "power-policy-interface", ] +[[package]] +name = "tcpm-service" +version = "0.1.0" +dependencies = [ + "embassy-futures", + "embassy-sync", + "embassy-time", + "embedded-services", + "embedded-usb-pd", + "fw-update-interface", + "heapless", + "log", + "power-policy-interface", + "tcpm-interface", +] + [[package]] name = "thermal-service" version = "0.1.0" @@ -1387,22 +1403,6 @@ dependencies = [ "tracing-log", ] -[[package]] -name = "type-c-service" -version = "0.1.0" -dependencies = [ - "embassy-futures", - "embassy-sync", - "embassy-time", - "embedded-services", - "embedded-usb-pd", - "fw-update-interface", - "heapless", - "log", - "power-policy-interface", - "tcpm-interface", -] - [[package]] name = "typenum" version = "1.20.1" diff --git a/examples/std/Cargo.toml b/examples/std/Cargo.toml index 75a424d49..4a91200c8 100644 --- a/examples/std/Cargo.toml +++ b/examples/std/Cargo.toml @@ -40,7 +40,7 @@ cfu-service = { path = "../../cfu-service", features = ["log"] } embedded-cfu-protocol = { git = "https://github.com/OpenDevicePartnership/embedded-cfu" } battery-service = { path = "../../battery-service", features = ["log", "mock"] } -type-c-service = { path = "../../type-c-service", features = ["log"] } +tcpm-service = { path = "../../tcpm-service", features = ["log"] } tcpm-interface = { path = "../../tcpm-interface", features = ["log"] } thermal-service = { path = "../../thermal-service", features = ["log", "mock"] } diff --git a/examples/std/src/lib/type_c/mock_controller.rs b/examples/std/src/lib/type_c/mock_controller.rs index 51256ff03..5eef8b108 100644 --- a/examples/std/src/lib/type_c/mock_controller.rs +++ b/examples/std/src/lib/type_c/mock_controller.rs @@ -24,7 +24,7 @@ use tcpm_interface::control::usb::UsbControlConfig; use tcpm_interface::control::vdm::{AttnVdm, OtherVdm, SendVdm}; use tcpm_interface::port::event::PortEventBitfield; use tcpm_interface::util::power_capability_from_current; -use type_c_service::controller::state::SharedState; +use tcpm_service::controller::state::SharedState; pub struct ControllerState { events: Signal, @@ -162,7 +162,7 @@ pub struct InterruptReceiver<'a> { events: &'a Signal, } -impl type_c_service::controller::event_receiver::InterruptReceiver for InterruptReceiver<'_> { +impl tcpm_service::controller::event_receiver::InterruptReceiver for InterruptReceiver<'_> { async fn wait_interrupt(&mut self) -> [PortEventBitfield; N] { let events = self.events.wait().await; let mut result = [PortEventBitfield::none(); N]; @@ -382,7 +382,7 @@ impl tcpm_interface::controller::retimer::Retimer for Controller<'_> { pub type PowerNotifier<'a> = power_policy_interface::psu::event::NonBlockingSenderNotifier< channel::DynamicSender<'a, power_policy_interface::psu::event::EventData>, >; -pub type Port<'a> = type_c_service::controller::Port< +pub type Port<'a> = tcpm_service::controller::Port< 'a, Mutex>, Mutex, @@ -390,5 +390,5 @@ pub type Port<'a> = type_c_service::controller::Port< channel::DynamicSender<'a, tcpm_interface::service::event::PortEventData>, >, PowerNotifier<'a>, - channel::DynamicSender<'a, type_c_service::controller::event::Loopback>, + channel::DynamicSender<'a, tcpm_service::controller::event::Loopback>, >; diff --git a/type-c-service/Cargo.toml b/tcpm-service/Cargo.toml similarity index 98% rename from type-c-service/Cargo.toml rename to tcpm-service/Cargo.toml index 63f55ad9f..31c42ce9d 100644 --- a/type-c-service/Cargo.toml +++ b/tcpm-service/Cargo.toml @@ -1,5 +1,5 @@ [package] -name = "type-c-service" +name = "tcpm-service" version = "0.1.0" edition = "2024" description = "HID embedded service implementation" diff --git a/type-c-service/src/controller/config.rs b/tcpm-service/src/controller/config.rs similarity index 100% rename from type-c-service/src/controller/config.rs rename to tcpm-service/src/controller/config.rs diff --git a/type-c-service/src/controller/electrical_disconnect.rs b/tcpm-service/src/controller/electrical_disconnect.rs similarity index 100% rename from type-c-service/src/controller/electrical_disconnect.rs rename to tcpm-service/src/controller/electrical_disconnect.rs diff --git a/type-c-service/src/controller/event.rs b/tcpm-service/src/controller/event.rs similarity index 100% rename from type-c-service/src/controller/event.rs rename to tcpm-service/src/controller/event.rs diff --git a/type-c-service/src/controller/event_receiver.rs b/tcpm-service/src/controller/event_receiver.rs similarity index 100% rename from type-c-service/src/controller/event_receiver.rs rename to tcpm-service/src/controller/event_receiver.rs diff --git a/type-c-service/src/controller/macros.rs b/tcpm-service/src/controller/macros.rs similarity index 100% rename from type-c-service/src/controller/macros.rs rename to tcpm-service/src/controller/macros.rs diff --git a/type-c-service/src/controller/max_sink_voltage.rs b/tcpm-service/src/controller/max_sink_voltage.rs similarity index 100% rename from type-c-service/src/controller/max_sink_voltage.rs rename to tcpm-service/src/controller/max_sink_voltage.rs diff --git a/type-c-service/src/controller/mod.rs b/tcpm-service/src/controller/mod.rs similarity index 100% rename from type-c-service/src/controller/mod.rs rename to tcpm-service/src/controller/mod.rs diff --git a/type-c-service/src/controller/pd.rs b/tcpm-service/src/controller/pd.rs similarity index 100% rename from type-c-service/src/controller/pd.rs rename to tcpm-service/src/controller/pd.rs diff --git a/type-c-service/src/controller/power.rs b/tcpm-service/src/controller/power.rs similarity index 100% rename from type-c-service/src/controller/power.rs rename to tcpm-service/src/controller/power.rs diff --git a/type-c-service/src/controller/retimer.rs b/tcpm-service/src/controller/retimer.rs similarity index 100% rename from type-c-service/src/controller/retimer.rs rename to tcpm-service/src/controller/retimer.rs diff --git a/type-c-service/src/controller/state.rs b/tcpm-service/src/controller/state.rs similarity index 100% rename from type-c-service/src/controller/state.rs rename to tcpm-service/src/controller/state.rs diff --git a/type-c-service/src/controller/type_c.rs b/tcpm-service/src/controller/type_c.rs similarity index 100% rename from type-c-service/src/controller/type_c.rs rename to tcpm-service/src/controller/type_c.rs diff --git a/type-c-service/src/controller/ucsi.rs b/tcpm-service/src/controller/ucsi.rs similarity index 100% rename from type-c-service/src/controller/ucsi.rs rename to tcpm-service/src/controller/ucsi.rs diff --git a/type-c-service/src/lib.rs b/tcpm-service/src/lib.rs similarity index 100% rename from type-c-service/src/lib.rs rename to tcpm-service/src/lib.rs diff --git a/type-c-service/src/service/config.rs b/tcpm-service/src/service/config.rs similarity index 100% rename from type-c-service/src/service/config.rs rename to tcpm-service/src/service/config.rs diff --git a/type-c-service/src/service/event_receiver.rs b/tcpm-service/src/service/event_receiver.rs similarity index 100% rename from type-c-service/src/service/event_receiver.rs rename to tcpm-service/src/service/event_receiver.rs diff --git a/type-c-service/src/service/mod.rs b/tcpm-service/src/service/mod.rs similarity index 100% rename from type-c-service/src/service/mod.rs rename to tcpm-service/src/service/mod.rs diff --git a/type-c-service/src/service/power.rs b/tcpm-service/src/service/power.rs similarity index 100% rename from type-c-service/src/service/power.rs rename to tcpm-service/src/service/power.rs diff --git a/type-c-service/src/service/registration.rs b/tcpm-service/src/service/registration.rs similarity index 100% rename from type-c-service/src/service/registration.rs rename to tcpm-service/src/service/registration.rs diff --git a/type-c-service/src/service/ucsi.rs b/tcpm-service/src/service/ucsi.rs similarity index 100% rename from type-c-service/src/service/ucsi.rs rename to tcpm-service/src/service/ucsi.rs diff --git a/type-c-service/src/task.rs b/tcpm-service/src/task.rs similarity index 100% rename from type-c-service/src/task.rs rename to tcpm-service/src/task.rs diff --git a/type-c-service/src/util.rs b/tcpm-service/src/util.rs similarity index 100% rename from type-c-service/src/util.rs rename to tcpm-service/src/util.rs diff --git a/type-c-service/tests/common/mod.rs b/tcpm-service/tests/common/mod.rs similarity index 88% rename from type-c-service/tests/common/mod.rs rename to tcpm-service/tests/common/mod.rs index 86462289c..af278e429 100644 --- a/type-c-service/tests/common/mod.rs +++ b/tcpm-service/tests/common/mod.rs @@ -15,7 +15,7 @@ use embedded_services::{GlobalRawMutex, event::NonBlockingSender}; use embedded_usb_pd::LocalPortId; use paste::paste; use power_policy_interface::charger::mock::NoopCharger; -use type_c_service::service::registration::PortData; +use tcpm_service::service::registration::PortData; pub const DEFAULT_TEST_DURATION: Duration = Duration::from_secs(5); @@ -24,39 +24,39 @@ pub const DEFAULT_PER_CALL_TIMEOUT: Duration = Duration::from_secs(1); /// Total number of type-C ports pub const TYPE_C_PORT_COUNT: usize = 3; /// Number of senders for type-c service events -pub const TYPE_C_SERVICE_SENDER_COUNT: usize = 1; +pub const TCPM_SERVICE_SENDER_COUNT: usize = 1; /// Number of senders for power policy events pub const POWER_POLICY_SENDER_COUNT: usize = 1; /// Mutex wrapped controller mock pub type ControllerMockMutexType = Mutex; -/// [`type_c_service::controller::Port`] sender to type-C service +/// [`tcpm_service::controller::Port`] sender to type-C service pub type PortTypeCSender<'a> = DynamicSender<'a, tcpm_interface::service::event::PortEventData>; /// Corresponding receiver for [`PortTypeCSender`] pub type PortTypeCReceiver<'a> = DynamicReceiver<'a, tcpm_interface::service::event::PortEventData>; /// Type-C port notification wrapper pub type PortTypeCNotifier<'a> = tcpm_interface::port::event::NonBlockingSenderNotifier>; -/// [`type_c_service::controller::Port`] sender to power policy service +/// [`tcpm_service::controller::Port`] sender to power policy service pub type PortPowerSender<'a> = DynamicSender<'a, power_policy_interface::psu::event::EventData>; /// Corresponding receiver for [`PortPowerSender`] pub type PortPowerReceiver<'a> = DynamicReceiver<'a, power_policy_interface::psu::event::EventData>; /// Power policy notification wrapper pub type PortPowerNotifier<'a> = power_policy_interface::psu::event::NonBlockingSenderNotifier>; -/// [`type_c_service::controller::Port`] sender for loopback events -pub type PortLoopbackSender<'a> = DynamicSender<'a, type_c_service::controller::event::Loopback>; +/// [`tcpm_service::controller::Port`] sender for loopback events +pub type PortLoopbackSender<'a> = DynamicSender<'a, tcpm_service::controller::event::Loopback>; /// Corresponding receiver for [`PortLoopbackSender`] -pub type PortLoopbackReceiver<'a> = DynamicReceiver<'a, type_c_service::controller::event::Loopback>; -/// Interrupt sender into a [`type_c_service::controller::Port`]'s event receiver +pub type PortLoopbackReceiver<'a> = DynamicReceiver<'a, tcpm_service::controller::event::Loopback>; +/// Interrupt sender into a [`tcpm_service::controller::Port`]'s event receiver pub type PortInterruptSender<'a> = DynamicSender<'a, tcpm_interface::port::event::PortEventBitfield>; /// Corresponding receiver for [`PortInterruptSender`] pub type PortInterruptReceiver<'a> = DynamicReceiver<'a, tcpm_interface::port::event::PortEventBitfield>; /// Shared port state type -pub type PortSharedState = Mutex; +pub type PortSharedState = Mutex; /// Port type pub type PortMutexType<'port, 'ch> = Mutex< GlobalRawMutex, - type_c_service::controller::Port< + tcpm_service::controller::Port< 'port, // Underlying controller ControllerMockMutexType, @@ -72,7 +72,7 @@ pub type PortMutexType<'port, 'ch> = Mutex< >; /// Controller-side event receiver that drives software sink-ready timeouts -pub type PortEventReceiverType<'port, 'ch> = type_c_service::controller::event_receiver::EventReceiver< +pub type PortEventReceiverType<'port, 'ch> = tcpm_service::controller::event_receiver::EventReceiver< 'port, PortSharedState, PortInterruptReceiver<'ch>, @@ -123,7 +123,7 @@ pub type TypeCServiceNotifier<'port, 'ch> = tcpm_interface::service::event::NonB TypeCServiceSender<'port, 'ch>, >; /// Type-C service registration type -pub type TypeCRegistrationType<'port, 'ch> = type_c_service::service::registration::ArrayRegistration< +pub type TypeCRegistrationType<'port, 'ch> = tcpm_service::service::registration::ArrayRegistration< 'port, // Port type PortMutexType<'port, 'ch>, @@ -132,11 +132,11 @@ pub type TypeCRegistrationType<'port, 'ch> = type_c_service::service::registrati // Notifiers for events broadcast by the service TypeCServiceNotifier<'port, 'ch>, // Number of registered service event notifiers - TYPE_C_SERVICE_SENDER_COUNT, + TCPM_SERVICE_SENDER_COUNT, >; /// Type-C service type pub type TypeCServiceMutexType<'port, 'ch> = - Mutex>>; + Mutex>>; /// Default channel size to use pub const CHANNEL_SIZE: usize = 4; @@ -202,7 +202,7 @@ macro_rules! define_port { paste! { let [<$name _loopback_channel>]: Channel< GlobalRawMutex, - type_c_service::controller::event::Loopback, + tcpm_service::controller::event::Loopback, CHANNEL_SIZE, > = Channel::new(); } paste! { let [<$name _loopback_sender>] = [<$name _loopback_channel>].dyn_sender(); } @@ -218,14 +218,14 @@ macro_rules! define_port { paste! { let [<$name _mock>] = Mutex::new(tcpm_interface_test_mocks::controller::Mock::new($mock_name)); } paste! { let [<$name _shared_state>] = - PortSharedState::new(type_c_service::controller::state::SharedState::new()); } - paste! { let [<$name _event_receiver>] = type_c_service::controller::event_receiver::EventReceiver::new( + PortSharedState::new(tcpm_service::controller::state::SharedState::new()); } + paste! { let [<$name _event_receiver>] = tcpm_service::controller::event_receiver::EventReceiver::new( &[<$name _shared_state>], [<$name _interrupt_receiver>], [<$name _loopback_receiver>], ); } paste! { let $name = PortComponents { - port: Mutex::new(type_c_service::controller::Port::new( + port: Mutex::new(tcpm_service::controller::Port::new( $port_name, $config, $local_id, @@ -284,10 +284,10 @@ async fn power_policy_task<'psu, 'ch, 'service, 'completion>( } /// Type-C service event loop task -async fn type_c_service_task<'port, 'ch, 'service, 'completion>( +async fn tcpm_service_task<'port, 'ch, 'service, 'completion>( mut completion_signal: watch::DynReceiver<'completion, ()>, service: &'service TypeCServiceMutexType<'port, 'ch>, - mut event_receiver: type_c_service::service::event_receiver::ArrayEventReceiver< + mut event_receiver: tcpm_service::service::event_receiver::ArrayEventReceiver< 'port, TYPE_C_PORT_COUNT, PortMutexType<'port, 'ch>, @@ -303,8 +303,8 @@ async fn type_c_service_task<'port, 'ch, 'service, 'completion>( /// Initialize services and run an integration test pub async fn run_test( duration: Duration, - type_c_service_config: type_c_service::service::config::Config, - port_config: [type_c_service::controller::config::Config; TYPE_C_PORT_COUNT], + tcpm_service_config: tcpm_service::service::config::Config, + port_config: [tcpm_service::controller::config::Config; TYPE_C_PORT_COUNT], mut test: impl Test, ) { // Tokio runs tests in parallel, but logging is global so we need to run tests sequentially to avoid interleaved logs. @@ -349,14 +349,14 @@ pub async fn run_test( } = port2; // Channel to broadcast events from the type-C service - let type_c_service_channel: ManuallyDrop< + let tcpm_service_channel: ManuallyDrop< Channel>, CHANNEL_SIZE>, > = ManuallyDrop::new(Channel::new()); - let type_c_service_sender = type_c_service_channel.dyn_sender(); - let type_c_service_receiver = type_c_service_channel.dyn_receiver(); + let tcpm_service_sender = tcpm_service_channel.dyn_sender(); + let tcpm_service_receiver = tcpm_service_channel.dyn_receiver(); - let type_c_service = Mutex::new(type_c_service::service::Service::new( - type_c_service_config, + let tcpm_service = Mutex::new(tcpm_service::service::Service::new( + tcpm_service_config, TypeCRegistrationType { ports: [&port0, &port1, &port2], port_data: [ @@ -370,7 +370,7 @@ pub async fn run_test( local_port: Some(LocalPortId(0)), }, ], - service_notifiers: [type_c_service_sender.into()], + service_notifiers: [tcpm_service_sender.into()], }, )); @@ -381,7 +381,7 @@ pub async fn run_test( let type_c_power_policy_sender = type_c_power_policy_events.dyn_sender(); let type_c_power_policy_receiver = type_c_power_policy_events.dyn_receiver(); - let type_c_service_event_receivers = type_c_service::service::event_receiver::ArrayEventReceiver::new( + let tcpm_service_event_receivers = tcpm_service::service::event_receiver::ArrayEventReceiver::new( [&port0, &port1, &port2], [port0_type_c_receiver, port1_type_c_receiver, port2_type_c_receiver], type_c_power_policy_receiver, @@ -429,15 +429,15 @@ pub async fn run_test( &power_policy_service, power_policy_event_receiver, ), - type_c_service_task( + tcpm_service_task( completion_signal.dyn_receiver().unwrap(), - &type_c_service, - type_c_service_event_receivers, + &tcpm_service, + tcpm_service_event_receivers, ), async { test.run( - &type_c_service, - type_c_service_receiver, + &tcpm_service, + tcpm_service_receiver, power_policy_service_receiver, TestPort { port: &port0, diff --git a/type-c-service/tests/debug_accessory.rs b/tcpm-service/tests/debug_accessory.rs similarity index 100% rename from type-c-service/tests/debug_accessory.rs rename to tcpm-service/tests/debug_accessory.rs diff --git a/type-c-service/tests/notifications.rs b/tcpm-service/tests/notifications.rs similarity index 99% rename from type-c-service/tests/notifications.rs rename to tcpm-service/tests/notifications.rs index ad6a3faa6..0135a09a0 100644 --- a/type-c-service/tests/notifications.rs +++ b/tcpm-service/tests/notifications.rs @@ -13,7 +13,7 @@ use tcpm_interface::{ service::event::PortEventData, }; use tcpm_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; -use type_c_service::controller::event::Event; +use tcpm_service::controller::event::Event; use crate::common::{ DEFAULT_PER_CALL_TIMEOUT, DEFAULT_TEST_DURATION, PowerPolicyServiceReceiver, Test, TestPort, TypeCServiceReceiver, diff --git a/type-c-service/tests/power.rs b/tcpm-service/tests/power.rs similarity index 99% rename from type-c-service/tests/power.rs rename to tcpm-service/tests/power.rs index dfa5e40c9..96cac4d9c 100644 --- a/type-c-service/tests/power.rs +++ b/tcpm-service/tests/power.rs @@ -30,7 +30,7 @@ use tcpm_interface::{ use tcpm_interface_test_mocks::controller::{ FnCall as ControllerFnCall, max_sink_voltage::FnCall as MaxSinkVoltageFnCall, pd::FnCall as PdFnCall, }; -use type_c_service::controller::event::Event; +use tcpm_service::controller::event::Event; use crate::common::{ DEFAULT_PER_CALL_TIMEOUT, DEFAULT_TEST_DURATION, PowerPolicyServiceReceiver, Test, TestPort, TypeCServiceReceiver, @@ -278,7 +278,7 @@ impl Test for TestBasicProviderFlow { /// exercises every internal state transition along with the power-policy broadcasts. /// /// The controller never raises a hardware sink-ready event, so a real `embassy_time::Timer` inside -/// a live [`type_c_service::controller::event_receiver::EventReceiver`] must elapse and synthesize +/// a live [`tcpm_service::controller::event_receiver::EventReceiver`] must elapse and synthesize /// the sink-ready event that completes the consumer contract. The event receiver is driven /// manually, one event at a time, so the port's internal state can be asserted deterministically /// between transitions: diff --git a/type-c-service/tests/ucsi.rs b/tcpm-service/tests/ucsi.rs similarity index 99% rename from type-c-service/tests/ucsi.rs rename to tcpm-service/tests/ucsi.rs index 8bc5a2313..8836b7d38 100644 --- a/type-c-service/tests/ucsi.rs +++ b/tcpm-service/tests/ucsi.rs @@ -23,7 +23,7 @@ use log::info; use tcpm_interface::control::pd::PortStatus; use tcpm_interface::port::event::{PortEvent, PortStatusEventBitfield}; use tcpm_interface::service::event::EventData; -use type_c_service::controller::event::Event; +use tcpm_service::controller::event::Event; use crate::common::{ DEFAULT_PER_CALL_TIMEOUT, DEFAULT_TEST_DURATION, PowerPolicyServiceReceiver, Test, TestPort, TypeCServiceMutexType, @@ -315,7 +315,7 @@ impl Test for TestUcsi { async fn ucsi() { common::run_test( DEFAULT_TEST_DURATION, - type_c_service::service::config::Config { + tcpm_service::service::config::Config { ucsi_capabilities: PpmCapabilities { num_connectors: 3, bcd_usb_pd_spec: 0x0300, diff --git a/type-c-service/tests/unconstrained.rs b/tcpm-service/tests/unconstrained.rs similarity index 99% rename from type-c-service/tests/unconstrained.rs rename to tcpm-service/tests/unconstrained.rs index 014053597..b35e0bde4 100644 --- a/type-c-service/tests/unconstrained.rs +++ b/tcpm-service/tests/unconstrained.rs @@ -17,7 +17,7 @@ use tcpm_interface::{ port::event::{PortEvent, PortStatusEventBitfield}, }; use tcpm_interface_test_mocks::controller::{FnCall as ControllerFnCall, pd::FnCall as PdFnCall}; -use type_c_service::controller::{ +use tcpm_service::controller::{ config::{Config as PortConfig, UnconstrainedSink}, event::Event, }; From b3265c118b874672d942a812c7dbe2df2b61a7f9 Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 10:08:06 -0700 Subject: [PATCH 5/6] Update CODEOWNERS --- CODEOWNERS | 3 +++ 1 file changed, 3 insertions(+) diff --git a/CODEOWNERS b/CODEOWNERS index 9002841df..656899aee 100644 --- a/CODEOWNERS +++ b/CODEOWNERS @@ -5,6 +5,9 @@ /hid-service @OpenDevicePartnership/ec-hid-team /power-policy-service @OpenDevicePartnership/ec-battery-team @OpenDevicePartnership/ec-usb-c-pd-team /tcpm-service @OpenDevicePartnership/ec-usb-c-pd-team +/tcpm-interface @OpenDevicePartnership/ec-usb-c-pd-team +/tcpm-interface-test-mocks @OpenDevicePartnership/ec-usb-c-pd-team +/tcpm-interface-mocks @OpenDevicePartnership/ec-usb-c-pd-team # Any changes in the supply-chain folder needs approval # from auditors as it relates to cargo vet From 69917f4b9e4ef94a65be009d47ba00bdc76ce696 Mon Sep 17 00:00:00 2001 From: Robert Zieba Date: Thu, 24 Sep 2026 10:10:48 -0700 Subject: [PATCH 6/6] Fix formatting --- tcpm-service/src/controller/type_c.rs | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/tcpm-service/src/controller/type_c.rs b/tcpm-service/src/controller/type_c.rs index dc11f17c6..9dc07740f 100644 --- a/tcpm-service/src/controller/type_c.rs +++ b/tcpm-service/src/controller/type_c.rs @@ -14,8 +14,7 @@ impl< PortNotifier: tcpm_interface::port::notification::Notifier, PowerNotifier: power_policy_interface::psu::notification::Notifier, LoopbackSender: NonBlockingSender, -> tcpm_interface::port::type_c::StateMachine - for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> +> tcpm_interface::port::type_c::StateMachine for Port<'device, C, Shared, PortNotifier, PowerNotifier, LoopbackSender> { async fn set_type_c_state_machine_config(&mut self, state: TypeCStateMachineState) -> Result<(), PdError> { self.controller