[U-Boot] [PATCH 3/3] linux/if_ether.h: Add VLAN related macros
Bin Meng
bmeng.cn at gmail.com
Tue Jul 31 09:44:05 UTC 2018
There are VLAN related macros defined in include/linux/if_vlan.h
in Linux kernel, as well as some kernel useful structures and inline
functions. Instead of a complete import from kernel, let's add these
VLAN macros to U-Boot's include/linux/if_ether.h.
Signed-off-by: Bin Meng <bmeng.cn at gmail.com>
---
include/linux/if_ether.h | 19 +++++++++++++++++++
1 file changed, 19 insertions(+)
diff --git a/include/linux/if_ether.h b/include/linux/if_ether.h
index 181a54e..4b01c37 100644
--- a/include/linux/if_ether.h
+++ b/include/linux/if_ether.h
@@ -155,5 +155,24 @@
#define ETH_P_MAP 0x00F9 /* Qualcomm multiplexing and */
/* aggregation protocol */
+/* The following macros come from Linux kernel include/linux/if_vlan.h */
+
+#define VLAN_HLEN 4 /* The additional bytes required by VLAN */
+ /* (in addition to the Ethernet header) */
+#define VLAN_ETH_HLEN 18 /* Total octets in header. */
+#define VLAN_ETH_ZLEN 64 /* Min. octets in frame sans FCS */
+
+/*
+ * According to 802.3ac, the packet can be 4 bytes longer. --Klika Jan
+ */
+#define VLAN_ETH_DATA_LEN 1500 /* Max. octets in payload */
+#define VLAN_ETH_FRAME_LEN 1518 /* Max. octets in frame sans FCS */
+
+#define VLAN_PRIO_MASK 0xe000 /* Priority Code Point */
+#define VLAN_PRIO_SHIFT 13
+#define VLAN_CFI_MASK 0x1000 /* Canonical Format Indicator */
+#define VLAN_TAG_PRESENT VLAN_CFI_MASK
+#define VLAN_VID_MASK 0x0fff /* VLAN Identifier */
+#define VLAN_N_VID 4096
#endif /* _UAPI_LINUX_IF_ETHER_H */
--
2.7.4
More information about the U-Boot
mailing list