net/ice/base: fix adding PPPoE switch rule
authorQi Zhang <qi.z.zhang@intel.com>
Tue, 8 Oct 2019 01:50:07 +0000 (09:50 +0800)
committerFerruh Yigit <ferruh.yigit@intel.com>
Wed, 23 Oct 2019 14:43:09 +0000 (16:43 +0200)
Update VLAN protocol ID to correct value for single VXLAN scenario.
Fix the missing ethertype offset for PPPoE dummy packet offset to
allow matching the corresponding field.

Fixes: d1c2f76b440a ("net/ice/base: support GTP and PPPoE protocols")

Signed-off-by: Dan Nowlin <dan.nowlin@intel.com>
Signed-off-by: Junfeng Guo <junfeng.guo@intel.com>
Signed-off-by: Paul M Stillwell Jr <paul.m.stillwell.jr@intel.com>
Signed-off-by: Qi Zhang <qi.z.zhang@intel.com>
Acked-by: Qiming Yang <qiming.yang@intel.com>
drivers/net/ice/base/ice_protocol_type.h
drivers/net/ice/base/ice_switch.c

index f61345a..548c973 100644 (file)
@@ -118,7 +118,7 @@ enum ice_prot_id {
 #define ICE_MAC_OFOS_HW                1
 #define ICE_MAC_IL_HW          4
 #define ICE_ETYPE_OL_HW                9
-#define ICE_VLAN_OL_HW         16
+#define ICE_VLAN_OL_HW         17
 #define ICE_IPV4_OFOS_HW       32
 #define ICE_IPV4_IL_HW         33
 #define ICE_IPV6_OFOS_HW       40
index 80afa74..71d7f07 100644 (file)
@@ -419,6 +419,7 @@ dummy_udp_gtp_packet[] = {
 static const
 struct ice_dummy_pkt_offsets dummy_pppoe_packet_offsets[] = {
        { ICE_MAC_OFOS,         0 },
+       { ICE_ETYPE_OL,         12 },
        { ICE_VLAN_OFOS,        14},
        { ICE_PPPOE,            18 },
        { ICE_PROTOCOL_LAST,    0 },
@@ -429,20 +430,23 @@ dummy_pppoe_packet[] = {
        0x00, 0x00, 0x00, 0x00, /* ICE_MAC_OFOS 0 */
        0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00,
-       0x81, 0x00,
+
+       0x81, 0x00,             /* ICE_ETYPE_OL 12 */
 
        0x00, 0x00, 0x88, 0x64, /* ICE_VLAN_OFOS 14 */
 
-       0x11, 0x00, 0x00, 0x01, /* ICE_PPPOE 18 */
-       0x00, 0x4e, 0x00, 0x21,
+       0x11, 0x00, 0x00, 0x00, /* ICE_PPPOE 18 */
+       0x00, 0x16,
+
+       0x00, 0x21,             /* PPP Link Layer 24 */
 
-       0x45, 0x00, 0x00, 0x30, /* PDU */
+       0x45, 0x00, 0x00, 0x14, /* ICE_IPV4_IL 26 */
+       0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00,
-       0x00, 0x11, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00,
        0x00, 0x00, 0x00, 0x00,
 
-       0x00, 0x00, /* 2 bytes for 4 byte alignment */
+       0x00, 0x00,             /* 2 bytes for 4 bytes alignment */
 };
 
 /* this is a recipe to profile association bitmap */