pub enum ControllerRequest {
ConnectToDeviceFidl {
server: Channel,
control_handle: ControllerControlHandle,
},
ConnectToController {
server: ServerEnd<ControllerMarker>,
control_handle: ControllerControlHandle,
},
Bind {
driver: String,
responder: ControllerBindResponder,
},
Rebind {
driver: String,
responder: ControllerRebindResponder,
},
UnbindChildren {
responder: ControllerUnbindChildrenResponder,
},
ScheduleUnbind {
responder: ControllerScheduleUnbindResponder,
},
GetTopologicalPath {
responder: ControllerGetTopologicalPathResponder,
},
}
Expand description
Interface for manipulating a device in a devhost
§Deprecation
This interface is moving to fuchsia.device.fs. Tracking bug: https://fxbug.dev/340316138 Please use that version of this protocol. Also, see //sdk/fidl/fuchsia.device.fs/README.md for future plans for DevFS.
Variants§
ConnectToDeviceFidl
Connect to the underlying device’s FIDL protocol. This connection will not be multiplexed with fuchsia.device.Controller or fuchsia.io.Node.
ConnectToController
Connect to the same Controller FIDL protocol.
Bind
Attempt to bind a driver to this device.
- request
driver
This represents the suffix of a driver URL (e.g: “fvm.cm”). If this is non-empty, then the only drivers that will try to bind are ones that match this url suffix.
Rebind
Unbind all the children of this device, and then attempt to bind a driver to the device. This will not return until the bind completes.
- request
driver
This represents the suffix of a driver URL (e.g: “fvm.cm”). If this is non-empty, then the only drivers that will try to bind are ones that match this url suffix.
UnbindChildren
This api will unbind all the children of this device synchronously. This will avoid watching for device removal by the clients.
Fields
responder: ControllerUnbindChildrenResponder
ScheduleUnbind
Disconnect this device and allow its parent to be bound again. This may not complete before it returns.
Fields
responder: ControllerScheduleUnbindResponder
GetTopologicalPath
Return the topological path for this device
Fields
responder: ControllerGetTopologicalPathResponder
Implementations§
source§impl ControllerRequest
impl ControllerRequest
pub fn into_connect_to_device_fidl( self, ) -> Option<(Channel, ControllerControlHandle)>
pub fn into_connect_to_controller( self, ) -> Option<(ServerEnd<ControllerMarker>, ControllerControlHandle)>
pub fn into_bind(self) -> Option<(String, ControllerBindResponder)>
pub fn into_rebind(self) -> Option<(String, ControllerRebindResponder)>
pub fn into_unbind_children(self) -> Option<ControllerUnbindChildrenResponder>
pub fn into_schedule_unbind(self) -> Option<ControllerScheduleUnbindResponder>
pub fn into_get_topological_path( self, ) -> Option<ControllerGetTopologicalPathResponder>
sourcepub fn method_name(&self) -> &'static str
pub fn method_name(&self) -> &'static str
Name of the method defined in FIDL