Thomas Gleixner | 2874c5f | 2019-05-27 08:55:01 +0200 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0-or-later */ |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 2 | /****************************************************************************** |
| 3 | * |
| 4 | * (C)Copyright 1998,1999 SysKonnect, |
| 5 | * a business unit of Schneider & Koch & Co. Datensysteme GmbH. |
| 6 | * |
Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 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_ */ |