]> git.proxmox.com Git - mirror_ubuntu-hirsute-kernel.git/blobdiff - drivers/net/ethernet/intel/ixgbe/ixgbe_model.h
Merge tag 'nfc-next-4.7-1' of git://git.kernel.org/pub/scm/linux/kernel/git/sameo...
[mirror_ubuntu-hirsute-kernel.git] / drivers / net / ethernet / intel / ixgbe / ixgbe_model.h
index 74c53ad9d2685e9c5548885a8964d5b189669492..a8bed3d887f7155468b3fb49efcde821cfaa5a14 100644 (file)
@@ -38,6 +38,12 @@ struct ixgbe_mat_field {
        unsigned int type;
 };
 
+struct ixgbe_jump_table {
+       struct ixgbe_mat_field *mat;
+       struct ixgbe_fdir_filter *input;
+       union ixgbe_atr_input *mask;
+};
+
 static inline int ixgbe_mat_prgm_sip(struct ixgbe_fdir_filter *input,
                                     union ixgbe_atr_input *mask,
                                     u32 val, u32 m)
@@ -82,6 +88,12 @@ static struct ixgbe_mat_field ixgbe_tcp_fields[] = {
        { .val = NULL } /* terminal node */
 };
 
+static struct ixgbe_mat_field ixgbe_udp_fields[] = {
+       {.off = 0, .val = ixgbe_mat_prgm_ports,
+        .type = IXGBE_ATR_FLOW_TYPE_UDPV4},
+       { .val = NULL } /* terminal node */
+};
+
 struct ixgbe_nexthdr {
        /* offset, shift, and mask of position to next header */
        unsigned int o;
@@ -98,6 +110,8 @@ struct ixgbe_nexthdr {
 static struct ixgbe_nexthdr ixgbe_ipv4_jumps[] = {
        { .o = 0, .s = 6, .m = 0xf,
          .off = 8, .val = 0x600, .mask = 0xff00, .jump = ixgbe_tcp_fields},
+       { .o = 0, .s = 6, .m = 0xf,
+         .off = 8, .val = 0x1100, .mask = 0xff00, .jump = ixgbe_udp_fields},
        { .jump = NULL } /* terminal node */
 };
 #endif /* _IXGBE_MODEL_H_ */