pub trait PlatformBusLocalServerHandler<___T: Transport = DriverChannel> {
// Required methods
fn node_add(
&mut self,
request: Request<NodeAdd, ___T>,
responder: Responder<NodeAdd, ___T>,
) -> impl Future<Output = ()>;
fn get_board_info(
&mut self,
responder: Responder<GetBoardInfo, ___T>,
) -> impl Future<Output = ()>;
fn set_board_info(
&mut self,
request: Request<SetBoardInfo, ___T>,
responder: Responder<SetBoardInfo, ___T>,
) -> impl Future<Output = ()>;
fn set_bootloader_info(
&mut self,
request: Request<SetBootloaderInfo, ___T>,
responder: Responder<SetBootloaderInfo, ___T>,
) -> impl Future<Output = ()>;
fn register_sys_suspend_callback(
&mut self,
request: Request<RegisterSysSuspendCallback, ___T>,
responder: Responder<RegisterSysSuspendCallback, ___T>,
) -> impl Future<Output = ()>;
fn add_composite_node_spec(
&mut self,
request: Request<AddCompositeNodeSpec, ___T>,
responder: Responder<AddCompositeNodeSpec, ___T>,
) -> impl Future<Output = ()>;
fn register_iommu(
&mut self,
request: Request<RegisterIommu, ___T>,
responder: Responder<RegisterIommu, ___T>,
) -> impl Future<Output = ()>;
// Provided method
fn on_unknown_interaction(
&mut self,
ordinal: u64,
) -> impl Future<Output = ()> { ... }
}Expand description
A server handler for the PlatformBus protocol.
See PlatformBus for more details.
Required Methods§
Sourcefn node_add(
&mut self,
request: Request<NodeAdd, ___T>,
responder: Responder<NodeAdd, ___T>,
) -> impl Future<Output = ()>
fn node_add( &mut self, request: Request<NodeAdd, ___T>, responder: Responder<NodeAdd, ___T>, ) -> impl Future<Output = ()>
Adds a new platform device node to the bus, using configuration provided by |node|. Platform device nodes are created in their own separate driver hosts.
Sourcefn get_board_info(
&mut self,
responder: Responder<GetBoardInfo, ___T>,
) -> impl Future<Output = ()>
fn get_board_info( &mut self, responder: Responder<GetBoardInfo, ___T>, ) -> impl Future<Output = ()>
Board drivers may use this to get information about the board, and to differentiate between multiple boards that they support.
Sourcefn set_board_info(
&mut self,
request: Request<SetBoardInfo, ___T>,
responder: Responder<SetBoardInfo, ___T>,
) -> impl Future<Output = ()>
fn set_board_info( &mut self, request: Request<SetBoardInfo, ___T>, responder: Responder<SetBoardInfo, ___T>, ) -> impl Future<Output = ()>
Board drivers may use this to set information about the board.
Sourcefn set_bootloader_info(
&mut self,
request: Request<SetBootloaderInfo, ___T>,
responder: Responder<SetBootloaderInfo, ___T>,
) -> impl Future<Output = ()>
fn set_bootloader_info( &mut self, request: Request<SetBootloaderInfo, ___T>, responder: Responder<SetBootloaderInfo, ___T>, ) -> impl Future<Output = ()>
Board drivers may use this to set information about the bootloader.
Sourcefn register_sys_suspend_callback(
&mut self,
request: Request<RegisterSysSuspendCallback, ___T>,
responder: Responder<RegisterSysSuspendCallback, ___T>,
) -> impl Future<Output = ()>
fn register_sys_suspend_callback( &mut self, request: Request<RegisterSysSuspendCallback, ___T>, responder: Responder<RegisterSysSuspendCallback, ___T>, ) -> impl Future<Output = ()>
Registers a callback that’s invoked by the platform bus when it’s suspending.
Sourcefn add_composite_node_spec(
&mut self,
request: Request<AddCompositeNodeSpec, ___T>,
responder: Responder<AddCompositeNodeSpec, ___T>,
) -> impl Future<Output = ()>
fn add_composite_node_spec( &mut self, request: Request<AddCompositeNodeSpec, ___T>, responder: Responder<AddCompositeNodeSpec, ___T>, ) -> impl Future<Output = ()>
Adds a composite node specification that has |node| as one of the
composite node’s parents. To accomplish this, this method does a couple
of things. The method adds a platform device node specified by |node| as
a child of the platform bus. Also, a
fuchsia.driver.framework.ParentSpec is added to |spec| which matches
the newly added platform device node. Composite bind rules should include
a stanza that matches the properites of |node| in order for the bind
rules to match against the CompositeNodeSpec.
Sourcefn register_iommu(
&mut self,
request: Request<RegisterIommu, ___T>,
responder: Responder<RegisterIommu, ___T>,
) -> impl Future<Output = ()>
fn register_iommu( &mut self, request: Request<RegisterIommu, ___T>, responder: Responder<RegisterIommu, ___T>, ) -> impl Future<Output = ()>
Register an iommu. The platform bus will use this to create a new iommu object with the kernel based on the parameters passed in.
Provided Methods§
fn on_unknown_interaction(&mut self, ordinal: u64) -> impl Future<Output = ()>
Dyn Compatibility§
This trait is not dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".