greybus: control: implement mode-switch operation
Implement the unidirectional mode-switch operation. This operation will be used in the implementation of the new generic mode-switch functionality. Signed-off-by: Johan Hovold <johan@hovoldconsulting.com> Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
This commit is contained in:
parent
5fdc027d54
commit
1c3aead12e
|
@ -149,6 +149,13 @@ int gb_control_disconnected_operation(struct gb_control *control, u16 cport_id)
|
|||
sizeof(request), NULL, 0);
|
||||
}
|
||||
|
||||
int gb_control_mode_switch_operation(struct gb_control *control)
|
||||
{
|
||||
return gb_operation_unidirectional(control->connection,
|
||||
GB_CONTROL_TYPE_MODE_SWITCH,
|
||||
NULL, 0);
|
||||
}
|
||||
|
||||
int gb_control_get_interface_version_operation(struct gb_interface *intf)
|
||||
{
|
||||
struct gb_control_interface_version_response response;
|
||||
|
|
|
@ -36,6 +36,7 @@ void gb_control_put(struct gb_control *control);
|
|||
int gb_control_get_bundle_versions(struct gb_control *control);
|
||||
int gb_control_connected_operation(struct gb_control *control, u16 cport_id);
|
||||
int gb_control_disconnected_operation(struct gb_control *control, u16 cport_id);
|
||||
int gb_control_mode_switch_operation(struct gb_control *control);
|
||||
int gb_control_get_manifest_size_operation(struct gb_interface *intf);
|
||||
int gb_control_get_manifest_operation(struct gb_interface *intf, void *manifest,
|
||||
size_t size);
|
||||
|
|
|
@ -123,6 +123,7 @@ struct gb_protocol_version_response {
|
|||
#define GB_CONTROL_TYPE_TIMESYNC_AUTHORITATIVE 0x09
|
||||
#define GB_CONTROL_TYPE_INTERFACE_VERSION 0x0a
|
||||
#define GB_CONTROL_TYPE_BUNDLE_VERSION 0x0b
|
||||
#define GB_CONTROL_TYPE_MODE_SWITCH 0x0e
|
||||
|
||||
struct gb_control_version_request {
|
||||
__u8 major;
|
||||
|
|
Loading…
Reference in New Issue