summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authorHarout Hedeshian <harouth@codeaurora.org>2013-11-20 08:33:11 -0700
committerDavid Keitel <dkeitel@codeaurora.org>2016-03-22 11:05:00 -0700
commite618b5e2a8225412e1871d81e54d12503093e59c (patch)
treee4554e19ef1e503a30e5353b716fb63ca25640cd /include
parent35a95f1d3f789e4aab36da8302e260581e58868f (diff)
net: rmnet_data: 8-byte QoS Header Support
Implement 8-byte QoS header support in order to fix alignment issues on HSIC transport and increase throughput CRs-Fixed: 579132 Change-Id: I3e53571d36bd71705abcb1473290929f8227e6f3 Signed-off-by: Harout Hedeshian <harouth@codeaurora.org>
Diffstat (limited to 'include')
-rw-r--r--include/uapi/linux/msm_rmnet.h15
1 files changed, 14 insertions, 1 deletions
diff --git a/include/uapi/linux/msm_rmnet.h b/include/uapi/linux/msm_rmnet.h
index da0ae85d7211..ec251331b1da 100644
--- a/include/uapi/linux/msm_rmnet.h
+++ b/include/uapi/linux/msm_rmnet.h
@@ -53,7 +53,10 @@ enum rmnet_ioctl_extended_cmds_e {
RMNET_IOCTL_GET_HWSW_MAP = 0x000E, /* Get HW/SW map */
RMNET_IOCTL_SET_RX_HEADROOM = 0x000F, /* RX Headroom */
RMNET_IOCTL_GET_EP_PAIR = 0x0010, /* Endpoint pair */
- RMNET_IOCTL_EXTENDED_MAX = 0x0011
+ RMNET_IOCTL_SET_QOS_VERSION = 0x0011, /* 8/6 byte QoS hdr*/
+ RMNET_IOCTL_GET_QOS_VERSION = 0x0012, /* 8/6 byte QoS hdr*/
+ RMNET_IOCTL_GET_SUPPORTED_QOS_MODES = 0x0013, /* Get QoS modes */
+ RMNET_IOCTL_EXTENDED_MAX = 0x0014
};
/* Return values for the RMNET_IOCTL_GET_SUPPORTED_FEATURES IOCTL */
@@ -115,6 +118,9 @@ struct rmnet_ioctl_extended_s {
} u;
};
+#define RMNET_IOCTL_QOS_MODE_6 (1<<0)
+#define RMNET_IOCTL_QOS_MODE_8 (1<<1)
+
/* QMI QoS header definition */
#define QMI_QOS_HDR_S __attribute((__packed__)) qmi_qos_hdr_s
struct QMI_QOS_HDR_S {
@@ -123,4 +129,11 @@ struct QMI_QOS_HDR_S {
unsigned long flow_id;
};
+/* QMI QoS 8-byte header. */
+struct qmi_qos_hdr8_s {
+ uint8_t version_flags;
+ uint8_t reserved[3];
+ uint32_t flow_id;
+} __attribute((__packed__));
+
#endif /* _UAPI_MSM_RMNET_H_ */