greybus: hd/es2: remove obsolete callbacks
[cascardo/linux.git] / drivers / staging / greybus / greybus_protocols.h
index d39a580..c4ef005 100644 (file)
@@ -96,18 +96,13 @@ struct gb_operation_msg_hdr {
 
 
 /* Generic request types */
-#define GB_REQUEST_TYPE_PING                   0x00
+#define GB_REQUEST_TYPE_CPORT_SHUTDOWN         0x00
 #define GB_REQUEST_TYPE_INVALID                        0x7f
 
-struct gb_protocol_version_request {
-       __u8    major;
-       __u8    minor;
+struct gb_cport_shutdown_request {
+       __u8 phase;
 } __packed;
 
-struct gb_protocol_version_response {
-       __u8    major;
-       __u8    minor;
-} __packed;
 
 /* Control Protocol */
 
@@ -252,24 +247,20 @@ struct gb_control_intf_pm_response {
 /* request to control the CSI transmitter */
 #define GB_APB_REQUEST_CSI_TX_CONTROL          0x08
 
-/* request to control the CSI transmitter */
+/* request to control audio streaming */
 #define GB_APB_REQUEST_AUDIO_CONTROL           0x09
 
-/* vendor requests to enable/disable CPort features */
-#define GB_APB_REQUEST_CPORT_FEAT_EN           0x0b
-#define GB_APB_REQUEST_CPORT_FEAT_DIS          0x0c
-
-/* TimeSync commands */
-#define REQUEST_TIMESYNC_ENABLE                        0x0d
-#define REQUEST_TIMESYNC_DISABLE               0x0e
-#define REQUEST_TIMESYNC_AUTHORITATIVE         0x0f
-#define REQUEST_TIMESYNC_GET_LAST_EVENT                0x10
+/* TimeSync requests */
+#define GB_APB_REQUEST_TIMESYNC_ENABLE         0x0d
+#define GB_APB_REQUEST_TIMESYNC_DISABLE                0x0e
+#define GB_APB_REQUEST_TIMESYNC_AUTHORITATIVE  0x0f
+#define GB_APB_REQUEST_TIMESYNC_GET_LAST_EVENT 0x10
 
 /* requests to set Greybus CPort flags */
 #define GB_APB_REQUEST_CPORT_FLAGS             0x11
 
-/* ARPC command */
-#define APBA_REQUEST_ARPC_RUN                  0x12
+/* ARPC request */
+#define GB_APB_REQUEST_ARPC_RUN                        0x12
 
 struct gb_apb_request_cport_flags {
        __le32  flags;
@@ -277,35 +268,6 @@ struct gb_apb_request_cport_flags {
 #define GB_APB_CPORT_FLAG_HIGH_PRIO            0x02
 } __packed;
 
-/* APBridgeA RPC (ARPC) */
-
-enum arpc_result {
-       ARPC_SUCCESS            = 0x00,
-       ARPC_NO_MEMORY          = 0x01,
-       ARPC_INVALID            = 0x02,
-       ARPC_TIMEOUT            = 0x03,
-       ARPC_UNKNOWN_ERROR      = 0xff,
-};
-
-/* ARPC request */
-struct arpc_request_message {
-       __le16  id;             /* RPC unique id */
-       __le16  size;           /* Size in bytes of header + payload */
-       __u8    type;           /* RPC type */
-       __u8    data[0];        /* ARPC data */
-} __packed;
-
-/* ARPC response */
-struct arpc_response_message {
-       __le16  id;             /* RPC unique id */
-       __u8    result;         /* Result of RPC */
-} __packed;
-
-#define ARPC_CPORT_RESET                       0x00
-
-struct arpc_cport_reset {
-       __le16 cport_id;
-} __packed;
 
 /* Firmware Download Protocol */
 
@@ -314,11 +276,11 @@ struct arpc_cport_reset {
 #define GB_FW_DOWNLOAD_TYPE_FETCH_FIRMWARE     0x02
 #define GB_FW_DOWNLOAD_TYPE_RELEASE_FIRMWARE   0x03
 
-#define GB_FIRMWARE_TAG_MAX_LEN                        10
+#define GB_FIRMWARE_TAG_MAX_SIZE               10
 
 /* firmware download find firmware request/response */
 struct gb_fw_download_find_firmware_request {
-       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_LEN];
+       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE];
 } __packed;
 
 struct gb_fw_download_find_firmware_response {
@@ -367,10 +329,18 @@ struct gb_fw_download_release_firmware_request {
 #define GB_FW_BACKEND_FW_STATUS_FAIL_FETCH     0x03
 #define GB_FW_BACKEND_FW_STATUS_FAIL_WRITE     0x04
 #define GB_FW_BACKEND_FW_STATUS_INT            0x05
+#define GB_FW_BACKEND_FW_STATUS_RETRY          0x06
+#define GB_FW_BACKEND_FW_STATUS_NOT_SUPPORTED  0x07
+
+#define GB_FW_BACKEND_VERSION_STATUS_SUCCESS           0x01
+#define GB_FW_BACKEND_VERSION_STATUS_NOT_AVAILABLE     0x02
+#define GB_FW_BACKEND_VERSION_STATUS_NOT_SUPPORTED     0x03
+#define GB_FW_BACKEND_VERSION_STATUS_RETRY             0x04
+#define GB_FW_BACKEND_VERSION_STATUS_FAIL_INT          0x05
 
 /* firmware management interface firmware version request has no payload */
 struct gb_fw_mgmt_interface_fw_version_response {
-       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_LEN];
+       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE];
        __le16                  major;
        __le16                  minor;
 } __packed;
@@ -379,7 +349,7 @@ struct gb_fw_mgmt_interface_fw_version_response {
 struct gb_fw_mgmt_load_and_validate_fw_request {
        __u8                    request_id;
        __u8                    load_method;
-       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_LEN];
+       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE];
 } __packed;
 /* firmware management load and validate firmware response has no payload*/
 
@@ -394,18 +364,19 @@ struct gb_fw_mgmt_loaded_fw_request {
 
 /* firmware management backend firmware version request/response */
 struct gb_fw_mgmt_backend_fw_version_request {
-       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_LEN];
+       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE];
 } __packed;
 
 struct gb_fw_mgmt_backend_fw_version_response {
        __le16                  major;
        __le16                  minor;
+       __u8                    status;
 } __packed;
 
 /* firmware management backend firmware update request */
 struct gb_fw_mgmt_backend_fw_update_request {
        __u8                    request_id;
-       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_LEN];
+       __u8                    firmware_tag[GB_FIRMWARE_TAG_MAX_SIZE];
 } __packed;
 /* firmware management backend firmware update response has no payload */
 
@@ -1036,7 +1007,6 @@ struct gb_spi_transfer_response {
 #define GB_SVC_TYPE_TIMESYNC_WAKE_PINS_ACQUIRE 0x18
 #define GB_SVC_TYPE_TIMESYNC_WAKE_PINS_RELEASE 0x19
 #define GB_SVC_TYPE_TIMESYNC_PING              0x1a
-#define GB_SVC_TYPE_CONN_QUIESCING             0x1e
 #define GB_SVC_TYPE_MODULE_INSERTED            0x1f
 #define GB_SVC_TYPE_MODULE_REMOVED             0x20
 #define GB_SVC_TYPE_INTF_VSYS_ENABLE           0x21
@@ -1048,6 +1018,7 @@ struct gb_spi_transfer_response {
 #define GB_SVC_TYPE_INTF_ACTIVATE              0x27
 #define GB_SVC_TYPE_INTF_RESUME                        0x28
 #define GB_SVC_TYPE_INTF_MAILBOX_EVENT         0x29
+#define GB_SVC_TYPE_INTF_OOPS                  0x2a
 
 /* Greybus SVC protocol status values */
 #define GB_SVC_OP_SUCCESS                      0x00
@@ -1146,6 +1117,7 @@ struct gb_svc_dme_peer_set_response {
 #define GB_INIT_UNTRUSTED_SPI_BOOT_FINISHED            0x04
 #define GB_INIT_BOOTROM_UNIPRO_BOOT_STARTED            0x06
 #define GB_INIT_BOOTROM_FALLBACK_UNIPRO_BOOT_STARTED   0x09
+#define GB_INIT_S2_LOADER_BOOT_STARTED                 0x0D
 
 struct gb_svc_route_create_request {
        __u8    intf1_id;
@@ -1386,16 +1358,11 @@ struct gb_svc_intf_mailbox_event_request {
 } __packed;
 /* intf_mailbox_event response has no payload */
 
-struct gb_svc_conn_quiescing_request {
-       __u8    intf1_id;
-       __le16  cport1_id;
-       __u8    intf2_id;
-       __le16  cport2_id;
-} __packed;
-
-struct gb_svc_conn_quiescing_response {
-       __u8    status;
+struct gb_svc_intf_oops_request {
+       __u8    intf_id;
+       __u8    reason;
 } __packed;
+/* intf_oops response has no payload */
 
 
 /* RAW */
@@ -1551,10 +1518,10 @@ struct gb_sdio_get_caps_response {
 
        /* see possible values below at vdd */
        __le32 ocr;
-       __le16 max_blk_count;
-       __le16 max_blk_size;
        __le32 f_min;
        __le32 f_max;
+       __le16 max_blk_count;
+       __le16 max_blk_size;
 } __packed;
 
 /* set ios request: response has no payload */
@@ -1711,17 +1678,6 @@ struct gb_camera_stream_config_response {
        __le32 max_size;
 } __packed;
 
-struct gb_camera_configure_streams_response_deprecated {
-       __u8 num_streams;
-       __u8 flags;
-       __u8 num_lanes;
-       __u8 padding;
-       __le32 bus_freq;
-       __le32 lines_per_second;
-       struct gb_camera_stream_config_response config[0];
-} __packed;
-#define GB_CAMERA_CONFIGURE_STREAMS_DEPRECATED_SIZE    12
-
 struct gb_camera_configure_streams_response {
        __u8 num_streams;
 #define GB_CAMERA_CONFIGURE_STREAMS_ADJUSTED   0x01
@@ -1730,7 +1686,6 @@ struct gb_camera_configure_streams_response {
        __le32 data_rate;
        struct gb_camera_stream_config_response config[0];
 };
-#define GB_CAMERA_CONFIGURE_STREAMS_SIZE               8
 
 /* Greybus Camera Capture request payload - response has no payload */
 struct gb_camera_capture_request {
@@ -1937,11 +1892,11 @@ struct gb_lights_get_flash_fault_response {
 #define GB_AUDIO_TYPE_GET_PCM                  0x08
 #define GB_AUDIO_TYPE_SET_PCM                  0x09
 #define GB_AUDIO_TYPE_SET_TX_DATA_SIZE         0x0a
-#define GB_AUDIO_TYPE_GET_TX_DELAY             0x0b
+                                               /* 0x0b unused */
 #define GB_AUDIO_TYPE_ACTIVATE_TX              0x0c
 #define GB_AUDIO_TYPE_DEACTIVATE_TX            0x0d
 #define GB_AUDIO_TYPE_SET_RX_DATA_SIZE         0x0e
-#define GB_AUDIO_TYPE_GET_RX_DELAY             0x0f
+                                               /* 0x0f unused */
 #define GB_AUDIO_TYPE_ACTIVATE_RX              0x10
 #define GB_AUDIO_TYPE_DEACTIVATE_RX            0x11
 #define GB_AUDIO_TYPE_JACK_EVENT               0x12
@@ -2161,10 +2116,10 @@ struct gb_audio_topology {
        __u8    num_controls;
        __u8    num_widgets;
        __u8    num_routes;
-       __u32   size_dais;
-       __u32   size_controls;
-       __u32   size_widgets;
-       __u32   size_routes;
+       __le32  size_dais;
+       __le32  size_controls;
+       __le32  size_widgets;
+       __le32  size_routes;
        /*
         * struct gb_audio_dai          dai[num_dais];
         * struct gb_audio_control      controls[num_controls];
@@ -2229,14 +2184,6 @@ struct gb_audio_set_tx_data_size_request {
        __le16  size;
 } __packed;
 
-struct gb_audio_get_tx_delay_request {
-       __le16  data_cport;
-} __packed;
-
-struct gb_audio_get_tx_delay_response {
-       __le32  delay;
-} __packed;
-
 struct gb_audio_activate_tx_request {
        __le16  data_cport;
 } __packed;
@@ -2250,14 +2197,6 @@ struct gb_audio_set_rx_data_size_request {
        __le16  size;
 } __packed;
 
-struct gb_audio_get_rx_delay_request {
-       __le16  data_cport;
-} __packed;
-
-struct gb_audio_get_rx_delay_response {
-       __le32  delay;
-} __packed;
-
 struct gb_audio_activate_rx_request {
        __le16  data_cport;
 } __packed;