ethernet: add some more Ethertypes.

Add some types based on other BSDs and also add EtherCat and PROFINET, which
are IEC standards.

There is a public list (CSV format) at:
	https://standards.ieee.org/products-services/regauth/

MFC after:	2 weeks
This commit is contained in:
Pedro F. Giffuni 2020-02-02 18:27:37 +00:00
parent 4382f0f7a9
commit badbcf06e0
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=357414

View File

@ -98,6 +98,11 @@ struct ether_vlan_header {
((((((pri) & 7) << 1) | ((cfi) & 1)) << 12) | ((vlid) & EVL_VLID_MASK))
/*
* Ethernet protocol types.
*
* A public list is available from the IEEE Ragistration Authority:
* https://standards.ieee.org/products-services/regauth/
*
* NOTE: 0x0000-0x05DC (0..1500) are generally IEEE 802.3 length fields.
* However, there are some conflicts.
*/
@ -347,7 +352,14 @@ struct ether_vlan_header {
#define ETHERTYPE_PPPOE 0x8864 /* PPP Over Ethernet Session Stage */
#define ETHERTYPE_LANPROBE 0x8888 /* HP LanProbe test? */
#define ETHERTYPE_PAE 0x888e /* EAPOL PAE/802.1x */
#define ETHERTYPE_PROFINET 0x8892 /* PROFINET RT Protocol */
#define ETHERTYPE_AOE 0x88a2 /* ATA Protocol */
#define ETHERTYPE_ETHERCAT 0x88a4 /* EtherCat Protocol */
#define ETHERTYPE_FCOE 0x8906 /* Fibre Channel over Ethernet */
#define ETHERTYPE_QINQ 0x88A8 /* 802.1ad VLAN stacking */
#define ETHERTYPE_LLDP 0x88CC /* Link Layer Discovery Protocol */
#define ETHERTYPE_MACSEC 0x88e5 /* 802.1AE MAC Security */
#define ETHERTYPE_PBB 0x88e7 /* 802.1Q Provider Backbone Bridges */
#define ETHERTYPE_LOOPBACK 0x9000 /* Loopback: used to test interfaces */
#define ETHERTYPE_8021Q9100 0x9100 /* IEEE 802.1Q stacking (proprietary) */
#define ETHERTYPE_LBACK ETHERTYPE_LOOPBACK /* DEC MOP loopback */