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