1 #ifndef __INC_ETHERNET_H
2 #define __INC_ETHERNET_H
3 
4 #define ETHERNET_ADDRESS_LENGTH		6	/*!< Ethernet Address Length*/
5 #define ETHERNET_HEADER_SIZE		14	/*!< Ethernet Header Length*/
6 #define LLC_HEADER_SIZE			6	/*!< LLC Header Length*/
7 #define TYPE_LENGTH_FIELD_SIZE		2	/*!< Type/Length Size*/
8 #define MINIMUM_ETHERNET_PACKET_SIZE	60	/*!< Min Ethernet Packet Size*/
9 #define MAXIMUM_ETHERNET_PACKET_SIZE	1514	/*!< Max Ethernet Packet Size*/
10 
11 /*!< Is Multicast Address? */
12 #define RT_ETH_IS_MULTICAST(_pAddr)	((((u8 *)(_pAddr))[0]&0x01) != 0)
13 /*!< Is Broadcast Address? */
14 #define RT_ETH_IS_BROADCAST(_pAddr)	(				\
15 			((u8 *)(_pAddr))[0] == 0xff	&&		\
16 			((u8 *)(_pAddr))[1] == 0xff	&&		\
17 			((u8 *)(_pAddr))[2] == 0xff	&&		\
18 			((u8 *)(_pAddr))[3] == 0xff	&&		\
19 			((u8 *)(_pAddr))[4] == 0xff	&&		\
20 			((u8 *)(_pAddr))[5] == 0xff)
21 
22 #endif /* #ifndef __INC_ETHERNET_H */
23 
24