summaryrefslogtreecommitdiff
path: root/drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h')
-rw-r--r--drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h32
1 files changed, 32 insertions, 0 deletions
diff --git a/drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h b/drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h
index 2c681c2..3a40872 100644
--- a/drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h
+++ b/drivers/staging/fsl-dpaa2/ethernet/dpni-cmd.h
@@ -87,6 +87,8 @@
#define DPNI_CMDID_SET_RX_TC_DIST DPNI_CMD(0x235)
+#define DPNI_CMDID_SET_QOS_TBL DPNI_CMD(0x240)
+#define DPNI_CMDID_ADD_QOS_ENT DPNI_CMD(0x241)
#define DPNI_CMDID_ADD_FS_ENT DPNI_CMD(0x244)
#define DPNI_CMDID_REMOVE_FS_ENT DPNI_CMD(0x245)
#define DPNI_CMDID_CLR_FS_ENT DPNI_CMD(0x246)
@@ -513,6 +515,36 @@ struct dpni_cmd_set_queue {
__le64 user_context;
};
+#define DPNI_DISCARD_ON_MISS_SHIFT 0
+#define DPNI_DISCARD_ON_MISS_SIZE 1
+
+struct dpni_cmd_set_qos_table {
+ u32 pad;
+ u8 default_tc;
+ /* only the LSB */
+ u8 discard_on_miss;
+ u16 pad1[21];
+ u64 key_cfg_iova;
+};
+
+struct dpni_cmd_add_qos_entry {
+ u16 pad;
+ u8 tc_id;
+ u8 key_size;
+ u16 index;
+ u16 pad2;
+ u64 key_iova;
+ u64 mask_iova;
+};
+
+struct dpni_cmd_remove_qos_entry {
+ u8 pad1[3];
+ u8 key_size;
+ u32 pad2;
+ u64 key_iova;
+ u64 mask_iova;
+};
+
struct dpni_cmd_add_fs_entry {
/* cmd word 0 */
u16 options;