xref: /linux/drivers/net/fddi/skfp/h/fddi.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /******************************************************************************
3  *
4  *	(C)Copyright 1998,1999 SysKonnect,
5  *	a business unit of Schneider & Koch & Co. Datensysteme GmbH.
6  *
7  *	The information in this file is provided "AS IS" without warranty.
8  *
9  ******************************************************************************/
10 
11 #ifndef	_FDDI_
12 #define _FDDI_
13 
14 struct fddi_addr {
15 	u_char	a[6] ;
16 } ;
17 
18 #define GROUP_ADDR	0x80		/* MSB in a[0] */
19 
20 struct fddi_mac {
21 	struct fddi_addr	mac_dest ;
22 	struct fddi_addr	mac_source ;
23 	u_char			mac_info[4478] ;
24 } ;
25 
26 #define FDDI_MAC_SIZE	(12)
27 #define FDDI_RAW_MTU	(4500-5)	/* exl. Pr,SD, ED/FS */
28 #define FDDI_RAW	(4500)
29 
30 /*
31  * FC values
32  */
33 #define FC_VOID		0x40		/* void frame */
34 #define FC_TOKEN	0x80		/* token */
35 #define FC_RES_TOKEN	0xc0		/* restricted token */
36 #define FC_SMT_INFO	0x41		/* SMT Info frame */
37 /*
38  * FC_SMT_LAN_LOC && FC_SMT_LOC are SK specific !
39  */
40 #define FC_SMT_LAN_LOC	0x42		/* local SMT Info frame */
41 #define FC_SMT_LOC	0x43		/* local SMT Info frame */
42 #define FC_SMT_NSA	0x4f		/* SMT NSA frame */
43 #define FC_MAC		0xc0		/* MAC frame */
44 #define FC_BEACON	0xc2		/* MAC beacon frame */
45 #define FC_CLAIM	0xc3		/* MAC claim frame */
46 #define FC_SYNC_LLC	0xd0		/* sync. LLC frame */
47 #define FC_ASYNC_LLC	0x50		/* async. LLC frame */
48 #define FC_SYNC_BIT	0x80		/* sync. bit in FC */
49 
50 #define FC_LLC_PRIOR	0x07		/* priority bits */
51 
52 #define BEACON_INFO	0		/* beacon type */
53 #define DBEACON_INFO	1		/* beacon type DIRECTED */
54 
55 
56 /*
57  * indicator bits
58  */
59 #define C_INDICATOR	(1<<0)
60 #define A_INDICATOR	(1<<1)
61 #define E_INDICATOR	(1<<2)
62 #define I_INDICATOR	(1<<6)		/* SK specific */
63 #define L_INDICATOR	(1<<7)		/* SK specific */
64 
65 #endif	/* _FDDI_ */
66