greybus: timesync: Add Control and SVC TimeSync command/response data definitions
authorBryan O'Donoghue <bryan.odonoghue@linaro.org>
Wed, 2 Mar 2016 16:51:08 +0000 (16:51 +0000)
committerGreg Kroah-Hartman <gregkh@google.com>
Thu, 3 Mar 2016 23:16:52 +0000 (15:16 -0800)
This patch adds the protocol command/response definitions for the SVC and
Control protocols to the greybus_protocols definition header consistent
with the greybus-spec.

Signed-off-by: Bryan O'Donoghue <bryan.odonoghue@linaro.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@google.com>
drivers/staging/greybus/greybus_protocols.h

index b60c7dc0e6dcdccbf8b095757e0b1a3cf1b9c8a9..c0a7863f8e1de5a38b21caaf1e1f5af8c1ec7076 100644 (file)
@@ -170,6 +170,20 @@ struct gb_control_interface_version_response {
        __le16                  minor;
 } __packed;
 
+#define GB_TIMESYNC_MAX_STROBES                        0x04
+
+struct gb_control_timesync_enable_request {
+       __u8    count;
+       __u64   frame_time;
+       __u32   strobe_delay;
+       __u32   refclk;
+} __packed;
+/* timesync enable response has no payload */
+
+struct gb_control_timesync_authoritative_request {
+       __u64   frame_time[GB_TIMESYNC_MAX_STROBES];
+} __packed;
+/* timesync authoritative response has no payload */
 
 /* APBridge protocol */
 
@@ -900,6 +914,20 @@ struct gb_svc_route_destroy_request {
 } __packed;
 /* route destroy response has no payload */
 
+struct gb_svc_timesync_enable_request {
+       __u8    count;
+       __u64   frame_time;
+       __u32   strobe_delay;
+       __u32   strobe_mask;
+       __u32   refclk;
+} __packed;
+/* timesync enable response has no payload */
+
+/* timesync authoritative request has no payload */
+struct gb_svc_timesync_authoritative_response {
+       __u64   frame_time[GB_TIMESYNC_MAX_STROBES];
+};
+
 #define GB_SVC_UNIPRO_FAST_MODE                        0x01
 #define GB_SVC_UNIPRO_SLOW_MODE                        0x02
 #define GB_SVC_UNIPRO_FAST_AUTO_MODE           0x04