summaryrefslogtreecommitdiff
path: root/drivers/net/skfp/h
diff options
context:
space:
mode:
authorJeff Kirsher <jeffrey.t.kirsher@intel.com>2011-07-31 11:06:29 +0400
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>2011-08-27 11:58:13 +0400
commit33f810b2036f13f1b123062a9e5c1794d400ce81 (patch)
tree370b55026f4bd856e96842f86af631ca2bab3da2 /drivers/net/skfp/h
parent3cd0999d134235d64b175edd2eb1d46ebc97b377 (diff)
downloadlinux-33f810b2036f13f1b123062a9e5c1794d400ce81.tar.xz
fddi: Move the FDDI drivers
Move the FDDI drivers into drivers/net/fddi/ and make the necessary Kconfig and Makefile changes. CC: "Maciej W. Rozycki" <macro@linux-mips.org> CC: Christoph Goos <cgoos@syskonnect.de> CC: <linux@syskonnect.de> Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'drivers/net/skfp/h')
-rw-r--r--drivers/net/skfp/h/cmtdef.h756
-rw-r--r--drivers/net/skfp/h/fddi.h69
-rw-r--r--drivers/net/skfp/h/fddimib.h349
-rw-r--r--drivers/net/skfp/h/fplustm.h274
-rw-r--r--drivers/net/skfp/h/hwmtm.h399
-rw-r--r--drivers/net/skfp/h/mbuf.h50
-rw-r--r--drivers/net/skfp/h/osdef1st.h125
-rw-r--r--drivers/net/skfp/h/sba.h142
-rw-r--r--drivers/net/skfp/h/sba_def.h76
-rw-r--r--drivers/net/skfp/h/skfbi.h1133
-rw-r--r--drivers/net/skfp/h/skfbiinc.h97
-rw-r--r--drivers/net/skfp/h/smc.h488
-rw-r--r--drivers/net/skfp/h/smt.h882
-rw-r--r--drivers/net/skfp/h/smt_p.h326
-rw-r--r--drivers/net/skfp/h/smtstate.h106
-rw-r--r--drivers/net/skfp/h/supern_2.h1059
-rw-r--r--drivers/net/skfp/h/targethw.h138
-rw-r--r--drivers/net/skfp/h/targetos.h165
-rw-r--r--drivers/net/skfp/h/types.h39
19 files changed, 0 insertions, 6673 deletions
diff --git a/drivers/net/skfp/h/cmtdef.h b/drivers/net/skfp/h/cmtdef.h
deleted file mode 100644
index 5a6c6122ccb0..000000000000
--- a/drivers/net/skfp/h/cmtdef.h
+++ /dev/null
@@ -1,756 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _CMTDEF_
-#define _CMTDEF_
-
-/* **************************************************************** */
-
-/*
- * implementation specific constants
- * MODIIFY THE FOLLOWING THREE DEFINES
- */
-#define AMDPLC /* if Amd PLC chip used */
-#ifdef CONC
-#define NUMPHYS 12 /* 2 for SAS or DAS, more for Concentrator */
-#else
-#ifdef CONC_II
-#define NUMPHYS 24 /* 2 for SAS or DAS, more for Concentrator */
-#else
-#define NUMPHYS 2 /* 2 for SAS or DAS, more for Concentrator */
-#endif
-#endif
-#define NUMMACS 1 /* only 1 supported at the moment */
-#define NUMPATHS 2 /* primary and secondary path supported */
-
-/*
- * DO NOT MODIFY BEYOND THIS POINT
- */
-
-/* **************************************************************** */
-
-#if NUMPHYS > 2
-#define CONCENTRATOR
-#endif
-
-/*
- * Definitions for comfortable LINT usage
- */
-#ifdef lint
-#define LINT_USE(x) (x)=(x)
-#else
-#define LINT_USE(x)
-#endif
-
-#ifdef DEBUG
-#define DB_PR(flag,a,b,c) { if (flag) printf(a,b,c) ; }
-#else
-#define DB_PR(flag,a,b,c)
-#endif
-
-#ifdef DEBUG_BRD
-#define DB_ECM(a,b,c) DB_PR((smc->debug.d_smt&1),a,b,c)
-#define DB_ECMN(n,a,b,c) DB_PR((smc->debug.d_ecm >=(n)),a,b,c)
-#define DB_RMT(a,b,c) DB_PR((smc->debug.d_smt&2),a,b,c)
-#define DB_RMTN(n,a,b,c) DB_PR((smc->debug.d_rmt >=(n)),a,b,c)
-#define DB_CFM(a,b,c) DB_PR((smc->debug.d_smt&4),a,b,c)
-#define DB_CFMN(n,a,b,c) DB_PR((smc->debug.d_cfm >=(n)),a,b,c)
-#define DB_PCM(a,b,c) DB_PR((smc->debug.d_smt&8),a,b,c)
-#define DB_PCMN(n,a,b,c) DB_PR((smc->debug.d_pcm >=(n)),a,b,c)
-#define DB_SMT(a,b,c) DB_PR((smc->debug.d_smtf),a,b,c)
-#define DB_SMTN(n,a,b,c) DB_PR((smc->debug.d_smtf >=(n)),a,b,c)
-#define DB_SBA(a,b,c) DB_PR((smc->debug.d_sba),a,b,c)
-#define DB_SBAN(n,a,b,c) DB_PR((smc->debug.d_sba >=(n)),a,b,c)
-#define DB_ESS(a,b,c) DB_PR((smc->debug.d_ess),a,b,c)
-#define DB_ESSN(n,a,b,c) DB_PR((smc->debug.d_ess >=(n)),a,b,c)
-#else
-#define DB_ECM(a,b,c) DB_PR((debug.d_smt&1),a,b,c)
-#define DB_ECMN(n,a,b,c) DB_PR((debug.d_ecm >=(n)),a,b,c)
-#define DB_RMT(a,b,c) DB_PR((debug.d_smt&2),a,b,c)
-#define DB_RMTN(n,a,b,c) DB_PR((debug.d_rmt >=(n)),a,b,c)
-#define DB_CFM(a,b,c) DB_PR((debug.d_smt&4),a,b,c)
-#define DB_CFMN(n,a,b,c) DB_PR((debug.d_cfm >=(n)),a,b,c)
-#define DB_PCM(a,b,c) DB_PR((debug.d_smt&8),a,b,c)
-#define DB_PCMN(n,a,b,c) DB_PR((debug.d_pcm >=(n)),a,b,c)
-#define DB_SMT(a,b,c) DB_PR((debug.d_smtf),a,b,c)
-#define DB_SMTN(n,a,b,c) DB_PR((debug.d_smtf >=(n)),a,b,c)
-#define DB_SBA(a,b,c) DB_PR((debug.d_sba),a,b,c)
-#define DB_SBAN(n,a,b,c) DB_PR((debug.d_sba >=(n)),a,b,c)
-#define DB_ESS(a,b,c) DB_PR((debug.d_ess),a,b,c)
-#define DB_ESSN(n,a,b,c) DB_PR((debug.d_ess >=(n)),a,b,c)
-#endif
-
-#ifndef SS_NOT_DS
-#define SK_LOC_DECL(type,var) type var
-#else
-#define SK_LOC_DECL(type,var) static type var
-#endif
-/*
- * PHYs and PORTS
- * Note: Don't touch the definition of PA and PB. Those might be used
- * by some "for" loops.
- */
-#define PA 0
-#define PB 1
-#if defined(SUPERNET_3) || defined(CONC_II)
-/*
- * The port indices have to be different,
- * because the MAC output goes through the 2. PLC
- * Conc II: It has to be the first port in the row.
- */
-#define PS 0 /* Internal PLC which is the same as PA */
-#else
-#define PS 1
-#endif
-#define PM 2 /* PM .. PA+NUM_PHYS-1 */
-
-/*
- * PHY types - as in path descriptor 'fddiPHYType'
- */
-#define TA 0 /* A port */
-#define TB 1 /* B port */
-#define TS 2 /* S port */
-#define TM 3 /* M port */
-#define TNONE 4
-
-
-/*
- * indexes in MIB
- */
-#define INDEX_MAC 1
-#define INDEX_PATH 1
-#define INDEX_PORT 1
-
-
-/*
- * policies
- */
-#define POLICY_AA (1<<0) /* reject AA */
-#define POLICY_AB (1<<1) /* reject AB */
-#define POLICY_AS (1<<2) /* reject AS */
-#define POLICY_AM (1<<3) /* reject AM */
-#define POLICY_BA (1<<4) /* reject BA */
-#define POLICY_BB (1<<5) /* reject BB */
-#define POLICY_BS (1<<6) /* reject BS */
-#define POLICY_BM (1<<7) /* reject BM */
-#define POLICY_SA (1<<8) /* reject SA */
-#define POLICY_SB (1<<9) /* reject SB */
-#define POLICY_SS (1<<10) /* reject SS */
-#define POLICY_SM (1<<11) /* reject SM */
-#define POLICY_MA (1<<12) /* reject MA */
-#define POLICY_MB (1<<13) /* reject MB */
-#define POLICY_MS (1<<14) /* reject MS */
-#define POLICY_MM (1<<15) /* reject MM */
-
-/*
- * commands
- */
-
-/*
- * EVENTS
- * event classes
- */
-#define EVENT_ECM 1 /* event class ECM */
-#define EVENT_CFM 2 /* event class CFM */
-#define EVENT_RMT 3 /* event class RMT */
-#define EVENT_SMT 4 /* event class SMT */
-#define EVENT_PCM 5 /* event class PCM */
-#define EVENT_PCMA 5 /* event class PCMA */
-#define EVENT_PCMB 6 /* event class PCMB */
-
-/* WARNING :
- * EVENT_PCM* must be last in the above list
- * if more than two ports are used, EVENT_PCM .. EVENT_PCMA+NUM_PHYS-1
- * are used !
- */
-
-#define EV_TOKEN(class,event) (((u_long)(class)<<16L)|((u_long)(event)))
-#define EV_T_CLASS(token) ((int)((token)>>16)&0xffff)
-#define EV_T_EVENT(token) ((int)(token)&0xffff)
-
-/*
- * ECM events
- */
-#define EC_CONNECT 1 /* connect request */
-#define EC_DISCONNECT 2 /* disconnect request */
-#define EC_TRACE_PROP 3 /* trace propagation */
-#define EC_PATH_TEST 4 /* path test */
-#define EC_TIMEOUT_TD 5 /* timer TD_min */
-#define EC_TIMEOUT_TMAX 6 /* timer trace_max */
-#define EC_TIMEOUT_IMAX 7 /* timer I_max */
-#define EC_TIMEOUT_INMAX 8 /* timer IN_max */
-#define EC_TEST_DONE 9 /* path test done */
-
-/*
- * CFM events
- */
-#define CF_LOOP 1 /* cf_loop flag from PCM */
-#define CF_LOOP_A 1 /* cf_loop flag from PCM */
-#define CF_LOOP_B 2 /* cf_loop flag from PCM */
-#define CF_JOIN 3 /* cf_join flag from PCM */
-#define CF_JOIN_A 3 /* cf_join flag from PCM */
-#define CF_JOIN_B 4 /* cf_join flag from PCM */
-
-/*
- * PCM events
- */
-#define PC_START 1
-#define PC_STOP 2
-#define PC_LOOP 3
-#define PC_JOIN 4
-#define PC_SIGNAL 5
-#define PC_REJECT 6
-#define PC_MAINT 7
-#define PC_TRACE 8
-#define PC_PDR 9
-#define PC_ENABLE 10
-#define PC_DISABLE 11
-
-/*
- * must be ordered as in LineStateType
- */
-#define PC_QLS 12
-#define PC_ILS 13
-#define PC_MLS 14
-#define PC_HLS 15
-#define PC_LS_PDR 16
-#define PC_LS_NONE 17
-#define LS2MIB(x) ((x)-PC_QLS)
-#define MIB2LS(x) ((x)+PC_QLS)
-
-#define PC_TIMEOUT_TB_MAX 18 /* timer TB_max */
-#define PC_TIMEOUT_TB_MIN 19 /* timer TB_min */
-#define PC_TIMEOUT_C_MIN 20 /* timer C_Min */
-#define PC_TIMEOUT_T_OUT 21 /* timer T_Out */
-#define PC_TIMEOUT_TL_MIN 22 /* timer TL_Min */
-#define PC_TIMEOUT_T_NEXT 23 /* timer t_next[] */
-#define PC_TIMEOUT_LCT 24
-#define PC_NSE 25 /* NOISE hardware timer */
-#define PC_LEM 26 /* LEM done */
-
-/*
- * RMT events meaning from
- */
-#define RM_RING_OP 1 /* ring operational MAC */
-#define RM_RING_NON_OP 2 /* ring not operational MAC */
-#define RM_MY_BEACON 3 /* recvd my beacon MAC */
-#define RM_OTHER_BEACON 4 /* recvd other beacon MAC */
-#define RM_MY_CLAIM 5 /* recvd my claim MAC */
-#define RM_TRT_EXP 6 /* TRT exp MAC */
-#define RM_VALID_CLAIM 7 /* claim from dup addr MAC */
-#define RM_JOIN 8 /* signal rm_join CFM */
-#define RM_LOOP 9 /* signal rm_loop CFM */
-#define RM_DUP_ADDR 10 /* dup_addr_test hange SMT-NIF */
-#define RM_ENABLE_FLAG 11 /* enable flag */
-
-#define RM_TIMEOUT_NON_OP 12 /* timeout T_Non_OP */
-#define RM_TIMEOUT_T_STUCK 13 /* timeout T_Stuck */
-#define RM_TIMEOUT_ANNOUNCE 14 /* timeout T_Announce */
-#define RM_TIMEOUT_T_DIRECT 15 /* timeout T_Direct */
-#define RM_TIMEOUT_D_MAX 16 /* timeout D_Max */
-#define RM_TIMEOUT_POLL 17 /* claim/beacon poller */
-#define RM_TX_STATE_CHANGE 18 /* To restart timer for D_Max */
-
-/*
- * SMT events
- */
-#define SM_TIMER 1 /* timer */
-#define SM_FAST 2 /* smt_force_irq */
-
-/* PC modes */
-#define PM_NONE 0
-#define PM_PEER 1
-#define PM_TREE 2
-
-/*
- * PCM withhold codes
- * MIB PC-WithholdType ENUM
- */
-#define PC_WH_NONE 0 /* ok */
-#define PC_WH_M_M 1 /* M to M */
-#define PC_WH_OTHER 2 /* other incompatible phys */
-#define PC_WH_PATH 3 /* path not available */
-/*
- * LCT duration
- */
-#define LC_SHORT 1 /* short LCT */
-#define LC_MEDIUM 2 /* medium LCT */
-#define LC_LONG 3 /* long LCT */
-#define LC_EXTENDED 4 /* extended LCT */
-
-/*
- * path_test values
- */
-#define PT_NONE 0
-#define PT_TESTING 1 /* test is running */
-#define PT_PASSED 2 /* test passed */
-#define PT_FAILED 3 /* test failed */
-#define PT_PENDING 4 /* path test follows */
-#define PT_EXITING 5 /* disconnected while in trace/leave */
-
-/*
- * duplicate address test
- * MIB DupAddressTest ENUM
- */
-#define DA_NONE 0 /* */
-#define DA_PASSED 1 /* test passed */
-#define DA_FAILED 2 /* test failed */
-
-
-/*
- * optical bypass
- */
-#define BP_DEINSERT 0 /* disable bypass */
-#define BP_INSERT 1 /* enable bypass */
-
-/*
- * ODL enable/disable
- */
-#define PM_TRANSMIT_DISABLE 0 /* disable xmit */
-#define PM_TRANSMIT_ENABLE 1 /* enable xmit */
-
-/*
- * parameter for config_mux
- * note : number is index in config_endec table !
- */
-#define MUX_THRUA 0 /* through A */
-#define MUX_THRUB 1 /* through B */
-#define MUX_WRAPA 2 /* wrap A */
-#define MUX_WRAPB 3 /* wrap B */
-#define MUX_ISOLATE 4 /* isolated */
-#define MUX_WRAPS 5 /* SAS */
-
-/*
- * MAC control
- */
-#define MA_RESET 0
-#define MA_BEACON 1
-#define MA_CLAIM 2
-#define MA_DIRECTED 3 /* directed beacon */
-#define MA_TREQ 4 /* change T_Req */
-#define MA_OFFLINE 5 /* switch MAC to offline */
-
-
-/*
- * trace prop
- * bit map for trace propagation
- */
-#define ENTITY_MAC (NUMPHYS)
-#define ENTITY_PHY(p) (p)
-#define ENTITY_BIT(m) (1<<(m))
-
-/*
- * Resource Tag Types
- */
-#define PATH_ISO 0 /* isolated */
-#define PATH_PRIM 3 /* primary path */
-#define PATH_THRU 5 /* through path */
-
-#define RES_MAC 2 /* resource type MAC */
-#define RES_PORT 4 /* resource type PORT */
-
-
-/*
- * CFM state
- * oops: MUST MATCH CF-StateType in SMT7.2 !
- */
-#define SC0_ISOLATED 0 /* isolated */
-#define SC1_WRAP_A 5 /* wrap A (not used) */
-#define SC2_WRAP_B 6 /* wrap B (not used) */
-#define SC4_THRU_A 12 /* through A */
-#define SC5_THRU_B 7 /* through B (used in SMT 6.2) */
-#define SC7_WRAP_S 8 /* SAS (not used) */
-#define SC9_C_WRAP_A 9 /* c wrap A */
-#define SC10_C_WRAP_B 10 /* c wrap B */
-#define SC11_C_WRAP_S 11 /* c wrap S */
-
-/*
- * convert MIB time in units of 80nS to uS
- */
-#define MIB2US(t) ((t)/12)
-#define SEC2MIB(s) ((s)*12500000L)
-/*
- * SMT timer
- */
-struct smt_timer {
- struct smt_timer *tm_next ; /* linked list */
- struct s_smc *tm_smc ; /* pointer to context */
- u_long tm_delta ; /* delta time */
- u_long tm_token ; /* token value */
- u_short tm_active ; /* flag : active/inactive */
- u_short tm_pad ; /* pad field */
-} ;
-
-/*
- * communication structures
- */
-struct mac_parameter {
- u_long t_neg ; /* T_Neg parameter */
- u_long t_pri ; /* T_Pri register in MAC */
-} ;
-
-/*
- * MAC counters
- */
-struct mac_counter {
- u_long mac_nobuf_counter ; /* MAC SW counter: no buffer */
- u_long mac_r_restart_counter ; /* MAC SW counter: rx restarted */
-} ;
-
-/*
- * para struct context for SMT parameters
- */
-struct s_pcon {
- int pc_len ;
- int pc_err ;
- int pc_badset ;
- void *pc_p ;
-} ;
-
-/*
- * link error monitor
- */
-#define LEM_AVG 5
-struct lem_counter {
-#ifdef AM29K
- int lem_on ;
- u_long lem_errors ;
- u_long lem_symbols ;
- u_long lem_tsymbols ;
- int lem_s_count ;
- int lem_n_s ;
- int lem_values ;
- int lem_index ;
- int lem_avg_ber[LEM_AVG] ;
- int lem_sum ;
-#else
- u_short lem_float_ber ; /* 10E-nn bit error rate */
- u_long lem_errors ; /* accumulated error count */
- u_short lem_on ;
-#endif
-} ;
-
-#define NUMBITS 10
-
-#ifdef AMDPLC
-
-/*
- * PLC state table
- */
-struct s_plc {
- u_short p_state ; /* current state */
- u_short p_bits ; /* number of bits to send */
- u_short p_start ; /* first bit pos */
- u_short p_pad ; /* padding for alignment */
- u_long soft_err ; /* error counter */
- u_long parity_err ; /* error counter */
- u_long ebuf_err ; /* error counter */
- u_long ebuf_cont ; /* continuous error counter */
- u_long phyinv ; /* error counter */
- u_long vsym_ctr ; /* error counter */
- u_long mini_ctr ; /* error counter */
- u_long tpc_exp ; /* error counter */
- u_long np_err ; /* error counter */
- u_long b_pcs ; /* error counter */
- u_long b_tpc ; /* error counter */
- u_long b_tne ; /* error counter */
- u_long b_qls ; /* error counter */
- u_long b_ils ; /* error counter */
- u_long b_hls ; /* error counter */
-} ;
-#endif
-
-#ifdef PROTOTYP_INC
-#include "fddi/driver.pro"
-#else /* PROTOTYP_INC */
-/*
- * function prototypes
- */
-#include "h/mbuf.h" /* Type definitions for MBUFs */
-#include "h/smtstate.h" /* struct smt_state */
-
-void hwt_restart(struct s_smc *smc); /* hwt.c */
-SMbuf *smt_build_frame(struct s_smc *smc, int class, int type,
- int length); /* smt.c */
-SMbuf *smt_get_mbuf(struct s_smc *smc); /* drvsr.c */
-void *sm_to_para(struct s_smc *smc, struct smt_header *sm,
- int para); /* smt.c */
-
-#ifndef SK_UNUSED
-#define SK_UNUSED(var) (void)(var)
-#endif
-
-void queue_event(struct s_smc *smc, int class, int event);
-void ecm(struct s_smc *smc, int event);
-void ecm_init(struct s_smc *smc);
-void rmt(struct s_smc *smc, int event);
-void rmt_init(struct s_smc *smc);
-void pcm(struct s_smc *smc, const int np, int event);
-void pcm_init(struct s_smc *smc);
-void cfm(struct s_smc *smc, int event);
-void cfm_init(struct s_smc *smc);
-void smt_timer_start(struct s_smc *smc, struct smt_timer *timer, u_long time,
- u_long token);
-void smt_timer_stop(struct s_smc *smc, struct smt_timer *timer);
-void pcm_status_state(struct s_smc *smc, int np, int *type, int *state,
- int *remote, int *mac);
-void plc_config_mux(struct s_smc *smc, int mux);
-void sm_lem_evaluate(struct s_smc *smc);
-void mac_update_counter(struct s_smc *smc);
-void sm_pm_ls_latch(struct s_smc *smc, int phy, int on_off);
-void sm_ma_control(struct s_smc *smc, int mode);
-void sm_mac_check_beacon_claim(struct s_smc *smc);
-void config_mux(struct s_smc *smc, int mux);
-void smt_agent_init(struct s_smc *smc);
-void smt_timer_init(struct s_smc *smc);
-void smt_received_pack(struct s_smc *smc, SMbuf *mb, int fs);
-void smt_add_para(struct s_smc *smc, struct s_pcon *pcon, u_short para,
- int index, int local);
-void smt_swap_para(struct smt_header *sm, int len, int direction);
-void ev_init(struct s_smc *smc);
-void hwt_init(struct s_smc *smc);
-u_long hwt_read(struct s_smc *smc);
-void hwt_stop(struct s_smc *smc);
-void hwt_start(struct s_smc *smc, u_long time);
-void smt_send_mbuf(struct s_smc *smc, SMbuf *mb, int fc);
-void smt_free_mbuf(struct s_smc *smc, SMbuf *mb);
-void sm_pm_bypass_req(struct s_smc *smc, int mode);
-void rmt_indication(struct s_smc *smc, int i);
-void cfm_state_change(struct s_smc *smc, int c_state);
-
-#if defined(DEBUG) || !defined(NO_SMT_PANIC)
-void smt_panic(struct s_smc *smc, char *text);
-#else
-#define smt_panic(smc,text)
-#endif /* DEBUG || !NO_SMT_PANIC */
-
-void smt_stat_counter(struct s_smc *smc, int stat);
-void smt_timer_poll(struct s_smc *smc);
-u_long smt_get_time(void);
-u_long smt_get_tid(struct s_smc *smc);
-void smt_timer_done(struct s_smc *smc);
-void smt_fixup_mib(struct s_smc *smc);
-void smt_reset_defaults(struct s_smc *smc, int level);
-void smt_agent_task(struct s_smc *smc);
-int smt_check_para(struct s_smc *smc, struct smt_header *sm,
- const u_short list[]);
-void driver_get_bia(struct s_smc *smc, struct fddi_addr *bia_addr);
-
-#ifdef SUPERNET_3
-void drv_reset_indication(struct s_smc *smc);
-#endif /* SUPERNET_3 */
-
-void smt_start_watchdog(struct s_smc *smc);
-void smt_event(struct s_smc *smc, int event);
-void timer_event(struct s_smc *smc, u_long token);
-void ev_dispatcher(struct s_smc *smc);
-void pcm_get_state(struct s_smc *smc, struct smt_state *state);
-void ecm_state_change(struct s_smc *smc, int e_state);
-int sm_pm_bypass_present(struct s_smc *smc);
-void pcm_state_change(struct s_smc *smc, int plc, int p_state);
-void rmt_state_change(struct s_smc *smc, int r_state);
-int sm_pm_get_ls(struct s_smc *smc, int phy);
-int pcm_get_s_port(struct s_smc *smc);
-int pcm_rooted_station(struct s_smc *smc);
-int cfm_get_mac_input(struct s_smc *smc);
-int cfm_get_mac_output(struct s_smc *smc);
-int cem_build_path(struct s_smc *smc, char *to, int path_index);
-int sm_mac_get_tx_state(struct s_smc *smc);
-char *get_pcmstate(struct s_smc *smc, int np);
-int smt_action(struct s_smc *smc, int class, int code, int index);
-u_short smt_online(struct s_smc *smc, int on);
-void smt_force_irq(struct s_smc *smc);
-void smt_pmf_received_pack(struct s_smc *smc, SMbuf *mb, int local);
-void smt_send_frame(struct s_smc *smc, SMbuf *mb, int fc, int local);
-void smt_set_timestamp(struct s_smc *smc, u_char *p);
-void mac_set_rx_mode(struct s_smc *smc, int mode);
-int mac_add_multicast(struct s_smc *smc, struct fddi_addr *addr, int can);
-void mac_update_multicast(struct s_smc *smc);
-void mac_clear_multicast(struct s_smc *smc);
-void set_formac_tsync(struct s_smc *smc, long sync_bw);
-void formac_reinit_tx(struct s_smc *smc);
-void formac_tx_restart(struct s_smc *smc);
-void process_receive(struct s_smc *smc);
-void init_driver_fplus(struct s_smc *smc);
-void rtm_irq(struct s_smc *smc);
-void rtm_set_timer(struct s_smc *smc);
-void ring_status_indication(struct s_smc *smc, u_long status);
-void llc_recover_tx(struct s_smc *smc);
-void llc_restart_tx(struct s_smc *smc);
-void plc_clear_irq(struct s_smc *smc, int p);
-void plc_irq(struct s_smc *smc, int np, unsigned int cmd);
-int smt_set_mac_opvalues(struct s_smc *smc);
-
-#ifdef TAG_MODE
-void mac_do_pci_fix(struct s_smc *smc);
-void mac_drv_clear_tx_queue(struct s_smc *smc);
-void mac_drv_repair_descr(struct s_smc *smc);
-u_long hwt_quick_read(struct s_smc *smc);
-void hwt_wait_time(struct s_smc *smc, u_long start, long duration);
-#endif
-
-#ifdef SMT_PNMI
-int pnmi_init(struct s_smc* smc);
-int pnmi_process_ndis_id(struct s_smc *smc, u_long ndis_oid, void *buf, int len,
- int *BytesAccessed, int *BytesNeeded, u_char action);
-#endif
-
-#ifdef SBA
-#ifndef _H2INC
-void sba();
-#endif
-void sba_raf_received_pack();
-void sba_timer_poll();
-void smt_init_sba();
-#endif
-
-#ifdef ESS
-int ess_raf_received_pack(struct s_smc *smc, SMbuf *mb, struct smt_header *sm,
- int fs);
-void ess_timer_poll(struct s_smc *smc);
-void ess_para_change(struct s_smc *smc);
-#endif
-
-#ifndef BOOT
-void smt_init_evc(struct s_smc *smc);
-void smt_srf_event(struct s_smc *smc, int code, int index, int cond);
-#else
-#define smt_init_evc(smc)
-#define smt_srf_event(smc,code,index,cond)
-#endif
-
-#ifndef SMT_REAL_TOKEN_CT
-void smt_emulate_token_ct(struct s_smc *smc, int mac_index);
-#endif
-
-#if defined(DEBUG) && !defined(BOOT)
-void dump_smt(struct s_smc *smc, struct smt_header *sm, char *text);
-#else
-#define dump_smt(smc,sm,text)
-#endif
-
-#ifdef DEBUG
-char* addr_to_string(struct fddi_addr *addr);
-void dump_hex(char *p, int len);
-#endif
-
-#endif /* PROTOTYP_INC */
-
-/* PNMI default defines */
-#ifndef PNMI_INIT
-#define PNMI_INIT(smc) /* Nothing */
-#endif
-#ifndef PNMI_GET_ID
-#define PNMI_GET_ID( smc, ndis_oid, buf, len, BytesWritten, BytesNeeded ) \
- ( 1 ? (-1) : (-1) )
-#endif
-#ifndef PNMI_SET_ID
-#define PNMI_SET_ID( smc, ndis_oid, buf, len, BytesRead, BytesNeeded, \
- set_type) ( 1 ? (-1) : (-1) )
-#endif
-
-/*
- * SMT_PANIC defines
- */
-#ifndef SMT_PANIC
-#define SMT_PANIC(smc,nr,msg) smt_panic (smc, msg)
-#endif
-
-#ifndef SMT_ERR_LOG
-#define SMT_ERR_LOG(smc,nr,msg) SMT_PANIC (smc, nr, msg)
-#endif
-
-#ifndef SMT_EBASE
-#define SMT_EBASE 100
-#endif
-
-#define SMT_E0100 SMT_EBASE + 0
-#define SMT_E0100_MSG "cfm FSM: invalid ce_type"
-#define SMT_E0101 SMT_EBASE + 1
-#define SMT_E0101_MSG "CEM: case ???"
-#define SMT_E0102 SMT_EBASE + 2
-#define SMT_E0102_MSG "CEM A: invalid state"
-#define SMT_E0103 SMT_EBASE + 3
-#define SMT_E0103_MSG "CEM B: invalid state"
-#define SMT_E0104 SMT_EBASE + 4
-#define SMT_E0104_MSG "CEM M: invalid state"
-#define SMT_E0105 SMT_EBASE + 5
-#define SMT_E0105_MSG "CEM S: invalid state"
-#define SMT_E0106 SMT_EBASE + 6
-#define SMT_E0106_MSG "CFM : invalid state"
-#define SMT_E0107 SMT_EBASE + 7
-#define SMT_E0107_MSG "ECM : invalid state"
-#define SMT_E0108 SMT_EBASE + 8
-#define SMT_E0108_MSG "prop_actions : NAC in DAS CFM"
-#define SMT_E0109 SMT_EBASE + 9
-#define SMT_E0109_MSG "ST2U.FM_SERRSF error in special frame"
-#define SMT_E0110 SMT_EBASE + 10
-#define SMT_E0110_MSG "ST2U.FM_SRFRCTOV recv. count. overflow"
-#define SMT_E0111 SMT_EBASE + 11
-#define SMT_E0111_MSG "ST2U.FM_SNFSLD NP & FORMAC simult. load"
-#define SMT_E0112 SMT_EBASE + 12
-#define SMT_E0112_MSG "ST2U.FM_SRCVFRM single-frame recv.-mode"
-#define SMT_E0113 SMT_EBASE + 13
-#define SMT_E0113_MSG "FPLUS: Buffer Memory Error"
-#define SMT_E0114 SMT_EBASE + 14
-#define SMT_E0114_MSG "ST2U.FM_SERRSF error in special frame"
-#define SMT_E0115 SMT_EBASE + 15
-#define SMT_E0115_MSG "ST3L: parity error in receive queue 2"
-#define SMT_E0116 SMT_EBASE + 16
-#define SMT_E0116_MSG "ST3L: parity error in receive queue 1"
-#define SMT_E0117 SMT_EBASE + 17
-#define SMT_E0117_MSG "E_SMT_001: RxD count for receive queue 1 = 0"
-#define SMT_E0118 SMT_EBASE + 18
-#define SMT_E0118_MSG "PCM : invalid state"
-#define SMT_E0119 SMT_EBASE + 19
-#define SMT_E0119_MSG "smt_add_para"
-#define SMT_E0120 SMT_EBASE + 20
-#define SMT_E0120_MSG "smt_set_para"
-#define SMT_E0121 SMT_EBASE + 21
-#define SMT_E0121_MSG "invalid event in dispatcher"
-#define SMT_E0122 SMT_EBASE + 22
-#define SMT_E0122_MSG "RMT : invalid state"
-#define SMT_E0123 SMT_EBASE + 23
-#define SMT_E0123_MSG "SBA: state machine has invalid state"
-#define SMT_E0124 SMT_EBASE + 24
-#define SMT_E0124_MSG "sba_free_session() called with NULL pointer"
-#define SMT_E0125 SMT_EBASE + 25
-#define SMT_E0125_MSG "SBA : invalid session pointer"
-#define SMT_E0126 SMT_EBASE + 26
-#define SMT_E0126_MSG "smt_free_mbuf() called with NULL pointer\n"
-#define SMT_E0127 SMT_EBASE + 27
-#define SMT_E0127_MSG "sizeof evcs"
-#define SMT_E0128 SMT_EBASE + 28
-#define SMT_E0128_MSG "evc->evc_cond_state = 0"
-#define SMT_E0129 SMT_EBASE + 29
-#define SMT_E0129_MSG "evc->evc_multiple = 0"
-#define SMT_E0130 SMT_EBASE + 30
-#define SMT_E0130_MSG write_mdr_warning
-#define SMT_E0131 SMT_EBASE + 31
-#define SMT_E0131_MSG cam_warning
-#define SMT_E0132 SMT_EBASE + 32
-#define SMT_E0132_MSG "ST1L.FM_SPCEPDx parity/coding error"
-#define SMT_E0133 SMT_EBASE + 33
-#define SMT_E0133_MSG "ST1L.FM_STBURx tx buffer underrun"
-#define SMT_E0134 SMT_EBASE + 34
-#define SMT_E0134_MSG "ST1L.FM_SPCEPDx parity error"
-#define SMT_E0135 SMT_EBASE + 35
-#define SMT_E0135_MSG "RMT: duplicate MAC address detected. Ring left!"
-#define SMT_E0136 SMT_EBASE + 36
-#define SMT_E0136_MSG "Elasticity Buffer hang-up"
-#define SMT_E0137 SMT_EBASE + 37
-#define SMT_E0137_MSG "SMT: queue overrun"
-#define SMT_E0138 SMT_EBASE + 38
-#define SMT_E0138_MSG "RMT: duplicate MAC address detected. Ring NOT left!"
-#endif /* _CMTDEF_ */
diff --git a/drivers/net/skfp/h/fddi.h b/drivers/net/skfp/h/fddi.h
deleted file mode 100644
index c9a28a8a383b..000000000000
--- a/drivers/net/skfp/h/fddi.h
+++ /dev/null
@@ -1,69 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _FDDI_
-#define _FDDI_
-
-struct fddi_addr {
- u_char a[6] ;
-} ;
-
-#define GROUP_ADDR 0x80 /* MSB in a[0] */
-
-struct fddi_mac {
- struct fddi_addr mac_dest ;
- struct fddi_addr mac_source ;
- u_char mac_info[4478] ;
-} ;
-
-#define FDDI_MAC_SIZE (12)
-#define FDDI_RAW_MTU (4500-5) /* exl. Pr,SD, ED/FS */
-#define FDDI_RAW (4500)
-
-/*
- * FC values
- */
-#define FC_VOID 0x40 /* void frame */
-#define FC_TOKEN 0x80 /* token */
-#define FC_RES_TOKEN 0xc0 /* restricted token */
-#define FC_SMT_INFO 0x41 /* SMT Info frame */
-/*
- * FC_SMT_LAN_LOC && FC_SMT_LOC are SK specific !
- */
-#define FC_SMT_LAN_LOC 0x42 /* local SMT Info frame */
-#define FC_SMT_LOC 0x43 /* local SMT Info frame */
-#define FC_SMT_NSA 0x4f /* SMT NSA frame */
-#define FC_MAC 0xc0 /* MAC frame */
-#define FC_BEACON 0xc2 /* MAC beacon frame */
-#define FC_CLAIM 0xc3 /* MAC claim frame */
-#define FC_SYNC_LLC 0xd0 /* sync. LLC frame */
-#define FC_ASYNC_LLC 0x50 /* async. LLC frame */
-#define FC_SYNC_BIT 0x80 /* sync. bit in FC */
-
-#define FC_LLC_PRIOR 0x07 /* priority bits */
-
-#define BEACON_INFO 0 /* beacon type */
-#define DBEACON_INFO 1 /* beacon type DIRECTED */
-
-
-/*
- * indicator bits
- */
-#define C_INDICATOR (1<<0)
-#define A_INDICATOR (1<<1)
-#define E_INDICATOR (1<<2)
-#define I_INDICATOR (1<<6) /* SK specific */
-#define L_INDICATOR (1<<7) /* SK specific */
-
-#endif /* _FDDI_ */
diff --git a/drivers/net/skfp/h/fddimib.h b/drivers/net/skfp/h/fddimib.h
deleted file mode 100644
index d1acdc773950..000000000000
--- a/drivers/net/skfp/h/fddimib.h
+++ /dev/null
@@ -1,349 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * FDDI MIB
- */
-
-/*
- * typedefs
- */
-
-typedef u_long Counter ;
-typedef u_char TimeStamp[8] ;
-typedef struct fddi_addr LongAddr ;
-typedef u_long Timer_2 ;
-typedef u_long Timer ;
-typedef u_short ResId ;
-typedef u_short SMTEnum ;
-typedef u_char SMTFlag ;
-
-typedef struct {
- Counter count ;
- TimeStamp timestamp ;
-} SetCountType ;
-
-/*
- * bits for bit string "available_path"
- */
-#define MIB_PATH_P (1<<0)
-#define MIB_PATH_S (1<<1)
-#define MIB_PATH_L (1<<2)
-
-/*
- * bits for bit string PermittedPaths & RequestedPaths (SIZE(8))
- */
-#define MIB_P_PATH_LOCAL (1<<0)
-#define MIB_P_PATH_SEC_ALTER (1<<1)
-#define MIB_P_PATH_PRIM_ALTER (1<<2)
-#define MIB_P_PATH_CON_ALTER (1<<3)
-#define MIB_P_PATH_SEC_PREFER (1<<4)
-#define MIB_P_PATH_PRIM_PREFER (1<<5)
-#define MIB_P_PATH_CON_PREFER (1<<6)
-#define MIB_P_PATH_THRU (1<<7)
-
-/*
- * enum current path
- */
-#define MIB_PATH_ISOLATED 0
-#define MIB_PATH_LOCAL 1
-#define MIB_PATH_SECONDARY 2
-#define MIB_PATH_PRIMARY 3
-#define MIB_PATH_CONCATENATED 4
-#define MIB_PATH_THRU 5
-
-/*
- * enum PMDClass
- */
-#define MIB_PMDCLASS_MULTI 0
-#define MIB_PMDCLASS_SINGLE1 1
-#define MIB_PMDCLASS_SINGLE2 2
-#define MIB_PMDCLASS_SONET 3
-#define MIB_PMDCLASS_LCF 4
-#define MIB_PMDCLASS_TP 5
-#define MIB_PMDCLASS_UNKNOWN 6
-#define MIB_PMDCLASS_UNSPEC 7
-
-/*
- * enum SMTStationStatus
- */
-#define MIB_SMT_STASTA_CON 0
-#define MIB_SMT_STASTA_SEPA 1
-#define MIB_SMT_STASTA_THRU 2
-
-
-struct fddi_mib {
- /*
- * private
- */
- u_char fddiPRPMFPasswd[8] ;
- struct smt_sid fddiPRPMFStation ;
-
-#ifdef ESS
- /*
- * private variables for static allocation of the
- * End Station Support
- */
- u_long fddiESSPayload ; /* payload for static alloc */
- u_long fddiESSOverhead ; /* frame ov for static alloc */
- u_long fddiESSMaxTNeg ; /* maximum of T-NEG */
- u_long fddiESSMinSegmentSize ; /* min size of the sync frames */
- u_long fddiESSCategory ; /* category for the Alloc req */
- short fddiESSSynchTxMode ; /* send all LLC frames as sync */
-#endif /* ESS */
-#ifdef SBA
- /*
- * private variables for the Synchronous Bandwidth Allocator
- */
- char fddiSBACommand ; /* holds the parsed SBA cmd */
- u_char fddiSBAAvailable ; /* SBA allocatable value */
-#endif /* SBA */
-
- /*
- * SMT standard mib
- */
- struct smt_sid fddiSMTStationId ;
- u_short fddiSMTOpVersionId ;
- u_short fddiSMTHiVersionId ;
- u_short fddiSMTLoVersionId ;
- u_char fddiSMTManufacturerData[32] ;
- u_char fddiSMTUserData[32] ;
- u_short fddiSMTMIBVersionId ;
-
- /*
- * ConfigGrp
- */
- u_char fddiSMTMac_Ct ;
- u_char fddiSMTNonMaster_Ct ;
- u_char fddiSMTMaster_Ct ;
- u_char fddiSMTAvailablePaths ;
- u_short fddiSMTConfigCapabilities ;
- u_short fddiSMTConfigPolicy ;
- u_short fddiSMTConnectionPolicy ;
- u_short fddiSMTTT_Notify ;
- u_char fddiSMTStatRptPolicy ;
- u_long fddiSMTTrace_MaxExpiration ;
- u_short fddiSMTPORTIndexes[NUMPHYS] ;
- u_short fddiSMTMACIndexes ;
- u_char fddiSMTBypassPresent ;
-
- /*
- * StatusGrp
- */
- SMTEnum fddiSMTECMState ;
- SMTEnum fddiSMTCF_State ;
- SMTEnum fddiSMTStationStatus ;
- u_char fddiSMTRemoteDisconnectFlag ;
- u_char fddiSMTPeerWrapFlag ;
-
- /*
- * MIBOperationGrp
- */
- TimeStamp fddiSMTTimeStamp ;
- TimeStamp fddiSMTTransitionTimeStamp ;
- SetCountType fddiSMTSetCount ;
- struct smt_sid fddiSMTLastSetStationId ;
-
- struct fddi_mib_m {
- u_short fddiMACFrameStatusFunctions ;
- Timer_2 fddiMACT_MaxCapabilitiy ;
- Timer_2 fddiMACTVXCapabilitiy ;
-
- /* ConfigGrp */
- u_char fddiMACMultiple_N ; /* private */
- u_char fddiMACMultiple_P ; /* private */
- u_char fddiMACDuplicateAddressCond ;/* private */
- u_char fddiMACAvailablePaths ;
- u_short fddiMACCurrentPath ;
- LongAddr fddiMACUpstreamNbr ;
- LongAddr fddiMACDownstreamNbr ;
- LongAddr fddiMACOldUpstreamNbr ;
- LongAddr fddiMACOldDownstreamNbr ;
- SMTEnum fddiMACDupAddressTest ;
- u_short fddiMACRequestedPaths ;
- SMTEnum fddiMACDownstreamPORTType ;
- ResId fddiMACIndex ;
-
- /* AddressGrp */
- LongAddr fddiMACSMTAddress ;
-
- /* OperationGrp */
- Timer_2 fddiMACT_Min ; /* private */
- Timer_2 fddiMACT_ReqMIB ;
- Timer_2 fddiMACT_Req ; /* private */
- Timer_2 fddiMACT_Neg ;
- Timer_2 fddiMACT_MaxMIB ;
- Timer_2 fddiMACT_Max ; /* private */
- Timer_2 fddiMACTvxValueMIB ;
- Timer_2 fddiMACTvxValue ; /* private */
- Timer_2 fddiMACT_Pri0 ;
- Timer_2 fddiMACT_Pri1 ;
- Timer_2 fddiMACT_Pri2 ;
- Timer_2 fddiMACT_Pri3 ;
- Timer_2 fddiMACT_Pri4 ;
- Timer_2 fddiMACT_Pri5 ;
- Timer_2 fddiMACT_Pri6 ;
-
- /* CountersGrp */
- Counter fddiMACFrame_Ct ;
- Counter fddiMACCopied_Ct ;
- Counter fddiMACTransmit_Ct ;
- Counter fddiMACToken_Ct ;
- Counter fddiMACError_Ct ;
- Counter fddiMACLost_Ct ;
- Counter fddiMACTvxExpired_Ct ;
- Counter fddiMACNotCopied_Ct ;
- Counter fddiMACRingOp_Ct ;
-
- Counter fddiMACSMTCopied_Ct ; /* private */
- Counter fddiMACSMTTransmit_Ct ; /* private */
-
- /* private for delta ratio */
- Counter fddiMACOld_Frame_Ct ;
- Counter fddiMACOld_Copied_Ct ;
- Counter fddiMACOld_Error_Ct ;
- Counter fddiMACOld_Lost_Ct ;
- Counter fddiMACOld_NotCopied_Ct ;
-
- /* FrameErrorConditionGrp */
- u_short fddiMACFrameErrorThreshold ;
- u_short fddiMACFrameErrorRatio ;
-
- /* NotCopiedConditionGrp */
- u_short fddiMACNotCopiedThreshold ;
- u_short fddiMACNotCopiedRatio ;
-
- /* StatusGrp */
- SMTEnum fddiMACRMTState ;
- SMTFlag fddiMACDA_Flag ;
- SMTFlag fddiMACUNDA_Flag ;
- SMTFlag fddiMACFrameErrorFlag ;
- SMTFlag fddiMACNotCopiedFlag ;
- SMTFlag fddiMACMA_UnitdataAvailable ;
- SMTFlag fddiMACHardwarePresent ;
- SMTFlag fddiMACMA_UnitdataEnable ;
-
- } m[NUMMACS] ;
-#define MAC0 0
-
- struct fddi_mib_a {
- ResId fddiPATHIndex ;
- u_long fddiPATHSbaPayload ;
- u_long fddiPATHSbaOverhead ;
- /* fddiPATHConfiguration is built on demand */
- /* u_long fddiPATHConfiguration ; */
- Timer fddiPATHT_Rmode ;
- u_long fddiPATHSbaAvailable ;
- Timer_2 fddiPATHTVXLowerBound ;
- Timer_2 fddiPATHT_MaxLowerBound ;
- Timer_2 fddiPATHMaxT_Req ;
- } a[NUMPATHS] ;
-#define PATH0 0
-
- struct fddi_mib_p {
- /* ConfigGrp */
- SMTEnum fddiPORTMy_Type ;
- SMTEnum fddiPORTNeighborType ;
- u_char fddiPORTConnectionPolicies ;
- struct {
- u_char T_val ;
- u_char R_val ;
- } fddiPORTMacIndicated ;
- SMTEnum fddiPORTCurrentPath ;
- /* must be 4: is 32 bit in SMT format
- * indices :
- * 1 none
- * 2 tree
- * 3 peer
- */
- u_char fddiPORTRequestedPaths[4] ;
- u_short fddiPORTMACPlacement ;
- u_char fddiPORTAvailablePaths ;
- u_char fddiPORTConnectionCapabilities ;
- SMTEnum fddiPORTPMDClass ;
- ResId fddiPORTIndex ;
-
- /* OperationGrp */
- SMTEnum fddiPORTMaint_LS ;
- SMTEnum fddiPORTPC_LS ;
- u_char fddiPORTBS_Flag ;
-
- /* ErrorCtrsGrp */
- Counter fddiPORTLCTFail_Ct ;
- Counter fddiPORTEBError_Ct ;
- Counter fddiPORTOldEBError_Ct ;
-
- /* LerGrp */
- Counter fddiPORTLem_Reject_Ct ;
- Counter fddiPORTLem_Ct ;
- u_char fddiPORTLer_Estimate ;
- u_char fddiPORTLer_Cutoff ;
- u_char fddiPORTLer_Alarm ;
-
- /* StatusGrp */
- SMTEnum fddiPORTConnectState ;
- SMTEnum fddiPORTPCMState ; /* real value */
- SMTEnum fddiPORTPCMStateX ; /* value for MIB */
- SMTEnum fddiPORTPC_Withhold ;
- SMTFlag fddiPORTHardwarePresent ;
- u_char fddiPORTLerFlag ;
-
- u_char fddiPORTMultiple_U ; /* private */
- u_char fddiPORTMultiple_P ; /* private */
- u_char fddiPORTEB_Condition ; /* private */
- } p[NUMPHYS] ;
- struct {
- Counter fddiPRIVECF_Req_Rx ; /* ECF req received */
- Counter fddiPRIVECF_Reply_Rx ; /* ECF repl received */
- Counter fddiPRIVECF_Req_Tx ; /* ECF req transm */
- Counter fddiPRIVECF_Reply_Tx ; /* ECF repl transm */
- Counter fddiPRIVPMF_Get_Rx ; /* PMF Get rec */
- Counter fddiPRIVPMF_Set_Rx ; /* PMF Set rec */
- Counter fddiPRIVRDF_Rx ; /* RDF received */
- Counter fddiPRIVRDF_Tx ; /* RDF transmitted */
- } priv ;
-} ;
-
-/*
- * OIDs for statistics
- */
-#define SMT_OID_CF_STATE 1 /* fddiSMTCF_State */
-#define SMT_OID_PCM_STATE_A 2 /* fddiPORTPCMState port A */
-#define SMT_OID_PCM_STATE_B 17 /* fddiPORTPCMState port B */
-#define SMT_OID_RMT_STATE 3 /* fddiMACRMTState */
-#define SMT_OID_UNA 4 /* fddiMACUpstreamNbr */
-#define SMT_OID_DNA 5 /* fddiMACOldDownstreamNbr */
-#define SMT_OID_ERROR_CT 6 /* fddiMACError_Ct */
-#define SMT_OID_LOST_CT 7 /* fddiMACLost_Ct */
-#define SMT_OID_LEM_CT 8 /* fddiPORTLem_Ct */
-#define SMT_OID_LEM_CT_A 11 /* fddiPORTLem_Ct port A */
-#define SMT_OID_LEM_CT_B 12 /* fddiPORTLem_Ct port B */
-#define SMT_OID_LCT_FAIL_CT 9 /* fddiPORTLCTFail_Ct */
-#define SMT_OID_LCT_FAIL_CT_A 13 /* fddiPORTLCTFail_Ct port A */
-#define SMT_OID_LCT_FAIL_CT_B 14 /* fddiPORTLCTFail_Ct port B */
-#define SMT_OID_LEM_REJECT_CT 10 /* fddiPORTLem_Reject_Ct */
-#define SMT_OID_LEM_REJECT_CT_A 15 /* fddiPORTLem_Reject_Ct port A */
-#define SMT_OID_LEM_REJECT_CT_B 16 /* fddiPORTLem_Reject_Ct port B */
-
-/*
- * SK MIB
- */
-#define SMT_OID_ECF_REQ_RX 20 /* ECF requests received */
-#define SMT_OID_ECF_REPLY_RX 21 /* ECF replies received */
-#define SMT_OID_ECF_REQ_TX 22 /* ECF requests transmitted */
-#define SMT_OID_ECF_REPLY_TX 23 /* ECF replies transmitted */
-#define SMT_OID_PMF_GET_RX 24 /* PMF get requests received */
-#define SMT_OID_PMF_SET_RX 25 /* PMF set requests received */
-#define SMT_OID_RDF_RX 26 /* RDF received */
-#define SMT_OID_RDF_TX 27 /* RDF transmitted */
diff --git a/drivers/net/skfp/h/fplustm.h b/drivers/net/skfp/h/fplustm.h
deleted file mode 100644
index d43191ed938b..000000000000
--- a/drivers/net/skfp/h/fplustm.h
+++ /dev/null
@@ -1,274 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * AMD Fplus in tag mode data structs
- * defs for fplustm.c
- */
-
-#ifndef _FPLUS_
-#define _FPLUS_
-
-#ifndef HW_PTR
-#define HW_PTR void __iomem *
-#endif
-
-/*
- * fplus error statistic structure
- */
-struct err_st {
- u_long err_valid ; /* memory status valid */
- u_long err_abort ; /* memory status receive abort */
- u_long err_e_indicator ; /* error indicator */
- u_long err_crc ; /* error detected (CRC or length) */
- u_long err_llc_frame ; /* LLC frame */
- u_long err_mac_frame ; /* MAC frame */
- u_long err_smt_frame ; /* SMT frame */
- u_long err_imp_frame ; /* implementer frame */
- u_long err_no_buf ; /* no buffer available */
- u_long err_too_long ; /* longer than max. buffer */
- u_long err_bec_stat ; /* beacon state entered */
- u_long err_clm_stat ; /* claim state entered */
- u_long err_sifg_det ; /* short interframe gap detect */
- u_long err_phinv ; /* PHY invalid */
- u_long err_tkiss ; /* token issued */
- u_long err_tkerr ; /* token error */
-} ;
-
-/*
- * Transmit Descriptor struct
- */
-struct s_smt_fp_txd {
- __le32 txd_tbctrl ; /* transmit buffer control */
- __le32 txd_txdscr ; /* transmit frame status word */
- __le32 txd_tbadr ; /* physical tx buffer address */
- __le32 txd_ntdadr ; /* physical pointer to the next TxD */
-#ifdef ENA_64BIT_SUP
- __le32 txd_tbadr_hi ; /* physical tx buffer addr (high dword)*/
-#endif
- char far *txd_virt ; /* virtual pointer to the data frag */
- /* virt pointer to the next TxD */
- struct s_smt_fp_txd volatile far *txd_next ;
- struct s_txd_os txd_os ; /* OS - specific struct */
-} ;
-
-/*
- * Receive Descriptor struct
- */
-struct s_smt_fp_rxd {
- __le32 rxd_rbctrl ; /* receive buffer control */
- __le32 rxd_rfsw ; /* receive frame status word */
- __le32 rxd_rbadr ; /* physical rx buffer address */
- __le32 rxd_nrdadr ; /* physical pointer to the next RxD */
-#ifdef ENA_64BIT_SUP
- __le32 rxd_rbadr_hi ; /* physical tx buffer addr (high dword)*/
-#endif
- char far *rxd_virt ; /* virtual pointer to the data frag */
- /* virt pointer to the next RxD */
- struct s_smt_fp_rxd volatile far *rxd_next ;
- struct s_rxd_os rxd_os ; /* OS - specific struct */
-} ;
-
-/*
- * Descriptor Union Definition
- */
-union s_fp_descr {
- struct s_smt_fp_txd t ; /* pointer to the TxD */
- struct s_smt_fp_rxd r ; /* pointer to the RxD */
-} ;
-
-/*
- * TxD Ring Control struct
- */
-struct s_smt_tx_queue {
- struct s_smt_fp_txd volatile *tx_curr_put ; /* next free TxD */
- struct s_smt_fp_txd volatile *tx_prev_put ; /* shadow put pointer */
- struct s_smt_fp_txd volatile *tx_curr_get ; /* next TxD to release*/
- u_short tx_free ; /* count of free TxD's */
- u_short tx_used ; /* count of used TxD's */
- HW_PTR tx_bmu_ctl ; /* BMU addr for tx start */
- HW_PTR tx_bmu_dsc ; /* BMU addr for curr dsc. */
-} ;
-
-/*
- * RxD Ring Control struct
- */
-struct s_smt_rx_queue {
- struct s_smt_fp_rxd volatile *rx_curr_put ; /* next RxD to queue into */
- struct s_smt_fp_rxd volatile *rx_prev_put ; /* shadow put pointer */
- struct s_smt_fp_rxd volatile *rx_curr_get ; /* next RxD to fill */
- u_short rx_free ; /* count of free RxD's */
- u_short rx_used ; /* count of used RxD's */
- HW_PTR rx_bmu_ctl ; /* BMU addr for rx start */
- HW_PTR rx_bmu_dsc ; /* BMU addr for curr dsc. */
-} ;
-
-#define VOID_FRAME_OFF 0x00
-#define CLAIM_FRAME_OFF 0x08
-#define BEACON_FRAME_OFF 0x10
-#define DBEACON_FRAME_OFF 0x18
-#define RX_FIFO_OFF 0x21 /* to get a prime number for */
- /* the RX_FIFO_SPACE */
-
-#define RBC_MEM_SIZE 0x8000
-#define SEND_ASYNC_AS_SYNC 0x1
-#define SYNC_TRAFFIC_ON 0x2
-
-/* big FIFO memory */
-#define RX_FIFO_SPACE 0x4000 - RX_FIFO_OFF
-#define TX_FIFO_SPACE 0x4000
-
-#define TX_SMALL_FIFO 0x0900
-#define TX_MEDIUM_FIFO TX_FIFO_SPACE / 2
-#define TX_LARGE_FIFO TX_FIFO_SPACE - TX_SMALL_FIFO
-
-#define RX_SMALL_FIFO 0x0900
-#define RX_LARGE_FIFO RX_FIFO_SPACE - RX_SMALL_FIFO
-
-struct s_smt_fifo_conf {
- u_short rbc_ram_start ; /* FIFO start address */
- u_short rbc_ram_end ; /* FIFO size */
- u_short rx1_fifo_start ; /* rx queue start address */
- u_short rx1_fifo_size ; /* rx queue size */
- u_short rx2_fifo_start ; /* rx queue start address */
- u_short rx2_fifo_size ; /* rx queue size */
- u_short tx_s_start ; /* sync queue start address */
- u_short tx_s_size ; /* sync queue size */
- u_short tx_a0_start ; /* async queue A0 start address */
- u_short tx_a0_size ; /* async queue A0 size */
- u_short fifo_config_mode ; /* FIFO configuration mode */
-} ;
-
-#define FM_ADDRX (FM_ADDET|FM_EXGPA0|FM_EXGPA1)
-
-struct s_smt_fp {
- u_short mdr2init ; /* mode register 2 init value */
- u_short mdr3init ; /* mode register 3 init value */
- u_short frselreg_init ; /* frame selection register init val */
- u_short rx_mode ; /* address mode broad/multi/promisc */
- u_short nsa_mode ;
- u_short rx_prom ;
- u_short exgpa ;
-
- struct err_st err_stats ; /* error statistics */
-
- /*
- * MAC buffers
- */
- struct fddi_mac_sf { /* special frame build buffer */
- u_char mac_fc ;
- struct fddi_addr mac_dest ;
- struct fddi_addr mac_source ;
- u_char mac_info[0x20] ;
- } mac_sfb ;
-
-
- /*
- * queues
- */
-#define QUEUE_S 0
-#define QUEUE_A0 1
-#define QUEUE_R1 0
-#define QUEUE_R2 1
-#define USED_QUEUES 2
-
- /*
- * queue pointers; points to the queue dependent variables
- */
- struct s_smt_tx_queue *tx[USED_QUEUES] ;
- struct s_smt_rx_queue *rx[USED_QUEUES] ;
-
- /*
- * queue dependent variables
- */
- struct s_smt_tx_queue tx_q[USED_QUEUES] ;
- struct s_smt_rx_queue rx_q[USED_QUEUES] ;
-
- /*
- * FIFO configuration struct
- */
- struct s_smt_fifo_conf fifo ;
-
- /* last formac status */
- u_short s2u ;
- u_short s2l ;
-
- /* calculated FORMAC+ reg.addr. */
- HW_PTR fm_st1u ;
- HW_PTR fm_st1l ;
- HW_PTR fm_st2u ;
- HW_PTR fm_st2l ;
- HW_PTR fm_st3u ;
- HW_PTR fm_st3l ;
-
-
- /*
- * multicast table
- */
-#define FPMAX_MULTICAST 32
-#define SMT_MAX_MULTI 4
- struct {
- struct s_fpmc {
- struct fddi_addr a ; /* mc address */
- u_char n ; /* usage counter */
- u_char perm ; /* flag: permanent */
- } table[FPMAX_MULTICAST] ;
- } mc ;
- struct fddi_addr group_addr ;
- u_long func_addr ; /* functional address */
- int smt_slots_used ; /* count of table entries for the SMT */
- int os_slots_used ; /* count of table entries */
- /* used by the os-specific module */
-} ;
-
-/*
- * modes for mac_set_rx_mode()
- */
-#define RX_ENABLE_ALLMULTI 1 /* enable all multicasts */
-#define RX_DISABLE_ALLMULTI 2 /* disable "enable all multicasts" */
-#define RX_ENABLE_PROMISC 3 /* enable promiscuous */
-#define RX_DISABLE_PROMISC 4 /* disable promiscuous */
-#define RX_ENABLE_NSA 5 /* enable reception of NSA frames */
-#define RX_DISABLE_NSA 6 /* disable reception of NSA frames */
-
-
-/*
- * support for byte reversal in AIX
- * (descriptors and pointers must be byte reversed in memory
- * CPU is big endian; M-Channel is little endian)
- */
-#ifdef AIX
-#define MDR_REV
-#define AIX_REVERSE(x) ((((x)<<24L)&0xff000000L) + \
- (((x)<< 8L)&0x00ff0000L) + \
- (((x)>> 8L)&0x0000ff00L) + \
- (((x)>>24L)&0x000000ffL))
-#else
-#ifndef AIX_REVERSE
-#define AIX_REVERSE(x) (x)
-#endif
-#endif
-
-#ifdef MDR_REV
-#define MDR_REVERSE(x) ((((x)<<24L)&0xff000000L) + \
- (((x)<< 8L)&0x00ff0000L) + \
- (((x)>> 8L)&0x0000ff00L) + \
- (((x)>>24L)&0x000000ffL))
-#else
-#ifndef MDR_REVERSE
-#define MDR_REVERSE(x) (x)
-#endif
-#endif
-
-#endif
diff --git a/drivers/net/skfp/h/hwmtm.h b/drivers/net/skfp/h/hwmtm.h
deleted file mode 100644
index e1a7e5f683dc..000000000000
--- a/drivers/net/skfp/h/hwmtm.h
+++ /dev/null
@@ -1,399 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _HWM_
-#define _HWM_
-
-#include "h/mbuf.h"
-
-/*
- * MACRO for DMA synchronization:
- * The descriptor 'desc' is flushed for the device 'flag'.
- * Devices are the CPU (DDI_DMA_SYNC_FORCPU) and the
- * adapter (DDI_DMA_SYNC_FORDEV).
- *
- * 'desc' Pointer to a Rx or Tx descriptor.
- * 'flag' Flag for direction (view for CPU or DEVICE) that
- * should be synchronized.
- *
- * Empty macros and defines are specified here. The real macro
- * is os-specific and should be defined in osdef1st.h.
- */
-#ifndef DRV_BUF_FLUSH
-#define DRV_BUF_FLUSH(desc,flag)
-#define DDI_DMA_SYNC_FORCPU
-#define DDI_DMA_SYNC_FORDEV
-#endif
-
- /*
- * hardware modul dependent receive modes
- */
-#define RX_ENABLE_PASS_SMT 21
-#define RX_DISABLE_PASS_SMT 22
-#define RX_ENABLE_PASS_NSA 23
-#define RX_DISABLE_PASS_NSA 24
-#define RX_ENABLE_PASS_DB 25
-#define RX_DISABLE_PASS_DB 26
-#define RX_DISABLE_PASS_ALL 27
-#define RX_DISABLE_LLC_PROMISC 28
-#define RX_ENABLE_LLC_PROMISC 29
-
-
-#ifndef DMA_RD
-#define DMA_RD 1 /* memory -> hw */
-#endif
-#ifndef DMA_WR
-#define DMA_WR 2 /* hw -> memory */
-#endif
-#define SMT_BUF 0x80
-
- /*
- * bits of the frame status byte
- */
-#define EN_IRQ_EOF 0x02 /* get IRQ after end of frame transmission */
-#define LOC_TX 0x04 /* send frame to the local SMT */
-#define LAST_FRAG 0x08 /* last TxD of the frame */
-#define FIRST_FRAG 0x10 /* first TxD of the frame */
-#define LAN_TX 0x20 /* send frame to network if set */
-#define RING_DOWN 0x40 /* error: unable to send, ring down */
-#define OUT_OF_TXD 0x80 /* error: not enough TxDs available */
-
-
-#ifndef NULL
-#define NULL 0
-#endif
-
-#ifdef LITTLE_ENDIAN
-#define HWM_REVERSE(x) (x)
-#else
-#define HWM_REVERSE(x) ((((x)<<24L)&0xff000000L) + \
- (((x)<< 8L)&0x00ff0000L) + \
- (((x)>> 8L)&0x0000ff00L) + \
- (((x)>>24L)&0x000000ffL))
-#endif
-
-#define C_INDIC (1L<<25)
-#define A_INDIC (1L<<26)
-#define RD_FS_LOCAL 0x80
-
- /*
- * DEBUG FLAGS
- */
-#define DEBUG_SMTF 1
-#define DEBUG_SMT 2
-#define DEBUG_ECM 3
-#define DEBUG_RMT 4
-#define DEBUG_CFM 5
-#define DEBUG_PCM 6
-#define DEBUG_SBA 7
-#define DEBUG_ESS 8
-
-#define DB_HWM_RX 10
-#define DB_HWM_TX 11
-#define DB_HWM_GEN 12
-
-struct s_mbuf_pool {
-#ifndef MB_OUTSIDE_SMC
- SMbuf mb[MAX_MBUF] ; /* mbuf pool */
-#endif
- SMbuf *mb_start ; /* points to the first mb */
- SMbuf *mb_free ; /* free queue */
-} ;
-
-struct hwm_r {
- /*
- * hardware modul specific receive variables
- */
- u_int len ; /* length of the whole frame */
- char *mb_pos ; /* SMbuf receive position */
-} ;
-
-struct hw_modul {
- /*
- * All hardware modul specific variables
- */
- struct s_mbuf_pool mbuf_pool ;
- struct hwm_r r ;
-
- union s_fp_descr volatile *descr_p ; /* points to the desriptor area */
-
- u_short pass_SMT ; /* pass SMT frames */
- u_short pass_NSA ; /* pass all NSA frames */
- u_short pass_DB ; /* pass Direct Beacon Frames */
- u_short pass_llc_promisc ; /* pass all llc frames (default ON) */
-
- SMbuf *llc_rx_pipe ; /* points to the first queued llc fr */
- SMbuf *llc_rx_tail ; /* points to the last queued llc fr */
- int queued_rx_frames ; /* number of queued frames */
-
- SMbuf *txd_tx_pipe ; /* points to first mb in the txd ring */
- SMbuf *txd_tx_tail ; /* points to last mb in the txd ring */
- int queued_txd_mb ; /* number of SMT MBufs in txd ring */
-
- int rx_break ; /* rev. was breaked because ind. off */
- int leave_isr ; /* leave fddi_isr immedeately if set */
- int isr_flag ; /* set, when HWM is entered from isr */
- /*
- * variables for the current transmit frame
- */
- struct s_smt_tx_queue *tx_p ; /* pointer to the transmit queue */
- u_long tx_descr ; /* tx descriptor for FORMAC+ */
- int tx_len ; /* tx frame length */
- SMbuf *tx_mb ; /* SMT tx MBuf pointer */
- char *tx_data ; /* data pointer to the SMT tx Mbuf */
-
- int detec_count ; /* counter for out of RxD condition */
- u_long rx_len_error ; /* rx len FORMAC != sum of fragments */
-} ;
-
-
-/*
- * DEBUG structs and macros
- */
-
-#ifdef DEBUG
-struct os_debug {
- int hwm_rx ;
- int hwm_tx ;
- int hwm_gen ;
-} ;
-#endif
-
-#ifdef DEBUG
-#ifdef DEBUG_BRD
-#define DB_P smc->debug
-#else
-#define DB_P debug
-#endif
-
-#define DB_RX(a,b,c,lev) if (DB_P.d_os.hwm_rx >= (lev)) printf(a,b,c)
-#define DB_TX(a,b,c,lev) if (DB_P.d_os.hwm_tx >= (lev)) printf(a,b,c)
-#define DB_GEN(a,b,c,lev) if (DB_P.d_os.hwm_gen >= (lev)) printf(a,b,c)
-#else /* DEBUG */
-#define DB_RX(a,b,c,lev)
-#define DB_TX(a,b,c,lev)
-#define DB_GEN(a,b,c,lev)
-#endif /* DEBUG */
-
-#ifndef SK_BREAK
-#define SK_BREAK()
-#endif
-
-
-/*
- * HWM Macros
- */
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_TX_PHYS)
- * u_long HWM_GET_TX_PHYS(txd)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to read
- * the physical address of the specified TxD.
- *
- * para txd pointer to the TxD
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_TX_PHYS(txd) (u_long)AIX_REVERSE((txd)->txd_tbadr)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_TX_LEN)
- * int HWM_GET_TX_LEN(txd)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to read
- * the fragment length of the specified TxD
- *
- * para rxd pointer to the TxD
- *
- * return the length of the fragment in bytes
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_TX_LEN(txd) ((int)AIX_REVERSE((txd)->txd_tbctrl)& RD_LENGTH)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_TX_USED)
- * txd *HWM_GET_TX_USED(smc,queue)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to get the
- * number of used TxDs for the queue, specified by the index.
- *
- * para queue the number of the send queue: Can be specified by
- * QUEUE_A0, QUEUE_S or (frame_status & QUEUE_A0)
- *
- * return number of used TxDs for this send queue
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_TX_USED(smc,queue) (int) (smc)->hw.fp.tx_q[queue].tx_used
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_CURR_TXD)
- * txd *HWM_GET_CURR_TXD(smc,queue)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to get the
- * pointer to the TxD which points to the current queue put
- * position.
- *
- * para queue the number of the send queue: Can be specified by
- * QUEUE_A0, QUEUE_S or (frame_status & QUEUE_A0)
- *
- * return pointer to the current TxD
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_CURR_TXD(smc,queue) (struct s_smt_fp_txd volatile *)\
- (smc)->hw.fp.tx_q[queue].tx_curr_put
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_RX_FRAG_LEN)
- * int HWM_GET_RX_FRAG_LEN(rxd)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to read
- * the fragment length of the specified RxD
- *
- * para rxd pointer to the RxD
- *
- * return the length of the fragment in bytes
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_RX_FRAG_LEN(rxd) ((int)AIX_REVERSE((rxd)->rxd_rbctrl)& \
- RD_LENGTH)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_RX_PHYS)
- * u_long HWM_GET_RX_PHYS(rxd)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to read
- * the physical address of the specified RxD.
- *
- * para rxd pointer to the RxD
- *
- * return the RxD's physical pointer to the data fragment
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_RX_PHYS(rxd) (u_long)AIX_REVERSE((rxd)->rxd_rbadr)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_RX_USED)
- * int HWM_GET_RX_USED(smc)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to get
- * the count of used RXDs in receive queue 1.
- *
- * return the used RXD count of receive queue 1
- *
- * NOTE: Remember, because of an ASIC bug at least one RXD should be unused
- * in the descriptor ring !
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_RX_USED(smc) ((int)(smc)->hw.fp.rx_q[QUEUE_R1].rx_used)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_RX_FREE)
- * int HWM_GET_RX_FREE(smc)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to get
- * the rxd_free count of receive queue 1.
- *
- * return the rxd_free count of receive queue 1
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_RX_FREE(smc) ((int)(smc)->hw.fp.rx_q[QUEUE_R1].rx_free-1)
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_GET_CURR_RXD)
- * rxd *HWM_GET_CURR_RXD(smc)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro may be invoked by the OS-specific module to get the
- * pointer to the RxD which points to the current queue put
- * position.
- *
- * return pointer to the current RxD
- *
- * END_MANUAL_ENTRY
- */
-#define HWM_GET_CURR_RXD(smc) (struct s_smt_fp_rxd volatile *)\
- (smc)->hw.fp.rx_q[QUEUE_R1].rx_curr_put
-
-/*
- * BEGIN_MANUAL_ENTRY(HWM_RX_CHECK)
- * void HWM_RX_CHECK(smc,low_water)
- *
- * function MACRO (hardware module, hwmtm.h)
- * This macro is invoked by the OS-specific before it left the
- * function mac_drv_rx_complete. This macro calls mac_drv_fill_rxd
- * if the number of used RxDs is equal or lower than the
- * the given low water mark.
- *
- * para low_water low water mark of used RxD's
- *
- * END_MANUAL_ENTRY
- */
-#ifndef HWM_NO_FLOW_CTL
-#define HWM_RX_CHECK(smc,low_water) {\
- if ((low_water) >= (smc)->hw.fp.rx_q[QUEUE_R1].rx_used) {\
- mac_drv_fill_rxd(smc) ;\
- }\
-}
-#else
-#define HWM_RX_CHECK(smc,low_water) mac_drv_fill_rxd(smc)
-#endif
-
-#ifndef HWM_EBASE
-#define HWM_EBASE 500
-#endif
-
-#define HWM_E0001 HWM_EBASE + 1
-#define HWM_E0001_MSG "HWM: Wrong size of s_rxd_os struct"
-#define HWM_E0002 HWM_EBASE + 2
-#define HWM_E0002_MSG "HWM: Wrong size of s_txd_os struct"
-#define HWM_E0003 HWM_EBASE + 3
-#define HWM_E0003_MSG "HWM: smt_free_mbuf() called with NULL pointer"
-#define HWM_E0004 HWM_EBASE + 4
-#define HWM_E0004_MSG "HWM: Parity error rx queue 1"
-#define HWM_E0005 HWM_EBASE + 5
-#define HWM_E0005_MSG "HWM: Encoding error rx queue 1"
-#define HWM_E0006 HWM_EBASE + 6
-#define HWM_E0006_MSG "HWM: Encoding error async tx queue"
-#define HWM_E0007 HWM_EBASE + 7
-#define HWM_E0007_MSG "HWM: Encoding error sync tx queue"
-#define HWM_E0008 HWM_EBASE + 8
-#define HWM_E0008_MSG ""
-#define HWM_E0009 HWM_EBASE + 9
-#define HWM_E0009_MSG "HWM: Out of RxD condition detected"
-#define HWM_E0010 HWM_EBASE + 10
-#define HWM_E0010_MSG "HWM: A protocol layer has tried to send a frame with an invalid frame control"
-#define HWM_E0011 HWM_EBASE + 11
-#define HWM_E0011_MSG "HWM: mac_drv_clear_tx_queue was called although the hardware wasn't stopped"
-#define HWM_E0012 HWM_EBASE + 12
-#define HWM_E0012_MSG "HWM: mac_drv_clear_rx_queue was called although the hardware wasn't stopped"
-#define HWM_E0013 HWM_EBASE + 13
-#define HWM_E0013_MSG "HWM: mac_drv_repair_descr was called although the hardware wasn't stopped"
-
-#endif
diff --git a/drivers/net/skfp/h/mbuf.h b/drivers/net/skfp/h/mbuf.h
deleted file mode 100644
index f2aadcda9e7f..000000000000
--- a/drivers/net/skfp/h/mbuf.h
+++ /dev/null
@@ -1,50 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _MBUF_
-#define _MBUF_
-
-#define M_SIZE 4504
-
-#ifndef MAX_MBUF
-#define MAX_MBUF 4
-#endif
-
-#ifndef NO_STD_MBUF
-#define sm_next m_next
-#define sm_off m_off
-#define sm_len m_len
-#define sm_data m_data
-#define SMbuf Mbuf
-#define mtod smtod
-#define mtodoff smtodoff
-#endif
-
-struct s_mbuf {
- struct s_mbuf *sm_next ; /* low level linked list */
- short sm_off ; /* offset in m_data */
- u_int sm_len ; /* len of data */
-#ifdef PCI
- int sm_use_count ;
-#endif
- char sm_data[M_SIZE] ;
-} ;
-
-typedef struct s_mbuf SMbuf ;
-
-/* mbuf head, to typed data */
-#define smtod(x,t) ((t)((x)->sm_data + (x)->sm_off))
-#define smtodoff(x,t,o) ((t)((x)->sm_data + (o)))
-
-#endif /* _MBUF_ */
diff --git a/drivers/net/skfp/h/osdef1st.h b/drivers/net/skfp/h/osdef1st.h
deleted file mode 100644
index 763ca18cbea8..000000000000
--- a/drivers/net/skfp/h/osdef1st.h
+++ /dev/null
@@ -1,125 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * Operating system-dependent definitions that have to be defined
- * before any other header files are included.
- */
-
-// HWM (HardWare Module) Definitions
-// -----------------------
-
-#include <asm/byteorder.h>
-
-#ifdef __LITTLE_ENDIAN
-#define LITTLE_ENDIAN
-#else
-#define BIG_ENDIAN
-#endif
-
-// this is set in the makefile
-// #define PCI /* only PCI adapters supported by this driver */
-// #define MEM_MAPPED_IO /* use memory mapped I/O */
-
-
-#define USE_CAN_ADDR /* DA and SA in MAC header are canonical. */
-
-#define MB_OUTSIDE_SMC /* SMT Mbufs outside of smc struct. */
-
-// -----------------------
-
-
-// SMT Definitions
-// -----------------------
-#define SYNC /* allow synchronous frames */
-
-// #define SBA /* Synchronous Bandwidth Allocator support */
- /* not available as free source */
-
-#define ESS /* SBA End Station Support */
-
-#define SMT_PANIC(smc, nr, msg) printk(KERN_INFO "SMT PANIC: code: %d, msg: %s\n",nr,msg)
-
-
-#ifdef DEBUG
-#define printf(s,args...) printk(KERN_INFO s, ## args)
-#endif
-
-// #define HW_PTR u_long
-// -----------------------
-
-
-
-// HWM and OS-specific buffer definitions
-// -----------------------
-
-// default number of receive buffers.
-#define NUM_RECEIVE_BUFFERS 10
-
-// default number of transmit buffers.
-#define NUM_TRANSMIT_BUFFERS 10
-
-// Number of SMT buffers (Mbufs).
-#define NUM_SMT_BUF 4
-
-// Number of TXDs for asynchronous transmit queue.
-#define HWM_ASYNC_TXD_COUNT (NUM_TRANSMIT_BUFFERS + NUM_SMT_BUF)
-
-// Number of TXDs for synchronous transmit queue.
-#define HWM_SYNC_TXD_COUNT HWM_ASYNC_TXD_COUNT
-
-
-// Number of RXDs for receive queue #1.
-// Note: Workaround for ASIC Errata #7: One extra RXD is required.
-#if (NUM_RECEIVE_BUFFERS > 100)
-#define SMT_R1_RXD_COUNT (1 + 100)
-#else
-#define SMT_R1_RXD_COUNT (1 + NUM_RECEIVE_BUFFERS)
-#endif
-
-// Number of RXDs for receive queue #2.
-#define SMT_R2_RXD_COUNT 0 // Not used.
-// -----------------------
-
-
-
-/*
- * OS-specific part of the transmit/receive descriptor structure (TXD/RXD).
- *
- * Note: The size of these structures must follow this rule:
- *
- * sizeof(struct) + 2*sizeof(void*) == n * 16, n >= 1
- *
- * We use the dma_addr fields under Linux to keep track of the
- * DMA address of the packet data, for later pci_unmap_single. -DaveM
- */
-
-struct s_txd_os { // os-specific part of transmit descriptor
- struct sk_buff *skb;
- dma_addr_t dma_addr;
-} ;
-
-struct s_rxd_os { // os-specific part of receive descriptor
- struct sk_buff *skb;
- dma_addr_t dma_addr;
-} ;
-
-
-/*
- * So we do not need to make too many modifications to the generic driver
- * parts, we take advantage of the AIX byte swapping macro interface.
- */
-
-#define AIX_REVERSE(x) ((u32)le32_to_cpu((u32)(x)))
-#define MDR_REVERSE(x) ((u32)le32_to_cpu((u32)(x)))
diff --git a/drivers/net/skfp/h/sba.h b/drivers/net/skfp/h/sba.h
deleted file mode 100644
index 638cf0283bc4..000000000000
--- a/drivers/net/skfp/h/sba.h
+++ /dev/null
@@ -1,142 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * Synchronous Bandwidth Allocation (SBA) structs
- */
-
-#ifndef _SBA_
-#define _SBA_
-
-#include "h/mbuf.h"
-#include "h/sba_def.h"
-
-#ifdef SBA
-
-/* Timer Cell Template */
-struct timer_cell {
- struct timer_cell *next_ptr ;
- struct timer_cell *prev_ptr ;
- u_long start_time ;
- struct s_sba_node_vars *node_var ;
-} ;
-
-/*
- * Node variables
- */
-struct s_sba_node_vars {
- u_char change_resp_flag ;
- u_char report_resp_flag ;
- u_char change_req_flag ;
- u_char report_req_flag ;
- long change_amount ;
- long node_overhead ;
- long node_payload ;
- u_long node_status ;
- u_char deallocate_status ;
- u_char timer_state ;
- u_short report_cnt ;
- long lastrep_req_tranid ;
- struct fddi_addr mac_address ;
- struct s_sba_sessions *node_sessions ;
- struct timer_cell timer ;
-} ;
-
-/*
- * Session variables
- */
-struct s_sba_sessions {
- u_long deallocate_status ;
- long session_overhead ;
- u_long min_segment_size ;
- long session_payload ;
- u_long session_status ;
- u_long sba_category ;
- long lastchg_req_tranid ;
- u_short session_id ;
- u_char class ;
- u_char fddi2 ;
- u_long max_t_neg ;
- struct s_sba_sessions *next_session ;
-} ;
-
-struct s_sba {
-
- struct s_sba_node_vars node[MAX_NODES] ;
- struct s_sba_sessions session[MAX_SESSIONS] ;
-
- struct s_sba_sessions *free_session ; /* points to the first */
- /* free session */
-
- struct timer_cell *tail_timer ; /* points to the last timer cell */
-
- /*
- * variables for allocation actions
- */
- long total_payload ; /* Total Payload */
- long total_overhead ; /* Total Overhead */
- long sba_allocatable ; /* allocatable sync bandwidth */
-
- /*
- * RAF message receive parameters
- */
- long msg_path_index ; /* Path Type */
- long msg_sba_pl_req ; /* Payload Request */
- long msg_sba_ov_req ; /* Overhead Request */
- long msg_mib_pl ; /* Current Payload for this Path */
- long msg_mib_ov ; /* Current Overhead for this Path*/
- long msg_category ; /* Category of the Allocation */
- u_long msg_max_t_neg ; /* longest T_Neg acceptable */
- u_long msg_min_seg_siz ; /* minimum segement size */
- struct smt_header *sm ; /* points to the rec message */
- struct fddi_addr *msg_alloc_addr ; /* Allocation Address */
-
- /*
- * SBA variables
- */
- u_long sba_t_neg ; /* holds the last T_NEG */
- long sba_max_alloc ; /* the parsed value of SBAAvailable */
-
- /*
- * SBA state machine variables
- */
- short sba_next_state ; /* the next state of the SBA */
- char sba_command ; /* holds the execuded SBA cmd */
- u_char sba_available ; /* parsed value after possible check */
-} ;
-
-#endif /* SBA */
-
- /*
- * variables for the End Station Support
- */
-struct s_ess {
-
- /*
- * flags and counters
- */
- u_char sync_bw_available ; /* is set if sync bw is allocated */
- u_char local_sba_active ; /* set when a local sba is available */
- char raf_act_timer_poll ; /* activate the timer to send allc req */
- char timer_count ; /* counts every timer function call */
-
- SMbuf *sba_reply_pend ; /* local reply for the sba is pending */
-
- /*
- * variables for the ess bandwidth control
- */
- long sync_bw ; /* holds the allocaed sync bw */
- u_long alloc_trans_id ; /* trans id of the last alloc req */
-} ;
-#endif
diff --git a/drivers/net/skfp/h/sba_def.h b/drivers/net/skfp/h/sba_def.h
deleted file mode 100644
index 0459a095d0cd..000000000000
--- a/drivers/net/skfp/h/sba_def.h
+++ /dev/null
@@ -1,76 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#define PHYS 0 /* physical addr */
-#define PERM_ADDR 0x80 /* permanet address */
-#define SB_STATIC 0x00000001
-#define MAX_PAYLOAD 1562
-#define PRIMARY_RING 0x00000001
-#ifndef NULL
-#define NULL 0x00
-#endif
-
-/*********************** SB_Input Variable Values ***********************/
-/* may be needed when ever the SBA state machine is called */
-
-#define UNKNOWN_SYNC_SOURCE 0x0001
-#define REQ_ALLOCATION 0x0002
-#define REPORT_RESP 0x0003
-#define CHANGE_RESP 0x0004
-#define TNEG 0x0005
-#define NIF 0x0006
-#define SB_STOP 0x0007
-#define SB_START 0x0008
-#define REPORT_TIMER 0x0009
-#define CHANGE_REQUIRED 0x000A
-
-#define DEFAULT_OV 50
-
-#ifdef SBA
-/**************************** SBA STATES *****************************/
-
-#define SBA_STANDBY 0x00000000
-#define SBA_ACTIVE 0x00000001
-#define SBA_RECOVERY 0x00000002
-#define SBA_REPORT 0x00000003
-#define SBA_CHANGE 0x00000004
-
-/**************************** OTHERS *********************************/
-
-#define FIFTY_PERCENT 50 /* bytes per second */
-#define MAX_SESSIONS 150
-#define TWO_MINUTES 13079 /* 9.175 ms/tick */
-#define FIFTY_BYTES 50
-#define SBA_DENIED 0x0000000D
-#define I_NEED_ONE 0x00000000
-#define MAX_NODES 50
-/*#define T_REPORT 0x59682F00L*/ /* 120s/80ns in Hex */
-#define TWO_MIN 120 /* seconds */
-#define SBA_ST_UNKNOWN 0x00000002
-#define SBA_ST_ACTIVE 0x00000001
-#define S_CLEAR 0x00000000L
-#define ZERO 0x00000000
-#define FULL 0x00000000 /* old: 0xFFFFFFFFF */
-#define S_SET 0x00000001L
-#define LOW_PRIO 0x02 /* ??????? */
-#define OK 0x01 /* ??????? */
-#define NOT_OK 0x00 /* ??????? */
-
-/****************************************/
-/* deallocate_status[ni][si] values */
-/****************************************/
-#define TX_CHANGE 0X00000001L
-#define PENDING 0x00000002L
-#define NONE 0X00000000L
-#endif
diff --git a/drivers/net/skfp/h/skfbi.h b/drivers/net/skfp/h/skfbi.h
deleted file mode 100644
index c1ba26c06d73..000000000000
--- a/drivers/net/skfp/h/skfbi.h
+++ /dev/null
@@ -1,1133 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _SKFBI_H_
-#define _SKFBI_H_
-
-/*
- * FDDI-Fx (x := {I(SA), P(CI)})
- * address calculation & function defines
- */
-
-/*--------------------------------------------------------------------------*/
-#ifdef PCI
-
-/*
- * (DV) = only defined for Da Vinci
- * (ML) = only defined for Monalisa
- */
-
-/*
- * Configuration Space header
- */
-#define PCI_VENDOR_ID 0x00 /* 16 bit Vendor ID */
-#define PCI_DEVICE_ID 0x02 /* 16 bit Device ID */
-#define PCI_COMMAND 0x04 /* 16 bit Command */
-#define PCI_STATUS 0x06 /* 16 bit Status */
-#define PCI_REV_ID 0x08 /* 8 bit Revision ID */
-#define PCI_CLASS_CODE 0x09 /* 24 bit Class Code */
-#define PCI_CACHE_LSZ 0x0c /* 8 bit Cache Line Size */
-#define PCI_LAT_TIM 0x0d /* 8 bit Latency Timer */
-#define PCI_HEADER_T 0x0e /* 8 bit Header Type */
-#define PCI_BIST 0x0f /* 8 bit Built-in selftest */
-#define PCI_BASE_1ST 0x10 /* 32 bit 1st Base address */
-#define PCI_BASE_2ND 0x14 /* 32 bit 2nd Base address */
-/* Byte 18..2b: Reserved */
-#define PCI_SUB_VID 0x2c /* 16 bit Subsystem Vendor ID */
-#define PCI_SUB_ID 0x2e /* 16 bit Subsystem ID */
-#define PCI_BASE_ROM 0x30 /* 32 bit Expansion ROM Base Address */
-/* Byte 34..33: Reserved */
-#define PCI_CAP_PTR 0x34 /* 8 bit (ML) Capabilities Ptr */
-/* Byte 35..3b: Reserved */
-#define PCI_IRQ_LINE 0x3c /* 8 bit Interrupt Line */
-#define PCI_IRQ_PIN 0x3d /* 8 bit Interrupt Pin */
-#define PCI_MIN_GNT 0x3e /* 8 bit Min_Gnt */
-#define PCI_MAX_LAT 0x3f /* 8 bit Max_Lat */
-/* Device Dependent Region */
-#define PCI_OUR_REG 0x40 /* 32 bit (DV) Our Register */
-#define PCI_OUR_REG_1 0x40 /* 32 bit (ML) Our Register 1 */
-#define PCI_OUR_REG_2 0x44 /* 32 bit (ML) Our Register 2 */
-/* Power Management Region */
-#define PCI_PM_CAP_ID 0x48 /* 8 bit (ML) Power Management Cap. ID */
-#define PCI_PM_NITEM 0x49 /* 8 bit (ML) Next Item Ptr */
-#define PCI_PM_CAP_REG 0x4a /* 16 bit (ML) Power Management Capabilities */
-#define PCI_PM_CTL_STS 0x4c /* 16 bit (ML) Power Manag. Control/Status */
-/* Byte 0x4e: Reserved */
-#define PCI_PM_DAT_REG 0x4f /* 8 bit (ML) Power Manag. Data Register */
-/* VPD Region */
-#define PCI_VPD_CAP_ID 0x50 /* 8 bit (ML) VPD Cap. ID */
-#define PCI_VPD_NITEM 0x51 /* 8 bit (ML) Next Item Ptr */
-#define PCI_VPD_ADR_REG 0x52 /* 16 bit (ML) VPD Address Register */
-#define PCI_VPD_DAT_REG 0x54 /* 32 bit (ML) VPD Data Register */
-/* Byte 58..ff: Reserved */
-
-/*
- * I2C Address (PCI Config)
- *
- * Note: The temperature and voltage sensors are relocated on a different
- * I2C bus.
- */
-#define I2C_ADDR_VPD 0xA0 /* I2C address for the VPD EEPROM */
-
-/*
- * Define Bits and Values of the registers
- */
-/* PCI_VENDOR_ID 16 bit Vendor ID */
-/* PCI_DEVICE_ID 16 bit Device ID */
-/* Values for Vendor ID and Device ID shall be patched into the code */
-/* PCI_COMMAND 16 bit Command */
-#define PCI_FBTEN 0x0200 /* Bit 9: Fast Back-To-Back enable */
-#define PCI_SERREN 0x0100 /* Bit 8: SERR enable */
-#define PCI_ADSTEP 0x0080 /* Bit 7: Address Stepping */
-#define PCI_PERREN 0x0040 /* Bit 6: Parity Report Response enable */
-#define PCI_VGA_SNOOP 0x0020 /* Bit 5: VGA palette snoop */
-#define PCI_MWIEN 0x0010 /* Bit 4: Memory write an inv cycl ena */
-#define PCI_SCYCEN 0x0008 /* Bit 3: Special Cycle enable */
-#define PCI_BMEN 0x0004 /* Bit 2: Bus Master enable */
-#define PCI_MEMEN 0x0002 /* Bit 1: Memory Space Access enable */
-#define PCI_IOEN 0x0001 /* Bit 0: IO Space Access enable */
-
-/* PCI_STATUS 16 bit Status */
-#define PCI_PERR 0x8000 /* Bit 15: Parity Error */
-#define PCI_SERR 0x4000 /* Bit 14: Signaled SERR */
-#define PCI_RMABORT 0x2000 /* Bit 13: Received Master Abort */
-#define PCI_RTABORT 0x1000 /* Bit 12: Received Target Abort */
-#define PCI_STABORT 0x0800 /* Bit 11: Sent Target Abort */
-#define PCI_DEVSEL 0x0600 /* Bit 10..9: DEVSEL Timing */
-#define PCI_DEV_FAST (0<<9) /* fast */
-#define PCI_DEV_MEDIUM (1<<9) /* medium */
-#define PCI_DEV_SLOW (2<<9) /* slow */
-#define PCI_DATAPERR 0x0100 /* Bit 8: DATA Parity error detected */
-#define PCI_FB2BCAP 0x0080 /* Bit 7: Fast Back-to-Back Capability */
-#define PCI_UDF 0x0040 /* Bit 6: User Defined Features */
-#define PCI_66MHZCAP 0x0020 /* Bit 5: 66 MHz PCI bus clock capable */
-#define PCI_NEWCAP 0x0010 /* Bit 4: New cap. list implemented */
-
-#define PCI_ERRBITS (PCI_PERR|PCI_SERR|PCI_RMABORT|PCI_STABORT|PCI_DATAPERR)
-
-/* PCI_REV_ID 8 bit Revision ID */
-/* PCI_CLASS_CODE 24 bit Class Code */
-/* Byte 2: Base Class (02) */
-/* Byte 1: SubClass (02) */
-/* Byte 0: Programming Interface (00) */
-
-/* PCI_CACHE_LSZ 8 bit Cache Line Size */
-/* Possible values: 0,2,4,8,16 */
-
-/* PCI_LAT_TIM 8 bit Latency Timer */
-
-/* PCI_HEADER_T 8 bit Header Type */
-#define PCI_HD_MF_DEV 0x80 /* Bit 7: 0= single, 1= multi-func dev */
-#define PCI_HD_TYPE 0x7f /* Bit 6..0: Header Layout 0= normal */
-
-/* PCI_BIST 8 bit Built-in selftest */
-#define PCI_BIST_CAP 0x80 /* Bit 7: BIST Capable */
-#define PCI_BIST_ST 0x40 /* Bit 6: Start BIST */
-#define PCI_BIST_RET 0x0f /* Bit 3..0: Completion Code */
-
-/* PCI_BASE_1ST 32 bit 1st Base address */
-#define PCI_MEMSIZE 0x800L /* use 2 kB Memory Base */
-#define PCI_MEMBASE_BITS 0xfffff800L /* Bit 31..11: Memory Base Address */
-#define PCI_MEMSIZE_BIIS 0x000007f0L /* Bit 10..4: Memory Size Req. */
-#define PCI_PREFEN 0x00000008L /* Bit 3: Prefetchable */
-#define PCI_MEM_TYP 0x00000006L /* Bit 2..1: Memory Type */
-#define PCI_MEM32BIT (0<<1) /* Base addr anywhere in 32 Bit range */
-#define PCI_MEM1M (1<<1) /* Base addr below 1 MegaByte */
-#define PCI_MEM64BIT (2<<1) /* Base addr anywhere in 64 Bit range */
-#define PCI_MEMSPACE 0x00000001L /* Bit 0: Memory Space Indic. */
-
-/* PCI_BASE_2ND 32 bit 2nd Base address */
-#define PCI_IOBASE 0xffffff00L /* Bit 31..8: I/O Base address */
-#define PCI_IOSIZE 0x000000fcL /* Bit 7..2: I/O Size Requirements */
-#define PCI_IOSPACE 0x00000001L /* Bit 0: I/O Space Indicator */
-
-/* PCI_SUB_VID 16 bit Subsystem Vendor ID */
-/* PCI_SUB_ID 16 bit Subsystem ID */
-
-/* PCI_BASE_ROM 32 bit Expansion ROM Base Address */
-#define PCI_ROMBASE 0xfffe0000L /* Bit 31..17: ROM BASE address (1st) */
-#define PCI_ROMBASZ 0x0001c000L /* Bit 16..14: Treat as BASE or SIZE */
-#define PCI_ROMSIZE 0x00003800L /* Bit 13..11: ROM Size Requirements */
-#define PCI_ROMEN 0x00000001L /* Bit 0: Address Decode enable */
-
-/* PCI_CAP_PTR 8 bit New Capabilities Pointers */
-/* PCI_IRQ_LINE 8 bit Interrupt Line */
-/* PCI_IRQ_PIN 8 bit Interrupt Pin */
-/* PCI_MIN_GNT 8 bit Min_Gnt */
-/* PCI_MAX_LAT 8 bit Max_Lat */
-/* Device Dependent Region */
-/* PCI_OUR_REG (DV) 32 bit Our Register */
-/* PCI_OUR_REG_1 (ML) 32 bit Our Register 1 */
- /* Bit 31..29: reserved */
-#define PCI_PATCH_DIR (3L<<27) /*(DV) Bit 28..27: Ext Patchs direction */
-#define PCI_PATCH_DIR_0 (1L<<27) /*(DV) Type of the pins EXT_PATCHS<1..0> */
-#define PCI_PATCH_DIR_1 (1L<<28) /* 0 = input */
- /* 1 = output */
-#define PCI_EXT_PATCHS (3L<<25) /*(DV) Bit 26..25: Extended Patches */
-#define PCI_EXT_PATCH_0 (1L<<25) /*(DV) */
-#define PCI_EXT_PATCH_1 (1L<<26) /* CLK for MicroWire (ML) */
-#define PCI_VIO (1L<<25) /*(ML) */
-#define PCI_EN_BOOT (1L<<24) /* Bit 24: Enable BOOT via ROM */
- /* 1 = Don't boot with ROM */
- /* 0 = Boot with ROM */
-#define PCI_EN_IO (1L<<23) /* Bit 23: Mapping to IO space */
-#define PCI_EN_FPROM (1L<<22) /* Bit 22: FLASH mapped to mem? */
- /* 1 = Map Flash to Memory */
- /* 0 = Disable all addr. decoding */
-#define PCI_PAGESIZE (3L<<20) /* Bit 21..20: FLASH Page Size */
-#define PCI_PAGE_16 (0L<<20) /* 16 k pages */
-#define PCI_PAGE_32K (1L<<20) /* 32 k pages */
-#define PCI_PAGE_64K (2L<<20) /* 64 k pages */
-#define PCI_PAGE_128K (3L<<20) /* 128 k pages */
- /* Bit 19: reserved (ML) and (DV) */
-#define PCI_PAGEREG (7L<<16) /* Bit 18..16: Page Register */
- /* Bit 15: reserved */
-#define PCI_FORCE_BE (1L<<14) /* Bit 14: Assert all BEs on MR */
-#define PCI_DIS_MRL (1L<<13) /* Bit 13: Disable Mem R Line */
-#define PCI_DIS_MRM (1L<<12) /* Bit 12: Disable Mem R multip */
-#define PCI_DIS_MWI (1L<<11) /* Bit 11: Disable Mem W & inv */
-#define PCI_DISC_CLS (1L<<10) /* Bit 10: Disc: cacheLsz bound */
-#define PCI_BURST_DIS (1L<<9) /* Bit 9: Burst Disable */
-#define PCI_BYTE_SWAP (1L<<8) /*(DV) Bit 8: Byte Swap in DATA */
-#define PCI_SKEW_DAS (0xfL<<4) /* Bit 7..4: Skew Ctrl, DAS Ext */
-#define PCI_SKEW_BASE (0xfL<<0) /* Bit 3..0: Skew Ctrl, Base */
-
-/* PCI_OUR_REG_2 (ML) 32 bit Our Register 2 (Monalisa only) */
-#define PCI_VPD_WR_TH (0xffL<<24) /* Bit 24..31 VPD Write Threshold */
-#define PCI_DEV_SEL (0x7fL<<17) /* Bit 17..23 EEPROM Device Select */
-#define PCI_VPD_ROM_SZ (7L<<14) /* Bit 14..16 VPD ROM Size */
- /* Bit 12..13 reserved */
-#define PCI_PATCH_DIR2 (0xfL<<8) /* Bit 8..11 Ext Patchs dir 2..5 */
-#define PCI_PATCH_DIR_2 (1L<<8) /* Bit 8 CS for MicroWire */
-#define PCI_PATCH_DIR_3 (1L<<9)
-#define PCI_PATCH_DIR_4 (1L<<10)
-#define PCI_PATCH_DIR_5 (1L<<11)
-#define PCI_EXT_PATCHS2 (0xfL<<4) /* Bit 4..7 Extended Patches */
-#define PCI_EXT_PATCH_2 (1L<<4) /* Bit 4 CS for MicroWire */
-#define PCI_EXT_PATCH_3 (1L<<5)
-#define PCI_EXT_PATCH_4 (1L<<6)
-#define PCI_EXT_PATCH_5 (1L<<7)
-#define PCI_EN_DUMMY_RD (1L<<3) /* Bit 3 Enable Dummy Read */
-#define PCI_REV_DESC (1L<<2) /* Bit 2 Reverse Desc. Bytes */
-#define PCI_USEADDR64 (1L<<1) /* Bit 1 Use 64 Bit Addresse */
-#define PCI_USEDATA64 (1L<<0) /* Bit 0 Use 64 Bit Data bus ext*/
-
-/* Power Management Region */
-/* PCI_PM_CAP_ID 8 bit (ML) Power Management Cap. ID */
-/* PCI_PM_NITEM 8 bit (ML) Next Item Ptr */
-/* PCI_PM_CAP_REG 16 bit (ML) Power Management Capabilities*/
-#define PCI_PME_SUP (0x1f<<11) /* Bit 11..15 PM Manag. Event Support*/
-#define PCI_PM_D2_SUB (1<<10) /* Bit 10 D2 Support Bit */
-#define PCI_PM_D1_SUB (1<<9) /* Bit 9 D1 Support Bit */
- /* Bit 6..8 reserved */
-#define PCI_PM_DSI (1<<5) /* Bit 5 Device Specific Init.*/
-#define PCI_PM_APS (1<<4) /* Bit 4 Auxialiary Power Src */
-#define PCI_PME_CLOCK (1<<3) /* Bit 3 PM Event Clock */
-#define PCI_PM_VER (7<<0) /* Bit 0..2 PM PCI Spec. version */
-
-/* PCI_PM_CTL_STS 16 bit (ML) Power Manag. Control/Status */
-#define PCI_PME_STATUS (1<<15) /* Bit 15 PFA doesn't sup. PME#*/
-#define PCI_PM_DAT_SCL (3<<13) /* Bit 13..14 dat reg Scaling factor */
-#define PCI_PM_DAT_SEL (0xf<<9) /* Bit 9..12 PM data selector field */
- /* Bit 7.. 2 reserved */
-#define PCI_PM_STATE (3<<0) /* Bit 0.. 1 Power Management State */
-#define PCI_PM_STATE_D0 (0<<0) /* D0: Operational (default) */
-#define PCI_PM_STATE_D1 (1<<0) /* D1: not supported */
-#define PCI_PM_STATE_D2 (2<<0) /* D2: not supported */
-#define PCI_PM_STATE_D3 (3<<0) /* D3: HOT, Power Down and Reset */
-
-/* PCI_PM_DAT_REG 8 bit (ML) Power Manag. Data Register */
-/* VPD Region */
-/* PCI_VPD_CAP_ID 8 bit (ML) VPD Cap. ID */
-/* PCI_VPD_NITEM 8 bit (ML) Next Item Ptr */
-/* PCI_VPD_ADR_REG 16 bit (ML) VPD Address Register */
-#define PCI_VPD_FLAG (1<<15) /* Bit 15 starts VPD rd/wd cycle*/
-
-/* PCI_VPD_DAT_REG 32 bit (ML) VPD Data Register */
-
-/*
- * Control Register File:
- * Bank 0
- */
-#define B0_RAP 0x0000 /* 8 bit register address port */
- /* 0x0001 - 0x0003: reserved */
-#define B0_CTRL 0x0004 /* 8 bit control register */
-#define B0_DAS 0x0005 /* 8 Bit control register (DAS) */
-#define B0_LED 0x0006 /* 8 Bit LED register */
-#define B0_TST_CTRL 0x0007 /* 8 bit test control register */
-#define B0_ISRC 0x0008 /* 32 bit Interrupt source register */
-#define B0_IMSK 0x000c /* 32 bit Interrupt mask register */
-
-/* 0x0010 - 0x006b: formac+ (supernet_3) fequently used registers */
-#define B0_CMDREG1 0x0010 /* write command reg 1 instruction */
-#define B0_CMDREG2 0x0014 /* write command reg 2 instruction */
-#define B0_ST1U 0x0010 /* read upper 16-bit of status reg 1 */
-#define B0_ST1L 0x0014 /* read lower 16-bit of status reg 1 */
-#define B0_ST2U 0x0018 /* read upper 16-bit of status reg 2 */
-#define B0_ST2L 0x001c /* read lower 16-bit of status reg 2 */
-
-#define B0_MARR 0x0020 /* r/w the memory read addr register */
-#define B0_MARW 0x0024 /* r/w the memory write addr register*/
-#define B0_MDRU 0x0028 /* r/w upper 16-bit of mem. data reg */
-#define B0_MDRL 0x002c /* r/w lower 16-bit of mem. data reg */
-
-#define B0_MDREG3 0x0030 /* r/w Mode Register 3 */
-#define B0_ST3U 0x0034 /* read upper 16-bit of status reg 3 */
-#define B0_ST3L 0x0038 /* read lower 16-bit of status reg 3 */
-#define B0_IMSK3U 0x003c /* r/w upper 16-bit of IMSK reg 3 */
-#define B0_IMSK3L 0x0040 /* r/w lower 16-bit of IMSK reg 3 */
-#define B0_IVR 0x0044 /* read Interrupt Vector register */
-#define B0_IMR 0x0048 /* r/w Interrupt mask register */
-/* 0x4c Hidden */
-
-#define B0_CNTRL_A 0x0050 /* control register A (r/w) */
-#define B0_CNTRL_B 0x0054 /* control register B (r/w) */
-#define B0_INTR_MASK 0x0058 /* interrupt mask (r/w) */
-#define B0_XMIT_VECTOR 0x005c /* transmit vector register (r/w) */
-
-#define B0_STATUS_A 0x0060 /* status register A (read only) */
-#define B0_STATUS_B 0x0064 /* status register B (read only) */
-#define B0_CNTRL_C 0x0068 /* control register C (r/w) */
-#define B0_MDREG1 0x006c /* r/w Mode Register 1 */
-
-#define B0_R1_CSR 0x0070 /* 32 bit BMU control/status reg (rec q 1) */
-#define B0_R2_CSR 0x0074 /* 32 bit BMU control/status reg (rec q 2)(DV)*/
-#define B0_XA_CSR 0x0078 /* 32 bit BMU control/status reg (a xmit q) */
-#define B0_XS_CSR 0x007c /* 32 bit BMU control/status reg (s xmit q) */
-
-/*
- * Bank 1
- * - completely empty (this is the RAP Block window)
- * Note: if RAP = 1 this page is reserved
- */
-
-/*
- * Bank 2
- */
-#define B2_MAC_0 0x0100 /* 8 bit MAC address Byte 0 */
-#define B2_MAC_1 0x0101 /* 8 bit MAC address Byte 1 */
-#define B2_MAC_2 0x0102 /* 8 bit MAC address Byte 2 */
-#define B2_MAC_3 0x0103 /* 8 bit MAC address Byte 3 */
-#define B2_MAC_4 0x0104 /* 8 bit MAC address Byte 4 */
-#define B2_MAC_5 0x0105 /* 8 bit MAC address Byte 5 */
-#define B2_MAC_6 0x0106 /* 8 bit MAC address Byte 6 (== 0) (DV) */
-#define B2_MAC_7 0x0107 /* 8 bit MAC address Byte 7 (== 0) (DV) */
-
-#define B2_CONN_TYP 0x0108 /* 8 bit Connector type */
-#define B2_PMD_TYP 0x0109 /* 8 bit PMD type */
- /* 0x010a - 0x010b: reserved */
- /* Eprom registers are currently of no use */
-#define B2_E_0 0x010c /* 8 bit EPROM Byte 0 */
-#define B2_E_1 0x010d /* 8 bit EPROM Byte 1 */
-#define B2_E_2 0x010e /* 8 bit EPROM Byte 2 */
-#define B2_E_3 0x010f /* 8 bit EPROM Byte 3 */
-#define B2_FAR 0x0110 /* 32 bit Flash-Prom Address Register/Counter */
-#define B2_FDP 0x0114 /* 8 bit Flash-Prom Data Port */
- /* 0x0115 - 0x0117: reserved */
-#define B2_LD_CRTL 0x0118 /* 8 bit loader control */
-#define B2_LD_TEST 0x0119 /* 8 bit loader test */
- /* 0x011a - 0x011f: reserved */
-#define B2_TI_INI 0x0120 /* 32 bit Timer init value */
-#define B2_TI_VAL 0x0124 /* 32 bit Timer value */
-#define B2_TI_CRTL 0x0128 /* 8 bit Timer control */
-#define B2_TI_TEST 0x0129 /* 8 Bit Timer Test */
- /* 0x012a - 0x012f: reserved */
-#define B2_WDOG_INI 0x0130 /* 32 bit Watchdog init value */
-#define B2_WDOG_VAL 0x0134 /* 32 bit Watchdog value */
-#define B2_WDOG_CRTL 0x0138 /* 8 bit Watchdog control */
-#define B2_WDOG_TEST 0x0139 /* 8 Bit Watchdog Test */
- /* 0x013a - 0x013f: reserved */
-#define B2_RTM_INI 0x0140 /* 32 bit RTM init value */
-#define B2_RTM_VAL 0x0144 /* 32 bit RTM value */
-#define B2_RTM_CRTL 0x0148 /* 8 bit RTM control */
-#define B2_RTM_TEST 0x0149 /* 8 Bit RTM Test */
-
-#define B2_TOK_COUNT 0x014c /* (ML) 32 bit Token Counter */
-#define B2_DESC_ADDR_H 0x0150 /* (ML) 32 bit Desciptor Base Addr Reg High */
-#define B2_CTRL_2 0x0154 /* (ML) 8 bit Control Register 2 */
-#define B2_IFACE_REG 0x0155 /* (ML) 8 bit Interface Register */
- /* 0x0156: reserved */
-#define B2_TST_CTRL_2 0x0157 /* (ML) 8 bit Test Control Register 2 */
-#define B2_I2C_CTRL 0x0158 /* (ML) 32 bit I2C Control Register */
-#define B2_I2C_DATA 0x015c /* (ML) 32 bit I2C Data Register */
-
-#define B2_IRQ_MOD_INI 0x0160 /* (ML) 32 bit IRQ Moderation Timer Init Reg. */
-#define B2_IRQ_MOD_VAL 0x0164 /* (ML) 32 bit IRQ Moderation Timer Value */
-#define B2_IRQ_MOD_CTRL 0x0168 /* (ML) 8 bit IRQ Moderation Timer Control */
-#define B2_IRQ_MOD_TEST 0x0169 /* (ML) 8 bit IRQ Moderation Timer Test */
- /* 0x016a - 0x017f: reserved */
-
-/*
- * Bank 3
- */
-/*
- * This is a copy of the Configuration register file (lower half)
- */
-#define B3_CFG_SPC 0x180
-
-/*
- * Bank 4
- */
-#define B4_R1_D 0x0200 /* 4*32 bit current receive Descriptor */
-#define B4_R1_DA 0x0210 /* 32 bit current rec desc address */
-#define B4_R1_AC 0x0214 /* 32 bit current receive Address Count */
-#define B4_R1_BC 0x0218 /* 32 bit current receive Byte Counter */
-#define B4_R1_CSR 0x021c /* 32 bit BMU Control/Status Register */
-#define B4_R1_F 0x0220 /* 32 bit flag register */
-#define B4_R1_T1 0x0224 /* 32 bit Test Register 1 */
-#define B4_R1_T1_TR 0x0224 /* 8 bit Test Register 1 TR */
-#define B4_R1_T1_WR 0x0225 /* 8 bit Test Register 1 WR */
-#define B4_R1_T1_RD 0x0226 /* 8 bit Test Register 1 RD */
-#define B4_R1_T1_SV 0x0227 /* 8 bit Test Register 1 SV */
-#define B4_R1_T2 0x0228 /* 32 bit Test Register 2 */
-#define B4_R1_T3 0x022c /* 32 bit Test Register 3 */
-#define B4_R1_DA_H 0x0230 /* (ML) 32 bit Curr Rx Desc Address High */
-#define B4_R1_AC_H 0x0234 /* (ML) 32 bit Curr Addr Counter High dword */
- /* 0x0238 - 0x023f: reserved */
- /* Receive queue 2 is removed on Monalisa */
-#define B4_R2_D 0x0240 /* 4*32 bit current receive Descriptor (q2) */
-#define B4_R2_DA 0x0250 /* 32 bit current rec desc address (q2) */
-#define B4_R2_AC 0x0254 /* 32 bit current receive Address Count (q2) */
-#define B4_R2_BC 0x0258 /* 32 bit current receive Byte Counter (q2) */
-#define B4_R2_CSR 0x025c /* 32 bit BMU Control/Status Register (q2) */
-#define B4_R2_F 0x0260 /* 32 bit flag register (q2) */
-#define B4_R2_T1 0x0264 /* 32 bit Test Register 1 (q2) */
-#define B4_R2_T1_TR 0x0264 /* 8 bit Test Register 1 TR (q2) */
-#define B4_R2_T1_WR 0x0265 /* 8 bit Test Register 1 WR (q2) */
-#define B4_R2_T1_RD 0x0266 /* 8 bit Test Register 1 RD (q2) */
-#define B4_R2_T1_SV 0x0267 /* 8 bit Test Register 1 SV (q2) */
-#define B4_R2_T2 0x0268 /* 32 bit Test Register 2 (q2) */
-#define B4_R2_T3 0x026c /* 32 bit Test Register 3 (q2) */
- /* 0x0270 - 0x027c: reserved */
-
-/*
- * Bank 5
- */
-#define B5_XA_D 0x0280 /* 4*32 bit current transmit Descriptor (xa) */
-#define B5_XA_DA 0x0290 /* 32 bit current tx desc address (xa) */
-#define B5_XA_AC 0x0294 /* 32 bit current tx Address Count (xa) */
-#define B5_XA_BC 0x0298 /* 32 bit current tx Byte Counter (xa) */
-#define B5_XA_CSR 0x029c /* 32 bit BMU Control/Status Register (xa) */
-#define B5_XA_F 0x02a0 /* 32 bit flag register (xa) */
-#define B5_XA_T1 0x02a4 /* 32 bit Test Register 1 (xa) */
-#define B5_XA_T1_TR 0x02a4 /* 8 bit Test Register 1 TR (xa) */
-#define B5_XA_T1_WR 0x02a5 /* 8 bit Test Register 1 WR (xa) */
-#define B5_XA_T1_RD 0x02a6 /* 8 bit Test Register 1 RD (xa) */
-#define B5_XA_T1_SV 0x02a7 /* 8 bit Test Register 1 SV (xa) */
-#define B5_XA_T2 0x02a8 /* 32 bit Test Register 2 (xa) */
-#define B5_XA_T3 0x02ac /* 32 bit Test Register 3 (xa) */
-#define B5_XA_DA_H 0x02b0 /* (ML) 32 bit Curr Tx Desc Address High */
-#define B5_XA_AC_H 0x02b4 /* (ML) 32 bit Curr Addr Counter High dword */
- /* 0x02b8 - 0x02bc: reserved */
-#define B5_XS_D 0x02c0 /* 4*32 bit current transmit Descriptor (xs) */
-#define B5_XS_DA 0x02d0 /* 32 bit current tx desc address (xs) */
-#define B5_XS_AC 0x02d4 /* 32 bit current transmit Address Count(xs) */
-#define B5_XS_BC 0x02d8 /* 32 bit current transmit Byte Counter (xs) */
-#define B5_XS_CSR 0x02dc /* 32 bit BMU Control/Status Register (xs) */
-#define B5_XS_F 0x02e0 /* 32 bit flag register (xs) */
-#define B5_XS_T1 0x02e4 /* 32 bit Test Register 1 (xs) */
-#define B5_XS_T1_TR 0x02e4 /* 8 bit Test Register 1 TR (xs) */
-#define B5_XS_T1_WR 0x02e5 /* 8 bit Test Register 1 WR (xs) */
-#define B5_XS_T1_RD 0x02e6 /* 8 bit Test Register 1 RD (xs) */
-#define B5_XS_T1_SV 0x02e7 /* 8 bit Test Register 1 SV (xs) */
-#define B5_XS_T2 0x02e8 /* 32 bit Test Register 2 (xs) */
-#define B5_XS_T3 0x02ec /* 32 bit Test Register 3 (xs) */
-#define B5_XS_DA_H 0x02f0 /* (ML) 32 bit Curr Tx Desc Address High */
-#define B5_XS_AC_H 0x02f4 /* (ML) 32 bit Curr Addr Counter High dword */
- /* 0x02f8 - 0x02fc: reserved */
-
-/*
- * Bank 6
- */
-/* External PLC-S registers (SN2 compatibility for DV) */
-/* External registers (ML) */
-#define B6_EXT_REG 0x300
-
-/*
- * Bank 7
- */
-/* DAS PLC-S Registers */
-
-/*
- * Bank 8 - 15
- */
-/* IFCP registers */
-
-/*---------------------------------------------------------------------------*/
-/* Definitions of the Bits in the registers */
-
-/* B0_RAP 16 bit register address port */
-#define RAP_RAP 0x0f /* Bit 3..0: 0 = block0, .., f = block15 */
-
-/* B0_CTRL 8 bit control register */
-#define CTRL_FDDI_CLR (1<<7) /* Bit 7: (ML) Clear FDDI Reset */
-#define CTRL_FDDI_SET (1<<6) /* Bit 6: (ML) Set FDDI Reset */
-#define CTRL_HPI_CLR (1<<5) /* Bit 5: Clear HPI SM reset */
-#define CTRL_HPI_SET (1<<4) /* Bit 4: Set HPI SM reset */
-#define CTRL_MRST_CLR (1<<3) /* Bit 3: Clear Master reset */
-#define CTRL_MRST_SET (1<<2) /* Bit 2: Set Master reset */
-#define CTRL_RST_CLR (1<<1) /* Bit 1: Clear Software reset */
-#define CTRL_RST_SET (1<<0) /* Bit 0: Set Software reset */
-
-/* B0_DAS 8 Bit control register (DAS) */
-#define BUS_CLOCK (1<<7) /* Bit 7: (ML) Bus Clock 0/1 = 33/66MHz */
-#define BUS_SLOT_SZ (1<<6) /* Bit 6: (ML) Slot Size 0/1 = 32/64 bit slot*/
- /* Bit 5..4: reserved */
-#define DAS_AVAIL (1<<3) /* Bit 3: 1 = DAS, 0 = SAS */
-#define DAS_BYP_ST (1<<2) /* Bit 2: 1 = avail,SAS, 0 = not avail */
-#define DAS_BYP_INS (1<<1) /* Bit 1: 1 = insert Bypass */
-#define DAS_BYP_RMV (1<<0) /* Bit 0: 1 = remove Bypass */
-
-/* B0_LED 8 Bit LED register */
- /* Bit 7..6: reserved */
-#define LED_2_ON (1<<5) /* Bit 5: 1 = switch LED_2 on (left,gn)*/
-#define LED_2_OFF (1<<4) /* Bit 4: 1 = switch LED_2 off */
-#define LED_1_ON (1<<3) /* Bit 3: 1 = switch LED_1 on (mid,yel)*/
-#define LED_1_OFF (1<<2) /* Bit 2: 1 = switch LED_1 off */
-#define LED_0_ON (1<<1) /* Bit 1: 1 = switch LED_0 on (rght,gn)*/
-#define LED_0_OFF (1<<0) /* Bit 0: 1 = switch LED_0 off */
-/* This hardware defines are very ugly therefore we define some others */
-
-#define LED_GA_ON LED_2_ON /* S port = A port */
-#define LED_GA_OFF LED_2_OFF /* S port = A port */
-#define LED_MY_ON LED_1_ON
-#define LED_MY_OFF LED_1_OFF
-#define LED_GB_ON LED_0_ON
-#define LED_GB_OFF LED_0_OFF
-
-/* B0_TST_CTRL 8 bit test control register */
-#define TST_FRC_DPERR_MR (1<<7) /* Bit 7: force DATAPERR on MST RE. */
-#define TST_FRC_DPERR_MW (1<<6) /* Bit 6: force DATAPERR on MST WR. */
-#define TST_FRC_DPERR_TR (1<<5) /* Bit 5: force DATAPERR on TRG RE. */
-#define TST_FRC_DPERR_TW (1<<4) /* Bit 4: force DATAPERR on TRG WR. */
-#define TST_FRC_APERR_M (1<<3) /* Bit 3: force ADDRPERR on MST */
-#define TST_FRC_APERR_T (1<<2) /* Bit 2: force ADDRPERR on TRG */
-#define TST_CFG_WRITE_ON (1<<1) /* Bit 1: ena configuration reg. WR */
-#define TST_CFG_WRITE_OFF (1<<0) /* Bit 0: dis configuration reg. WR */
-
-/* B0_ISRC 32 bit Interrupt source register */
- /* Bit 31..28: reserved */
-#define IS_I2C_READY (1L<<27) /* Bit 27: (ML) IRQ on end of I2C tx */
-#define IS_IRQ_SW (1L<<26) /* Bit 26: (ML) SW forced IRQ */
-#define IS_EXT_REG (1L<<25) /* Bit 25: (ML) IRQ from external reg*/
-#define IS_IRQ_STAT (1L<<24) /* Bit 24: IRQ status exception */
- /* PERR, RMABORT, RTABORT DATAPERR */
-#define IS_IRQ_MST_ERR (1L<<23) /* Bit 23: IRQ master error */
- /* RMABORT, RTABORT, DATAPERR */
-#define IS_TIMINT (1L<<22) /* Bit 22: IRQ_TIMER */
-#define IS_TOKEN (1L<<21) /* Bit 21: IRQ_RTM */
-/*
- * Note: The DAS is our First Port (!=PA)
- */
-#define IS_PLINT1 (1L<<20) /* Bit 20: IRQ_PHY_DAS */
-#define IS_PLINT2 (1L<<19) /* Bit 19: IRQ_IFCP_4 */
-#define IS_MINTR3 (1L<<18) /* Bit 18: IRQ_IFCP_3/IRQ_PHY */
-#define IS_MINTR2 (1L<<17) /* Bit 17: IRQ_IFCP_2/IRQ_MAC_2 */
-#define IS_MINTR1 (1L<<16) /* Bit 16: IRQ_IFCP_1/IRQ_MAC_1 */
-/* Receive Queue 1 */
-#define IS_R1_P (1L<<15) /* Bit 15: Parity Error (q1) */
-#define IS_R1_B (1L<<14) /* Bit 14: End of Buffer (q1) */
-#define IS_R1_F (1L<<13) /* Bit 13: End of Frame (q1) */
-#define IS_R1_C (1L<<12) /* Bit 12: Encoding Error (q1) */
-/* Receive Queue 2 */
-#define IS_R2_P (1L<<11) /* Bit 11: (DV) Parity Error (q2) */
-#define IS_R2_B (1L<<10) /* Bit 10: (DV) End of Buffer (q2) */
-#define IS_R2_F (1L<<9) /* Bit 9: (DV) End of Frame (q2) */
-#define IS_R2_C (1L<<8) /* Bit 8: (DV) Encoding Error (q2) */
-/* Asynchronous Transmit queue */
- /* Bit 7: reserved */
-#define IS_XA_B (1L<<6) /* Bit 6: End of Buffer (xa) */
-#define IS_XA_F (1L<<5) /* Bit 5: End of Frame (xa) */
-#define IS_XA_C (1L<<4) /* Bit 4: Encoding Error (xa) */
-/* Synchronous Transmit queue */
- /* Bit 3: reserved */
-#define IS_XS_B (1L<<2) /* Bit 2: End of Buffer (xs) */
-#define IS_XS_F (1L<<1) /* Bit 1: End of Frame (xs) */
-#define IS_XS_C (1L<<0) /* Bit 0: Encoding Error (xs) */
-
-/*
- * Define all valid interrupt source Bits from GET_ISR ()
- */
-#define ALL_IRSR 0x01ffff77L /* (DV) */
-#define ALL_IRSR_ML 0x0ffff077L /* (ML) */
-
-
-/* B0_IMSK 32 bit Interrupt mask register */
-/*
- * The Bit definnition of this register are the same as of the interrupt
- * source register. These definition are directly derived from the Hardware
- * spec.
- */
- /* Bit 31..28: reserved */
-#define IRQ_I2C_READY (1L<<27) /* Bit 27: (ML) IRQ on end of I2C tx */
-#define IRQ_SW (1L<<26) /* Bit 26: (ML) SW forced IRQ */
-#define IRQ_EXT_REG (1L<<25) /* Bit 25: (ML) IRQ from external reg*/
-#define IRQ_STAT (1L<<24) /* Bit 24: IRQ status exception */
- /* PERR, RMABORT, RTABORT DATAPERR */
-#define IRQ_MST_ERR (1L<<23) /* Bit 23: IRQ master error */
- /* RMABORT, RTABORT, DATAPERR */
-#define IRQ_TIMER (1L<<22) /* Bit 22: IRQ_TIMER */
-#define IRQ_RTM (1L<<21) /* Bit 21: IRQ_RTM */
-#define IRQ_DAS (1L<<20) /* Bit 20: IRQ_PHY_DAS */
-#define IRQ_IFCP_4 (1L<<19) /* Bit 19: IRQ_IFCP_4 */
-#define IRQ_IFCP_3 (1L<<18) /* Bit 18: IRQ_IFCP_3/IRQ_PHY */
-#define IRQ_IFCP_2 (1L<<17) /* Bit 17: IRQ_IFCP_2/IRQ_MAC_2 */
-#define IRQ_IFCP_1 (1L<<16) /* Bit 16: IRQ_IFCP_1/IRQ_MAC_1 */
-/* Receive Queue 1 */
-#define IRQ_R1_P (1L<<15) /* Bit 15: Parity Error (q1) */
-#define IRQ_R1_B (1L<<14) /* Bit 14: End of Buffer (q1) */
-#define IRQ_R1_F (1L<<13) /* Bit 13: End of Frame (q1) */
-#define IRQ_R1_C (1L<<12) /* Bit 12: Encoding Error (q1) */
-/* Receive Queue 2 */
-#define IRQ_R2_P (1L<<11) /* Bit 11: (DV) Parity Error (q2) */
-#define IRQ_R2_B (1L<<10) /* Bit 10: (DV) End of Buffer (q2) */
-#define IRQ_R2_F (1L<<9) /* Bit 9: (DV) End of Frame (q2) */
-#define IRQ_R2_C (1L<<8) /* Bit 8: (DV) Encoding Error (q2) */
-/* Asynchronous Transmit queue */
- /* Bit 7: reserved */
-#define IRQ_XA_B (1L<<6) /* Bit 6: End of Buffer (xa) */
-#define IRQ_XA_F (1L<<5) /* Bit 5: End of Frame (xa) */
-#define IRQ_XA_C (1L<<4) /* Bit 4: Encoding Error (xa) */
-/* Synchronous Transmit queue */
- /* Bit 3: reserved */
-#define IRQ_XS_B (1L<<2) /* Bit 2: End of Buffer (xs) */
-#define IRQ_XS_F (1L<<1) /* Bit 1: End of Frame (xs) */
-#define IRQ_XS_C (1L<<0) /* Bit 0: Encoding Error (xs) */
-
-/* 0x0010 - 0x006b: formac+ (supernet_3) fequently used registers */
-/* B0_R1_CSR 32 bit BMU control/status reg (rec q 1 ) */
-/* B0_R2_CSR 32 bit BMU control/status reg (rec q 2 ) */
-/* B0_XA_CSR 32 bit BMU control/status reg (a xmit q ) */
-/* B0_XS_CSR 32 bit BMU control/status reg (s xmit q ) */
-/* The registers are the same as B4_R1_CSR, B4_R2_CSR, B5_Xa_CSR, B5_XS_CSR */
-
-/* B2_MAC_0 8 bit MAC address Byte 0 */
-/* B2_MAC_1 8 bit MAC address Byte 1 */
-/* B2_MAC_2 8 bit MAC address Byte 2 */
-/* B2_MAC_3 8 bit MAC address Byte 3 */
-/* B2_MAC_4 8 bit MAC address Byte 4 */
-/* B2_MAC_5 8 bit MAC address Byte 5 */
-/* B2_MAC_6 8 bit MAC address Byte 6 (== 0) (DV) */
-/* B2_MAC_7 8 bit MAC address Byte 7 (== 0) (DV) */
-
-/* B2_CONN_TYP 8 bit Connector type */
-/* B2_PMD_TYP 8 bit PMD type */
-/* Values of connector and PMD type comply to SysKonnect internal std */
-
-/* The EPROM register are currently of no use */
-/* B2_E_0 8 bit EPROM Byte 0 */
-/* B2_E_1 8 bit EPROM Byte 1 */
-/* B2_E_2 8 bit EPROM Byte 2 */
-/* B2_E_3 8 bit EPROM Byte 3 */
-
-/* B2_FAR 32 bit Flash-Prom Address Register/Counter */
-#define FAR_ADDR 0x1ffffL /* Bit 16..0: FPROM Address mask */
-
-/* B2_FDP 8 bit Flash-Prom Data Port */
-
-/* B2_LD_CRTL 8 bit loader control */
-/* Bits are currently reserved */
-
-/* B2_LD_TEST 8 bit loader test */
-#define LD_T_ON (1<<3) /* Bit 3: Loader Testmode on */
-#define LD_T_OFF (1<<2) /* Bit 2: Loader Testmode off */
-#define LD_T_STEP (1<<1) /* Bit 1: Decrement FPROM addr. Counter */
-#define LD_START (1<<0) /* Bit 0: Start loading FPROM */
-
-/* B2_TI_INI 32 bit Timer init value */
-/* B2_TI_VAL 32 bit Timer value */
-/* B2_TI_CRTL 8 bit Timer control */
-/* B2_TI_TEST 8 Bit Timer Test */
-/* B2_WDOG_INI 32 bit Watchdog init value */
-/* B2_WDOG_VAL 32 bit Watchdog value */
-/* B2_WDOG_CRTL 8 bit Watchdog control */
-/* B2_WDOG_TEST 8 Bit Watchdog Test */
-/* B2_RTM_INI 32 bit RTM init value */
-/* B2_RTM_VAL 32 bit RTM value */
-/* B2_RTM_CRTL 8 bit RTM control */
-/* B2_RTM_TEST 8 Bit RTM Test */
-/* B2_<TIM>_CRTL 8 bit <TIM> control */
-/* B2_IRQ_MOD_INI 32 bit IRQ Moderation Timer Init Reg. (ML) */
-/* B2_IRQ_MOD_VAL 32 bit IRQ Moderation Timer Value (ML) */
-/* B2_IRQ_MOD_CTRL 8 bit IRQ Moderation Timer Control (ML) */
-/* B2_IRQ_MOD_TEST 8 bit IRQ Moderation Timer Test (ML) */
-#define GET_TOK_CT (1<<4) /* Bit 4: Get the Token Counter (RTM) */
-#define TIM_RES_TOK (1<<3) /* Bit 3: RTM Status: 1 == restricted */
-#define TIM_ALARM (1<<3) /* Bit 3: Timer Alarm (WDOG) */
-#define TIM_START (1<<2) /* Bit 2: Start Timer (TI,WDOG,RTM,IRQ_MOD)*/
-#define TIM_STOP (1<<1) /* Bit 1: Stop Timer (TI,WDOG,RTM,IRQ_MOD) */
-#define TIM_CL_IRQ (1<<0) /* Bit 0: Clear Timer IRQ (TI,WDOG,RTM) */
-/* B2_<TIM>_TEST 8 Bit <TIM> Test */
-#define TIM_T_ON (1<<2) /* Bit 2: Test mode on (TI,WDOG,RTM,IRQ_MOD) */
-#define TIM_T_OFF (1<<1) /* Bit 1: Test mode off (TI,WDOG,RTM,IRQ_MOD) */
-#define TIM_T_STEP (1<<0) /* Bit 0: Test step (TI,WDOG,RTM,IRQ_MOD) */
-
-/* B2_TOK_COUNT 0x014c (ML) 32 bit Token Counter */
-/* B2_DESC_ADDR_H 0x0150 (ML) 32 bit Desciptor Base Addr Reg High */
-/* B2_CTRL_2 0x0154 (ML) 8 bit Control Register 2 */
- /* Bit 7..5: reserved */
-#define CTRL_CL_I2C_IRQ (1<<4) /* Bit 4: Clear I2C IRQ */
-#define CTRL_ST_SW_IRQ (1<<3) /* Bit 3: Set IRQ SW Request */
-#define CTRL_CL_SW_IRQ (1<<2) /* Bit 2: Clear IRQ SW Request */
-#define CTRL_STOP_DONE (1<<1) /* Bit 1: Stop Master is finished */
-#define CTRL_STOP_MAST (1<<0) /* Bit 0: Command Bit to stop the master*/
-
-/* B2_IFACE_REG 0x0155 (ML) 8 bit Interface Register */
- /* Bit 7..3: reserved */
-#define IF_I2C_DATA_DIR (1<<2) /* Bit 2: direction of IF_I2C_DATA*/
-#define IF_I2C_DATA (1<<1) /* Bit 1: I2C Data Port */
-#define IF_I2C_CLK (1<<0) /* Bit 0: I2C Clock Port */
-
- /* 0x0156: reserved */
-/* B2_TST_CTRL_2 0x0157 (ML) 8 bit Test Control Register 2 */
- /* Bit 7..4: reserved */
- /* force the following error on */
- /* the next master read/write */
-#define TST_FRC_DPERR_MR64 (1<<3) /* Bit 3: DataPERR RD 64 */
-#define TST_FRC_DPERR_MW64 (1<<2) /* Bit 2: DataPERR WR 64 */
-#define TST_FRC_APERR_1M64 (1<<1) /* Bit 1: AddrPERR on 1. phase */
-#define TST_FRC_APERR_2M64 (1<<0) /* Bit 0: AddrPERR on 2. phase */
-
-/* B2_I2C_CTRL 0x0158 (ML) 32 bit I2C Control Register */
-#define I2C_FLAG (1L<<31) /* Bit 31: Start read/write if WR */
-#define I2C_ADDR (0x7fffL<<16) /* Bit 30..16: Addr to be read/written*/
-#define I2C_DEV_SEL (0x7fL<<9) /* Bit 9..15: I2C Device Select */
- /* Bit 5.. 8: reserved */
-#define I2C_BURST_LEN (1L<<4) /* Bit 4 Burst Len, 1/4 bytes */
-#define I2C_DEV_SIZE (7L<<1) /* Bit 1.. 3: I2C Device Size */
-#define I2C_025K_DEV (0L<<1) /* 0: 256 Bytes or smaller*/
-#define I2C_05K_DEV (1L<<1) /* 1: 512 Bytes */
-#define I2C_1K_DEV (2L<<1) /* 2: 1024 Bytes */
-#define I2C_2K_DEV (3L<<1) /* 3: 2048 Bytes */
-#define I2C_4K_DEV (4L<<1) /* 4: 4096 Bytes */
-#define I2C_8K_DEV (5L<<1) /* 5: 8192 Bytes */
-#define I2C_16K_DEV (6L<<1) /* 6: 16384 Bytes */
-#define I2C_32K_DEV (7L<<1) /* 7: 32768 Bytes */
-#define I2C_STOP_BIT (1<<0) /* Bit 0: Interrupt I2C transfer */
-
-/*
- * I2C Addresses
- *
- * The temperature sensor and the voltage sensor are on the same I2C bus.
- * Note: The voltage sensor (Micorwire) will be selected by PCI_EXT_PATCH_1
- * in PCI_OUR_REG 1.
- */
-#define I2C_ADDR_TEMP 0x90 /* I2C Address Temperature Sensor */
-
-/* B2_I2C_DATA 0x015c (ML) 32 bit I2C Data Register */
-
-/* B4_R1_D 4*32 bit current receive Descriptor (q1) */
-/* B4_R1_DA 32 bit current rec desc address (q1) */
-/* B4_R1_AC 32 bit current receive Address Count (q1) */
-/* B4_R1_BC 32 bit current receive Byte Counter (q1) */
-/* B4_R1_CSR 32 bit BMU Control/Status Register (q1) */
-/* B4_R1_F 32 bit flag register (q1) */
-/* B4_R1_T1 32 bit Test Register 1 (q1) */
-/* B4_R1_T2 32 bit Test Register 2 (q1) */
-/* B4_R1_T3 32 bit Test Register 3 (q1) */
-/* B4_R2_D 4*32 bit current receive Descriptor (q2) */
-/* B4_R2_DA 32 bit current rec desc address (q2) */
-/* B4_R2_AC 32 bit current receive Address Count (q2) */
-/* B4_R2_BC 32 bit current receive Byte Counter (q2) */
-/* B4_R2_CSR 32 bit BMU Control/Status Register (q2) */
-/* B4_R2_F 32 bit flag register (q2) */
-/* B4_R2_T1 32 bit Test Register 1 (q2) */
-/* B4_R2_T2 32 bit Test Register 2 (q2) */
-/* B4_R2_T3 32 bit Test Register 3 (q2) */
-/* B5_XA_D 4*32 bit current receive Descriptor (xa) */
-/* B5_XA_DA 32 bit current rec desc address (xa) */
-/* B5_XA_AC 32 bit current receive Address Count (xa) */
-/* B5_XA_BC 32 bit current receive Byte Counter (xa) */
-/* B5_XA_CSR 32 bit BMU Control/Status Register (xa) */
-/* B5_XA_F 32 bit flag register (xa) */
-/* B5_XA_T1 32 bit Test Register 1 (xa) */
-/* B5_XA_T2 32 bit Test Register 2 (xa) */
-/* B5_XA_T3 32 bit Test Register 3 (xa) */
-/* B5_XS_D 4*32 bit current receive Descriptor (xs) */
-/* B5_XS_DA 32 bit current rec desc address (xs) */
-/* B5_XS_AC 32 bit current receive Address Count (xs) */
-/* B5_XS_BC 32 bit current receive Byte Counter (xs) */
-/* B5_XS_CSR 32 bit BMU Control/Status Register (xs) */
-/* B5_XS_F 32 bit flag register (xs) */
-/* B5_XS_T1 32 bit Test Register 1 (xs) */
-/* B5_XS_T2 32 bit Test Register 2 (xs) */
-/* B5_XS_T3 32 bit Test Register 3 (xs) */
-/* B5_<xx>_CSR 32 bit BMU Control/Status Register (xx) */
-#define CSR_DESC_CLEAR (1L<<21) /* Bit 21: Clear Reset for Descr */
-#define CSR_DESC_SET (1L<<20) /* Bit 20: Set Reset for Descr */
-#define CSR_FIFO_CLEAR (1L<<19) /* Bit 19: Clear Reset for FIFO */
-#define CSR_FIFO_SET (1L<<18) /* Bit 18: Set Reset for FIFO */
-#define CSR_HPI_RUN (1L<<17) /* Bit 17: Release HPI SM */
-#define CSR_HPI_RST (1L<<16) /* Bit 16: Reset HPI SM to Idle */
-#define CSR_SV_RUN (1L<<15) /* Bit 15: Release Supervisor SM */
-#define CSR_SV_RST (1L<<14) /* Bit 14: Reset Supervisor SM */
-#define CSR_DREAD_RUN (1L<<13) /* Bit 13: Release Descr Read SM */
-#define CSR_DREAD_RST (1L<<12) /* Bit 12: Reset Descr Read SM */
-#define CSR_DWRITE_RUN (1L<<11) /* Bit 11: Rel. Descr Write SM */
-#define CSR_DWRITE_RST (1L<<10) /* Bit 10: Reset Descr Write SM */
-#define CSR_TRANS_RUN (1L<<9) /* Bit 9: Release Transfer SM */
-#define CSR_TRANS_RST (1L<<8) /* Bit 8: Reset Transfer SM */
- /* Bit 7..5: reserved */
-#define CSR_START (1L<<4) /* Bit 4: Start Rec/Xmit Queue */
-#define CSR_IRQ_CL_P (1L<<3) /* Bit 3: Clear Parity IRQ, Rcv */
-#define CSR_IRQ_CL_B (1L<<2) /* Bit 2: Clear EOB IRQ */
-#define CSR_IRQ_CL_F (1L<<1) /* Bit 1: Clear EOF IRQ */
-#define CSR_IRQ_CL_C (1L<<0) /* Bit 0: Clear ERR IRQ */
-
-#define CSR_SET_RESET (CSR_DESC_SET|CSR_FIFO_SET|CSR_HPI_RST|CSR_SV_RST|\
- CSR_DREAD_RST|CSR_DWRITE_RST|CSR_TRANS_RST)
-#define CSR_CLR_RESET (CSR_DESC_CLEAR|CSR_FIFO_CLEAR|CSR_HPI_RUN|CSR_SV_RUN|\
- CSR_DREAD_RUN|CSR_DWRITE_RUN|CSR_TRANS_RUN)
-
-
-/* B5_<xx>_F 32 bit flag register (xx) */
- /* Bit 28..31: reserved */
-#define F_ALM_FULL (1L<<27) /* Bit 27: (ML) FIFO almost full */
-#define F_FIFO_EOF (1L<<26) /* Bit 26: (ML) Fag bit in FIFO */
-#define F_WM_REACHED (1L<<25) /* Bit 25: (ML) Watermark reached */
-#define F_UP_DW_USED (1L<<24) /* Bit 24: (ML) Upper Dword used (bug)*/
- /* Bit 23: reserved */
-#define F_FIFO_LEVEL (0x1fL<<16) /* Bit 16..22:(ML) # of Qwords in FIFO*/
- /* Bit 8..15: reserved */
-#define F_ML_WATER_M 0x0000ffL /* Bit 0.. 7:(ML) Watermark */
-#define FLAG_WATER 0x00001fL /* Bit 4..0:(DV) Level of req data tr.*/
-
-/* B5_<xx>_T1 32 bit Test Register 1 (xx) */
-/* Holds four State Machine control Bytes */
-#define SM_CRTL_SV (0xffL<<24) /* Bit 31..24: Control Supervisor SM */
-#define SM_CRTL_RD (0xffL<<16) /* Bit 23..16: Control Read Desc SM */
-#define SM_CRTL_WR (0xffL<<8) /* Bit 15..8: Control Write Desc SM */
-#define SM_CRTL_TR (0xffL<<0) /* Bit 7..0: Control Transfer SM */
-
-/* B4_<xx>_T1_TR 8 bit Test Register 1 TR (xx) */
-/* B4_<xx>_T1_WR 8 bit Test Register 1 WR (xx) */
-/* B4_<xx>_T1_RD 8 bit Test Register 1 RD (xx) */
-/* B4_<xx>_T1_SV 8 bit Test Register 1 SV (xx) */
-/* The control status byte of each machine looks like ... */
-#define SM_STATE 0xf0 /* Bit 7..4: State which shall be loaded */
-#define SM_LOAD 0x08 /* Bit 3: Load the SM with SM_STATE */
-#define SM_TEST_ON 0x04 /* Bit 2: Switch on SM Test Mode */
-#define SM_TEST_OFF 0x02 /* Bit 1: Go off the Test Mode */
-#define SM_STEP 0x01 /* Bit 0: Step the State Machine */
-
-/* The coding of the states */
-#define SM_SV_IDLE 0x0 /* Supervisor Idle Tr/Re */
-#define SM_SV_RES_START 0x1 /* Supervisor Res_Start Tr/Re */
-#define SM_SV_GET_DESC 0x3 /* Supervisor Get_Desc Tr/Re */
-#define SM_SV_CHECK 0x2 /* Supervisor Check Tr/Re */
-#define SM_SV_MOV_DATA 0x6 /* Supervisor Move_Data Tr/Re */
-#define SM_SV_PUT_DESC 0x7 /* Supervisor Put_Desc Tr/Re */
-#define SM_SV_SET_IRQ 0x5 /* Supervisor Set_Irq Tr/Re */
-
-#define SM_RD_IDLE 0x0 /* Read Desc. Idle Tr/Re */
-#define SM_RD_LOAD 0x1 /* Read Desc. Load Tr/Re */
-#define SM_RD_WAIT_TC 0x3 /* Read Desc. Wait_TC Tr/Re */
-#define SM_RD_RST_EOF 0x6 /* Read Desc. Reset_EOF Re */
-#define SM_RD_WDONE_R 0x2 /* Read Desc. Wait_Done Re */
-#define SM_RD_WDONE_T 0x4 /* Read Desc. Wait_Done Tr */
-
-#define SM_TR_IDLE 0x0 /* Trans. Data Idle Tr/Re */
-#define SM_TR_LOAD 0x3 /* Trans. Data Load Tr/Re */
-#define SM_TR_LOAD_R_ML 0x1 /* Trans. Data Load /Re (ML) */
-#define SM_TR_WAIT_TC 0x2 /* Trans. Data Wait_TC Tr/Re */
-#define SM_TR_WDONE 0x4 /* Trans. Data Wait_Done Tr/Re */
-
-#define SM_WR_IDLE 0x0 /* Write Desc. Idle Tr/Re */
-#define SM_WR_ABLEN 0x1 /* Write Desc. Act_Buf_Length Tr/Re */
-#define SM_WR_LD_A4 0x2 /* Write Desc. Load_A4 Re */
-#define SM_WR_RES_OWN 0x2 /* Write Desc. Res_OWN Tr */
-#define SM_WR_WAIT_EOF 0x3 /* Write Desc. Wait_EOF Re */
-#define SM_WR_LD_N2C_R 0x4 /* Write Desc. Load_N2C Re */
-#define SM_WR_WAIT_TC_R 0x5 /* Write Desc. Wait_TC Re */
-#define SM_WR_WAIT_TC4 0x6 /* Write Desc. Wait_TC4 Re */
-#define SM_WR_LD_A_T 0x6 /* Write Desc. Load_A Tr */
-#define SM_WR_LD_A_R 0x7 /* Write Desc. Load_A Re */
-#define SM_WR_WAIT_TC_T 0x7 /* Write Desc. Wait_TC Tr */
-#define SM_WR_LD_N2C_T 0xc /* Write Desc. Load_N2C Tr */
-#define SM_WR_WDONE_T 0x9 /* Write Desc. Wait_Done Tr */
-#define SM_WR_WDONE_R 0xc /* Write Desc. Wait_Done Re */
-#define SM_WR_LD_D_AD 0xe /* Write Desc. Load_Dumr_A Re (ML) */
-#define SM_WR_WAIT_D_TC 0xf /* Write Desc. Wait_Dumr_TC Re (ML) */
-
-/* B5_<xx>_T2 32 bit Test Register 2 (xx) */
-/* Note: This register is only defined for the transmit queues */
- /* Bit 31..8: reserved */
-#define AC_TEST_ON (1<<7) /* Bit 7: Address Counter Test Mode on */
-#define AC_TEST_OFF (1<<6) /* Bit 6: Address Counter Test Mode off*/
-#define BC_TEST_ON (1<<5) /* Bit 5: Byte Counter Test Mode on */
-#define BC_TEST_OFF (1<<4) /* Bit 4: Byte Counter Test Mode off */
-#define TEST_STEP04 (1<<3) /* Bit 3: Inc AC/Dec BC by 4 */
-#define TEST_STEP03 (1<<2) /* Bit 2: Inc AC/Dec BC by 3 */
-#define TEST_STEP02 (1<<1) /* Bit 1: Inc AC/Dec BC by 2 */
-#define TEST_STEP01 (1<<0) /* Bit 0: Inc AC/Dec BC by 1 */
-
-/* B5_<xx>_T3 32 bit Test Register 3 (xx) */
-/* Note: This register is only defined for the transmit queues */
- /* Bit 31..8: reserved */
-#define T3_MUX_2 (1<<7) /* Bit 7: (ML) Mux position MSB */
-#define T3_VRAM_2 (1<<6) /* Bit 6: (ML) Virtual RAM buffer addr MSB */
-#define T3_LOOP (1<<5) /* Bit 5: Set Loopback (Xmit) */
-#define T3_UNLOOP (1<<4) /* Bit 4: Unset Loopback (Xmit) */
-#define T3_MUX (3<<2) /* Bit 3..2: Mux position */
-#define T3_VRAM (3<<0) /* Bit 1..0: Virtual RAM buffer Address */
-
-/* PCI card IDs */
-/*
- * Note: The following 4 byte definitions shall not be used! Use OEM Concept!
- */
-#define PCI_VEND_ID0 0x48 /* PCI vendor ID (SysKonnect) */
-#define PCI_VEND_ID1 0x11 /* PCI vendor ID (SysKonnect) */
- /* (High byte) */
-#define PCI_DEV_ID0 0x00 /* PCI device ID */
-#define PCI_DEV_ID1 0x40 /* PCI device ID (High byte) */
-
-/*#define PCI_CLASS 0x02*/ /* PCI class code: network device */
-#define PCI_NW_CLASS 0x02 /* PCI class code: network device */
-#define PCI_SUB_CLASS 0x02 /* PCI subclass ID: FDDI device */
-#define PCI_PROG_INTFC 0x00 /* PCI programming Interface (=0) */
-
-/*
- * address transmission from logical to physical offset address on board
- */
-#define FMA(a) (0x0400|((a)<<2)) /* FORMAC+ (r/w) (SN3) */
-#define P1(a) (0x0380|((a)<<2)) /* PLC1 (r/w) (DAS) */
-#define P2(a) (0x0600|((a)<<2)) /* PLC2 (r/w) (covered by the SN3) */
-#define PRA(a) (B2_MAC_0 + (a)) /* configuration PROM (MAC address) */
-
-/*
- * FlashProm specification
- */
-#define MAX_PAGES 0x20000L /* Every byte has a single page */
-#define MAX_FADDR 1 /* 1 byte per page */
-
-/*
- * Receive / Transmit Buffer Control word
- */
-#define BMU_OWN (1UL<<31) /* OWN bit: 0 == host, 1 == adapter */
-#define BMU_STF (1L<<30) /* Start of Frame ? */
-#define BMU_EOF (1L<<29) /* End of Frame ? */
-#define BMU_EN_IRQ_EOB (1L<<28) /* Enable "End of Buffer" IRQ */
-#define BMU_EN_IRQ_EOF (1L<<27) /* Enable "End of Frame" IRQ */
-#define BMU_DEV_0 (1L<<26) /* RX: don't transfer to system mem */
-#define BMU_SMT_TX (1L<<25) /* TX: if set, buffer type SMT_MBuf */
-#define BMU_ST_BUF (1L<<25) /* RX: copy of start of frame */
-#define BMU_UNUSED (1L<<24) /* Set if the Descr is curr unused */
-#define BMU_SW (3L<<24) /* 2 Bits reserved for SW usage */
-#define BMU_CHECK 0x00550000L /* To identify the control word */
-#define BMU_BBC 0x0000FFFFL /* R/T Buffer Byte Count */
-
-/*
- * physical address offset + IO-Port base address
- */
-#ifdef MEM_MAPPED_IO
-#define ADDR(a) (char far *) smc->hw.iop+(a)
-#define ADDRS(smc,a) (char far *) (smc)->hw.iop+(a)
-#else
-#define ADDR(a) (((a)>>7) ? (outp(smc->hw.iop+B0_RAP,(a)>>7), \
- (smc->hw.iop+(((a)&0x7F)|((a)>>7 ? 0x80:0)))) : \
- (smc->hw.iop+(((a)&0x7F)|((a)>>7 ? 0x80:0))))
-#define ADDRS(smc,a) (((a)>>7) ? (outp((smc)->hw.iop+B0_RAP,(a)>>7), \
- ((smc)->hw.iop+(((a)&0x7F)|((a)>>7 ? 0x80:0)))) : \
- ((smc)->hw.iop+(((a)&0x7F)|((a)>>7 ? 0x80:0))))
-#endif
-
-/*
- * Define a macro to access the configuration space
- */
-#define PCI_C(a) ADDR(B3_CFG_SPC + (a)) /* PCI Config Space */
-
-#define EXT_R(a) ADDR(B6_EXT_REG + (a)) /* External Registers */
-
-/*
- * Define some values needed for the MAC address (PROM)
- */
-#define SA_MAC (0) /* start addr. MAC_AD within the PROM */
-#define PRA_OFF (0) /* offset correction when 4th byte reading */
-
-#define SKFDDI_PSZ 8 /* address PROM size */
-
-#define FM_A(a) ADDR(FMA(a)) /* FORMAC Plus physical addr */
-#define P1_A(a) ADDR(P1(a)) /* PLC1 (r/w) */
-#define P2_A(a) ADDR(P2(a)) /* PLC2 (r/w) (DAS) */
-#define PR_A(a) ADDR(PRA(a)) /* config. PROM (MAC address) */
-
-/*
- * Macro to read the PROM
- */
-#define READ_PROM(a) ((u_char)inp(a))
-
-#define GET_PAGE(bank) outpd(ADDR(B2_FAR),bank)
-#define VPP_ON()
-#define VPP_OFF()
-
-/*
- * Note: Values of the Interrupt Source Register are defined above
- */
-#define ISR_A ADDR(B0_ISRC)
-#define GET_ISR() inpd(ISR_A)
-#define GET_ISR_SMP(iop) inpd((iop)+B0_ISRC)
-#define CHECK_ISR() (inpd(ISR_A) & inpd(ADDR(B0_IMSK)))
-#define CHECK_ISR_SMP(iop) (inpd((iop)+B0_ISRC) & inpd((iop)+B0_IMSK))
-
-#define BUS_CHECK()
-
-/*
- * CLI_FBI: Disable Board Interrupts
- * STI_FBI: Enable Board Interrupts
- */
-#ifndef UNIX
-#define CLI_FBI() outpd(ADDR(B0_IMSK),0)
-#else
-#define CLI_FBI(smc) outpd(ADDRS((smc),B0_IMSK),0)
-#endif
-
-#ifndef UNIX
-#define STI_FBI() outpd(ADDR(B0_IMSK),smc->hw.is_imask)
-#else
-#define STI_FBI(smc) outpd(ADDRS((smc),B0_IMSK),(smc)->hw.is_imask)
-#endif
-
-#define CLI_FBI_SMP(iop) outpd((iop)+B0_IMSK,0)
-#define STI_FBI_SMP(smc,iop) outpd((iop)+B0_IMSK,(smc)->hw.is_imask)
-
-#endif /* PCI */
-/*--------------------------------------------------------------------------*/
-
-/*
- * 12 bit transfer (dword) counter:
- * (ISA: 2*trc = number of byte)
- * (EISA: 4*trc = number of byte)
- * (MCA: 4*trc = number of byte)
- */
-#define MAX_TRANS (0x0fff)
-
-/*
- * PC PIC
- */
-#define MST_8259 (0x20)
-#define SLV_8259 (0xA0)
-
-#define TPS (18) /* ticks per second */
-
-/*
- * error timer defs
- */
-#define TN (4) /* number of supported timer = TN+1 */
-#define SNPPND_TIME (5) /* buffer memory access over mem. data reg. */
-
-#define MAC_AD 0x405a0000
-
-#define MODR1 FM_A(FM_MDREG1) /* mode register 1 */
-#define MODR2 FM_A(FM_MDREG2) /* mode register 2 */
-
-#define CMDR1 FM_A(FM_CMDREG1) /* command register 1 */
-#define CMDR2 FM_A(FM_CMDREG2) /* command register 2 */
-
-
-/*
- * function defines
- */
-#define CLEAR(io,mask) outpw((io),inpw(io)&(~(mask)))
-#define SET(io,mask) outpw((io),inpw(io)|(mask))
-#define GET(io,mask) (inpw(io)&(mask))
-#define SETMASK(io,val,mask) outpw((io),(inpw(io) & ~(mask)) | (val))
-
-/*
- * PHY Port A (PA) = PLC 1
- * With SuperNet 3 PHY-A and PHY S are identical.
- */
-#define PLC(np,reg) (((np) == PA) ? P2_A(reg) : P1_A(reg))
-
-/*
- * set memory address register for write and read
- */
-#define MARW(ma) outpw(FM_A(FM_MARW),(unsigned int)(ma))
-#define MARR(ma) outpw(FM_A(FM_MARR),(unsigned int)(ma))
-
-/*
- * read/write from/to memory data register
- */
-/* write double word */
-#define MDRW(dd) outpw(FM_A(FM_MDRU),(unsigned int)((dd)>>16)) ;\
- outpw(FM_A(FM_MDRL),(unsigned int)(dd))
-
-#ifndef WINNT
-/* read double word */
-#define MDRR() (((long)inpw(FM_A(FM_MDRU))<<16) + inpw(FM_A(FM_MDRL)))
-
-/* read FORMAC+ 32-bit status register */
-#define GET_ST1() (((long)inpw(FM_A(FM_ST1U))<<16) + inpw(FM_A(FM_ST1L)))
-#define GET_ST2() (((long)inpw(FM_A(FM_ST2U))<<16) + inpw(FM_A(FM_ST2L)))
-#ifdef SUPERNET_3
-#define GET_ST3() (((long)inpw(FM_A(FM_ST3U))<<16) + inpw(FM_A(FM_ST3L)))
-#endif
-#else
-/* read double word */
-#define MDRR() inp2w((FM_A(FM_MDRU)),(FM_A(FM_MDRL)))
-
-/* read FORMAC+ 32-bit status register */
-#define GET_ST1() inp2w((FM_A(FM_ST1U)),(FM_A(FM_ST1L)))
-#define GET_ST2() inp2w((FM_A(FM_ST2U)),(FM_A(FM_ST2L)))
-#ifdef SUPERNET_3
-#define GET_ST3() inp2w((FM_A(FM_ST3U)),(FM_A(FM_ST3L)))
-#endif
-#endif
-
-/* Special timer macro for 82c54 */
- /* timer access over data bus bit 8..15 */
-#define OUT_82c54_TIMER(port,val) outpw(TI_A(port),(val)<<8)
-#define IN_82c54_TIMER(port) ((inpw(TI_A(port))>>8) & 0xff)
-
-
-#ifdef DEBUG
-#define DB_MAC(mac,st) {if (debug_mac & 0x1)\
- printf("M") ;\
- if (debug_mac & 0x2)\
- printf("\tMAC %d status 0x%08lx\n",mac,st) ;\
- if (debug_mac & 0x4)\
- dp_mac(mac,st) ;\
-}
-
-#define DB_PLC(p,iev) { if (debug_plc & 0x1)\
- printf("P") ;\
- if (debug_plc & 0x2)\
- printf("\tPLC %s Int 0x%04x\n", \
- (p == PA) ? "A" : "B", iev) ;\
- if (debug_plc & 0x4)\
- dp_plc(p,iev) ;\
-}
-
-#define DB_TIMER() { if (debug_timer & 0x1)\
- printf("T") ;\
- if (debug_timer & 0x2)\
- printf("\tTimer ISR\n") ;\
-}
-
-#else /* no DEBUG */
-
-#define DB_MAC(mac,st)
-#define DB_PLC(p,iev)
-#define DB_TIMER()
-
-#endif /* no DEBUG */
-
-#define INC_PTR(sp,cp,ep) if (++cp == ep) cp = sp
-/*
- * timer defs
- */
-#define COUNT(t) ((t)<<6) /* counter */
-#define RW_OP(o) ((o)<<4) /* read/write operation */
-#define TMODE(m) ((m)<<1) /* timer mode */
-
-#endif
diff --git a/drivers/net/skfp/h/skfbiinc.h b/drivers/net/skfp/h/skfbiinc.h
deleted file mode 100644
index ac2d7192f1ca..000000000000
--- a/drivers/net/skfp/h/skfbiinc.h
+++ /dev/null
@@ -1,97 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _SKFBIINC_
-#define _SKFBIINC_
-
-#include "h/supern_2.h"
-
-/*
- * special defines for use into .asm files
- */
-#define ERR_FLAGS (FS_MSRABT | FS_SEAC2 | FS_SFRMERR | FS_SFRMTY1)
-
-#ifdef PCI
-#define IMASK_FAST (IS_PLINT1 | IS_PLINT2 | IS_TIMINT | IS_TOKEN | \
- IS_MINTR2 | IS_MINTR3 | IS_R1_P | \
- IS_R1_C | IS_XA_C | IS_XS_C)
-#endif
-
-#ifdef PCI
-#define ISR_MASK (IS_MINTR1 | IS_R1_F | IS_XS_F| IS_XA_F | IMASK_FAST)
-#else
-#define ISR_MASK (IS_MINTR1 | IS_MINTR2 | IMASK_FAST)
-#endif
-
-#define FMA_FM_CMDREG1 FMA(FM_CMDREG1)
-#define FMA_FM_CMDREG2 FMA(FM_CMDREG2)
-#define FMA_FM_STMCHN FMA(FM_STMCHN)
-#define FMA_FM_RPR FMA(FM_RPR)
-#define FMA_FM_WPXA0 FMA(FM_WPXA0)
-#define FMA_FM_WPXA2 FMA(FM_WPXA2)
-#define FMA_FM_MARR FMA(FM_MARR)
-#define FMA_FM_MARW FMA(FM_MARW)
-#define FMA_FM_MDRU FMA(FM_MDRU)
-#define FMA_FM_MDRL FMA(FM_MDRL)
-#define FMA_ST1L FMA(FM_ST1L)
-#define FMA_ST1U FMA(FM_ST1U)
-#define FMA_ST2L FMA(FM_ST2L)
-#define FMA_ST2U FMA(FM_ST2U)
-#ifdef SUPERNET_3
-#define FMA_ST3L FMA(FM_ST3L)
-#define FMA_ST3U FMA(FM_ST3U)
-#endif
-
-#define TMODE_RRQ RQ_RRQ
-#define TMODE_WAQ2 RQ_WA2
-#define HSRA HSR(0)
-
-
-#define FMA_FM_ST1L FMA_ST1L
-#define FMA_FM_ST1U FMA_ST1U
-#define FMA_FM_ST2L FMA_ST2L
-#define FMA_FM_ST2U FMA_ST2U
-#ifdef SUPERNET_3
-#define FMA_FM_ST3L FMA_ST3L
-#define FMA_FM_ST3U FMA_ST3U
-#endif
-
-#define FMA_FM_SWPR FMA(FM_SWPR)
-
-#define FMA_FM_RPXA0 FMA(FM_RPXA0)
-
-#define FMA_FM_RPXS FMA(FM_RPXS)
-#define FMA_FM_WPXS FMA(FM_WPXS)
-
-#define FMA_FM_IMSK1U FMA(FM_IMSK1U)
-#define FMA_FM_IMSK1L FMA(FM_IMSK1L)
-
-#define FMA_FM_EAS FMA(FM_EAS)
-#define FMA_FM_EAA0 FMA(FM_EAA0)
-
-#define TMODE_WAQ0 RQ_WA0
-#define TMODE_WSQ RQ_WSQ
-
-/* Define default for DRV_PCM_STATE_CHANGE */
-#ifndef DRV_PCM_STATE_CHANGE
-#define DRV_PCM_STATE_CHANGE(smc,plc,p_state) /* nothing */
-#endif
-
-/* Define default for DRV_RMT_INDICATION */
-#ifndef DRV_RMT_INDICATION
-#define DRV_RMT_INDICATION(smc,i) /* nothing */
-#endif
-
-#endif /* n_SKFBIINC_ */
-
diff --git a/drivers/net/skfp/h/smc.h b/drivers/net/skfp/h/smc.h
deleted file mode 100644
index c774a95902f5..000000000000
--- a/drivers/net/skfp/h/smc.h
+++ /dev/null
@@ -1,488 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _SCMECM_
-#define _SCMECM_
-
-#if defined(PCI) && !defined(OSDEF)
-/*
- * In the case of the PCI bus the file osdef1st.h must be present
- */
-#define OSDEF
-#endif
-
-#ifdef PCI
-#ifndef SUPERNET_3
-#define SUPERNET_3
-#endif
-#ifndef TAG_MODE
-#define TAG_MODE
-#endif
-#endif
-
-/*
- * include all other files in required order
- * the following files must have been included before:
- * types.h
- * fddi.h
- */
-#ifdef OSDEF
-#include "h/osdef1st.h"
-#endif /* OSDEF */
-#ifdef OEM_CONCEPT
-#include "oemdef.h"
-#endif /* OEM_CONCEPT */
-#include "h/smt.h"
-#include "h/cmtdef.h"
-#include "h/fddimib.h"
-#include "h/targethw.h" /* all target hw dependencies */
-#include "h/targetos.h" /* all target os dependencies */
-#ifdef ESS
-#include "h/sba.h"
-#endif
-
-/*
- * Event Queue
- * queue.c
- * events are class/value pairs
- * class is addressee, e.g. RMT, PCM etc.
- * value is command, e.g. line state change, ring op change etc.
- */
-struct event_queue {
- u_short class ; /* event class */
- u_short event ; /* event value */
-} ;
-
-/*
- * define event queue as circular buffer
- */
-#ifdef CONCENTRATOR
-#define MAX_EVENT 128
-#else /* nCONCENTRATOR */
-#define MAX_EVENT 64
-#endif /* nCONCENTRATOR */
-
-struct s_queue {
-
- struct event_queue ev_queue[MAX_EVENT];
- struct event_queue *ev_put ;
- struct event_queue *ev_get ;
-} ;
-
-/*
- * ECM - Entity Coordination Management
- * ecm.c
- */
-struct s_ecm {
- u_char path_test ; /* ECM path test variable */
- u_char sb_flag ; /* ECM stuck bypass */
- u_char DisconnectFlag ; /* jd 05-Aug-1999 Bug #10419
- * ECM disconnected */
- u_char ecm_line_state ; /* flag to dispatcher : line states */
- u_long trace_prop ; /* ECM Trace_Prop flag >= 16 bits !! */
- /* NUMPHYS note:
- * this variable must have enough bits to hold all entiies in
- * the station. So NUMPHYS may not be greater than 31.
- */
- char ec_pad[2] ;
- struct smt_timer ecm_timer ; /* timer */
-} ;
-
-
-/*
- * RMT - Ring Management
- * rmt.c
- */
-struct s_rmt {
- u_char dup_addr_test ; /* state of dupl. addr. test */
- u_char da_flag ; /* flag : duplicate address det. */
- u_char loop_avail ; /* flag : MAC available for loopback */
- u_char sm_ma_avail ; /* flag : MAC available for SMT */
- u_char no_flag ; /* flag : ring not operational */
- u_char bn_flag ; /* flag : MAC reached beacon state */
- u_char jm_flag ; /* flag : jamming in NON_OP_DUP */
- u_char rm_join ; /* CFM flag RM_Join */
- u_char rm_loop ; /* CFM flag RM_Loop */
-
- long fast_rm_join ; /* bit mask of active ports */
- /*
- * timer and flags
- */
- struct smt_timer rmt_timer0 ; /* timer 0 */
- struct smt_timer rmt_timer1 ; /* timer 1 */
- struct smt_timer rmt_timer2 ; /* timer 2 */
- u_char timer0_exp ; /* flag : timer 0 expired */
- u_char timer1_exp ; /* flag : timer 1 expired */
- u_char timer2_exp ; /* flag : timer 2 expired */
-
- u_char rm_pad1[1] ;
-} ;
-
-/*
- * CFM - Configuration Management
- * cfm.c
- * used for SAS and DAS
- */
-struct s_cfm {
- u_char cf_state; /* CFM state machine current state */
- u_char cf_pad[3] ;
-} ;
-
-/*
- * CEM - Configuration Element Management
- * cem.c
- * used for Concentrator
- */
-#ifdef CONCENTRATOR
-struct s_cem {
- int ce_state ; /* CEM state */
- int ce_port ; /* PA PB PM PM+1 .. */
- int ce_type ; /* TA TB TS TM */
-} ;
-
-/*
- * linked list of CCEs in current token path
- */
-struct s_c_ring {
- struct s_c_ring *c_next ;
- char c_entity ;
-} ;
-
-struct mib_path_config {
- u_long fddimibPATHConfigSMTIndex;
- u_long fddimibPATHConfigPATHIndex;
- u_long fddimibPATHConfigTokenOrder;
- u_long fddimibPATHConfigResourceType;
-#define SNMP_RES_TYPE_MAC 2 /* Resource is a MAC */
-#define SNMP_RES_TYPE_PORT 4 /* Resource is a PORT */
- u_long fddimibPATHConfigResourceIndex;
- u_long fddimibPATHConfigCurrentPath;
-#define SNMP_PATH_ISOLATED 1 /* Current path is isolated */
-#define SNMP_PATH_LOCAL 2 /* Current path is local */
-#define SNMP_PATH_SECONDARY 3 /* Current path is secondary */
-#define SNMP_PATH_PRIMARY 4 /* Current path is primary */
-#define SNMP_PATH_CONCATENATED 5 /* Current path is concatenated */
-#define SNMP_PATH_THRU 6 /* Current path is thru */
-};
-
-
-#endif
-
-/*
- * PCM connect states
- */
-#define PCM_DISABLED 0
-#define PCM_CONNECTING 1
-#define PCM_STANDBY 2
-#define PCM_ACTIVE 3
-
-struct s_pcm {
- u_char pcm_pad[3] ;
-} ;
-
-/*
- * PHY struct
- * one per physical port
- */
-struct s_phy {
- /* Inter Module Globals */
- struct fddi_mib_p *mib ;
-
- u_char np ; /* index 0 .. NUMPHYS */
- u_char cf_join ;
- u_char cf_loop ;
- u_char wc_flag ; /* withhold connection flag */
- u_char pc_mode ; /* Holds the negotiated mode of the PCM */
- u_char pc_lem_fail ; /* flag : LCT failed */
- u_char lc_test ;
- u_char scrub ; /* CFM flag Scrub -> PCM */
- char phy_name ;
- u_char pmd_type[2] ; /* SK connector/transceiver type codes */
-#define PMD_SK_CONN 0 /* pmd_type[PMD_SK_CONN] = Connector */
-#define PMD_SK_PMD 1 /* pmd_type[PMD_SK_PMD] = Xver */
- u_char pmd_scramble ; /* scrambler on/off */
-
- /* inner Module Globals */
- u_char curr_ls ; /* current line state */
- u_char ls_flag ;
- u_char rc_flag ;
- u_char tc_flag ;
- u_char td_flag ;
- u_char bitn ;
- u_char tr_flag ; /* trace recvd while in active */
- u_char twisted ; /* flag to indicate an A-A or B-B connection */
- u_char t_val[NUMBITS] ; /* transmit bits for signaling */
- u_char r_val[NUMBITS] ; /* receive bits for signaling */
- u_long t_next[NUMBITS] ;
- struct smt_timer pcm_timer0 ;
- struct smt_timer pcm_timer1 ;
- struct smt_timer pcm_timer2 ;
- u_char timer0_exp ;
- u_char timer1_exp ;
- u_char timer2_exp ;
- u_char pcm_pad1[1] ;
- int cem_pst ; /* CEM privae state; used for dual homing */
- struct lem_counter lem ;
-#ifdef AMDPLC
- struct s_plc plc ;
-#endif
-} ;
-
-/*
- * timer package
- * smttimer.c
- */
-struct s_timer {
- struct smt_timer *st_queue ;
- struct smt_timer st_fast ;
-} ;
-
-/*
- * SRF types and data
- */
-#define SMT_EVENT_BASE 1
-#define SMT_EVENT_MAC_PATH_CHANGE (SMT_EVENT_BASE+0)
-#define SMT_EVENT_MAC_NEIGHBOR_CHANGE (SMT_EVENT_BASE+1)
-#define SMT_EVENT_PORT_PATH_CHANGE (SMT_EVENT_BASE+2)
-#define SMT_EVENT_PORT_CONNECTION (SMT_EVENT_BASE+3)
-
-#define SMT_IS_CONDITION(x) ((x)>=SMT_COND_BASE)
-
-#define SMT_COND_BASE (SMT_EVENT_PORT_CONNECTION+1)
-#define SMT_COND_SMT_PEER_WRAP (SMT_COND_BASE+0)
-#define SMT_COND_SMT_HOLD (SMT_COND_BASE+1)
-#define SMT_COND_MAC_FRAME_ERROR (SMT_COND_BASE+2)
-#define SMT_COND_MAC_DUP_ADDR (SMT_COND_BASE+3)
-#define SMT_COND_MAC_NOT_COPIED (SMT_COND_BASE+4)
-#define SMT_COND_PORT_EB_ERROR (SMT_COND_BASE+5)
-#define SMT_COND_PORT_LER (SMT_COND_BASE+6)
-
-#define SR0_WAIT 0
-#define SR1_HOLDOFF 1
-#define SR2_DISABLED 2
-
-struct s_srf {
- u_long SRThreshold ; /* threshold value */
- u_char RT_Flag ; /* report transmitted flag */
- u_char sr_state ; /* state-machine */
- u_char any_report ; /* any report required */
- u_long TSR ; /* timer */
- u_short ring_status ; /* IBM ring status */
-} ;
-
-/*
- * IBM token ring status
- */
-#define RS_RES15 (1<<15) /* reserved */
-#define RS_HARDERROR (1<<14) /* ring down */
-#define RS_SOFTERROR (1<<13) /* sent SRF */
-#define RS_BEACON (1<<12) /* transmitted beacon */
-#define RS_PATHTEST (1<<11) /* path test failed */
-#define RS_SELFTEST (1<<10) /* selftest required */
-#define RS_RES9 (1<< 9) /* reserved */
-#define RS_DISCONNECT (1<< 8) /* remote disconnect */
-#define RS_RES7 (1<< 7) /* reserved */
-#define RS_DUPADDR (1<< 6) /* duplicate address */
-#define RS_NORINGOP (1<< 5) /* no ring op */
-#define RS_VERSION (1<< 4) /* SMT version mismatch */
-#define RS_STUCKBYPASSS (1<< 3) /* stuck bypass */
-#define RS_EVENT (1<< 2) /* FDDI event occurred */
-#define RS_RINGOPCHANGE (1<< 1) /* ring op changed */
-#define RS_RES0 (1<< 0) /* reserved */
-
-#define RS_SET(smc,bit) \
- ring_status_indication(smc,smc->srf.ring_status |= bit)
-#define RS_CLEAR(smc,bit) \
- ring_status_indication(smc,smc->srf.ring_status &= ~bit)
-
-#define RS_CLEAR_EVENT (0xffff & ~(RS_NORINGOP))
-
-/* Define the AIX-event-Notification as null function if it isn't defined */
-/* in the targetos.h file */
-#ifndef AIX_EVENT
-#define AIX_EVENT(smc,opt0,opt1,opt2,opt3) /* nothing */
-#endif
-
-struct s_srf_evc {
- u_char evc_code ; /* event code type */
- u_char evc_index ; /* index for mult. instances */
- u_char evc_rep_required ; /* report required */
- u_short evc_para ; /* SMT Para Number */
- u_char *evc_cond_state ; /* condition state */
- u_char *evc_multiple ; /* multiple occurrence */
-} ;
-
-/*
- * Values used by frame based services
- * smt.c
- */
-#define SMT_MAX_TEST 5
-#define SMT_TID_NIF 0 /* pending NIF request */
-#define SMT_TID_NIF_TEST 1 /* pending NIF test */
-#define SMT_TID_ECF_UNA 2 /* pending ECF UNA test */
-#define SMT_TID_ECF_DNA 3 /* pending ECF DNA test */
-#define SMT_TID_ECF 4 /* pending ECF test */
-
-struct smt_values {
- u_long smt_tvu ; /* timer valid una */
- u_long smt_tvd ; /* timer valid dna */
- u_long smt_tid ; /* transaction id */
- u_long pend[SMT_MAX_TEST] ; /* TID of requests */
- u_long uniq_time ; /* unique time stamp */
- u_short uniq_ticks ; /* unique time stamp */
- u_short please_reconnect ; /* flag : reconnect */
- u_long smt_last_lem ;
- u_long smt_last_notify ;
- struct smt_timer smt_timer ; /* SMT NIF timer */
- u_long last_tok_time[NUMMACS]; /* token cnt emulation */
-} ;
-
-/*
- * SMT/CMT configurable parameters
- */
-#define SMT_DAS 0 /* dual attach */
-#define SMT_SAS 1 /* single attach */
-#define SMT_NAC 2 /* null attach concentrator */
-
-struct smt_config {
- u_char attach_s ; /* CFM attach to secondary path */
- u_char sas ; /* SMT_DAS/SAS/NAC */
- u_char build_ring_map ; /* build ringmap if TRUE */
- u_char numphys ; /* number of active phys */
- u_char sc_pad[1] ;
-
- u_long pcm_tb_min ; /* PCM : TB_Min timer value */
- u_long pcm_tb_max ; /* PCM : TB_Max timer value */
- u_long pcm_c_min ; /* PCM : C_Min timer value */
- u_long pcm_t_out ; /* PCM : T_Out timer value */
- u_long pcm_tl_min ; /* PCM : TL_min timer value */
- u_long pcm_lc_short ; /* PCM : LC_Short timer value */
- u_long pcm_lc_medium ; /* PCM : LC_Medium timer value */
- u_long pcm_lc_long ; /* PCM : LC_Long timer value */
- u_long pcm_lc_extended ; /* PCM : LC_Extended timer value */
- u_long pcm_t_next_9 ; /* PCM : T_Next[9] timer value */
- u_long pcm_ns_max ; /* PCM : NS_Max timer value */
-
- u_long ecm_i_max ; /* ECM : I_Max timer value */
- u_long ecm_in_max ; /* ECM : IN_Max timer value */
- u_long ecm_td_min ; /* ECM : TD_Min timer */
- u_long ecm_test_done ; /* ECM : path test done timer */
- u_long ecm_check_poll ; /* ECM : check bypass poller */
-
- u_long rmt_t_non_op ; /* RMT : T_Non_OP timer value */
- u_long rmt_t_stuck ; /* RMT : T_Stuck timer value */
- u_long rmt_t_direct ; /* RMT : T_Direct timer value */
- u_long rmt_t_jam ; /* RMT : T_Jam timer value */
- u_long rmt_t_announce ; /* RMT : T_Announce timer value */
- u_long rmt_t_poll ; /* RMT : claim/beacon poller */
- u_long rmt_dup_mac_behavior ; /* Flag for the beavior of SMT if
- * a Duplicate MAC Address was detected.
- * FALSE: SMT will leave finally the ring
- * TRUE: SMT will reinstert into the ring
- */
- u_long mac_d_max ; /* MAC : D_Max timer value */
-
- u_long lct_short ; /* LCT : error threshold */
- u_long lct_medium ; /* LCT : error threshold */
- u_long lct_long ; /* LCT : error threshold */
- u_long lct_extended ; /* LCT : error threshold */
-} ;
-
-#ifdef DEBUG
-/*
- * Debugging struct sometimes used in smc
- */
-struct smt_debug {
- int d_smtf ;
- int d_smt ;
- int d_ecm ;
- int d_rmt ;
- int d_cfm ;
- int d_pcm ;
- int d_plc ;
-#ifdef ESS
- int d_ess ;
-#endif
-#ifdef SBA
- int d_sba ;
-#endif
- struct os_debug d_os; /* Include specific OS DEBUG struct */
-} ;
-
-#ifndef DEBUG_BRD
-/* all boards shall be debugged with one debug struct */
-extern struct smt_debug debug; /* Declaration of debug struct */
-#endif /* DEBUG_BRD */
-
-#endif /* DEBUG */
-
-/*
- * the SMT Context Struct SMC
- * this struct contains ALL global variables of SMT
- */
-struct s_smc {
- struct s_smt_os os ; /* os specific */
- struct s_smt_hw hw ; /* hardware */
-
-/*
- * NOTE: os and hw MUST BE the first two structs
- * anything beyond hw WILL BE SET TO ZERO in smt_set_defaults()
- */
- struct smt_config s ; /* smt constants */
- struct smt_values sm ; /* smt variables */
- struct s_ecm e ; /* ecm */
- struct s_rmt r ; /* rmt */
- struct s_cfm cf ; /* cfm/cem */
-#ifdef CONCENTRATOR
- struct s_cem ce[NUMPHYS] ; /* cem */
- struct s_c_ring cr[NUMPHYS+NUMMACS] ;
-#endif
- struct s_pcm p ; /* pcm */
- struct s_phy y[NUMPHYS] ; /* phy */
- struct s_queue q ; /* queue */
- struct s_timer t ; /* timer */
- struct s_srf srf ; /* SRF */
- struct s_srf_evc evcs[6+NUMPHYS*4] ;
- struct fddi_mib mib ; /* __THE_MIB__ */
-#ifdef SBA
- struct s_sba sba ; /* SBA variables */
-#endif
-#ifdef ESS
- struct s_ess ess ; /* Ess variables */
-#endif
-#if defined(DEBUG) && defined(DEBUG_BRD)
- /* If you want all single board to be debugged separately */
- struct smt_debug debug; /* Declaration of debug struct */
-#endif /* DEBUG_BRD && DEBUG */
-} ;
-
-extern const struct fddi_addr fddi_broadcast;
-
-extern void all_selection_criteria(struct s_smc *smc);
-extern void card_stop(struct s_smc *smc);
-extern void init_board(struct s_smc *smc, u_char *mac_addr);
-extern int init_fplus(struct s_smc *smc);
-extern void init_plc(struct s_smc *smc);
-extern int init_smt(struct s_smc *smc, u_char * mac_addr);
-extern void mac1_irq(struct s_smc *smc, u_short stu, u_short stl);
-extern void mac2_irq(struct s_smc *smc, u_short code_s2u, u_short code_s2l);
-extern void mac3_irq(struct s_smc *smc, u_short code_s3u, u_short code_s3l);
-extern int pcm_status_twisted(struct s_smc *smc);
-extern void plc1_irq(struct s_smc *smc);
-extern void plc2_irq(struct s_smc *smc);
-extern void read_address(struct s_smc *smc, u_char * mac_addr);
-extern void timer_irq(struct s_smc *smc);
-
-#endif /* _SCMECM_ */
-
diff --git a/drivers/net/skfp/h/smt.h b/drivers/net/skfp/h/smt.h
deleted file mode 100644
index 2030f9cbb24b..000000000000
--- a/drivers/net/skfp/h/smt.h
+++ /dev/null
@@ -1,882 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * SMT 7.2 frame definitions
- */
-
-#ifndef _SMT_
-#define _SMT_
-
-/* #define SMT5_10 */
-#define SMT6_10
-#define SMT7_20
-
-#define OPT_PMF /* if parameter management is supported */
-#define OPT_SRF /* if status report is supported */
-
-/*
- * SMT frame version 5.1
- */
-
-#define SMT_VID 0x0001 /* V 5.1 .. 6.1 */
-#define SMT_VID_2 0x0002 /* V 7.2 */
-
-struct smt_sid {
- u_char sid_oem[2] ; /* implementation spec. */
- struct fddi_addr sid_node ; /* node address */
-} ;
-
-typedef u_char t_station_id[8] ;
-
-/*
- * note on alignment :
- * sizeof(struct smt_header) = 32
- * all parameters are long aligned
- * if struct smt_header starts at offset 0, all longs are aligned correctly
- * (FC starts at offset 3)
- */
-_packed struct smt_header {
- struct fddi_addr smt_dest ; /* destination address */
- struct fddi_addr smt_source ; /* source address */
- u_char smt_class ; /* NIF, SIF ... */
- u_char smt_type ; /* req., response .. */
- u_short smt_version ; /* version id */
- u_int smt_tid ; /* transaction ID */
- struct smt_sid smt_sid ; /* station ID */
- u_short smt_pad ; /* pad with 0 */
- u_short smt_len ; /* length of info field */
-} ;
-#define SWAP_SMTHEADER "662sl8ss"
-
-#if 0
-/*
- * MAC FC values
- */
-#define FC_SMT_INFO 0x41 /* SMT info */
-#define FC_SMT_NSA 0x4f /* SMT Next Station Addressing */
-#endif
-
-
-/*
- * type codes
- */
-#define SMT_ANNOUNCE 0x01 /* announcement */
-#define SMT_REQUEST 0x02 /* request */
-#define SMT_REPLY 0x03 /* reply */
-
-/*
- * class codes
- */
-#define SMT_NIF 0x01 /* neighbor information frames */
-#define SMT_SIF_CONFIG 0x02 /* station information configuration */
-#define SMT_SIF_OPER 0x03 /* station information operation */
-#define SMT_ECF 0x04 /* echo frames */
-#define SMT_RAF 0x05 /* resource allocation */
-#define SMT_RDF 0x06 /* request denied */
-#define SMT_SRF 0x07 /* status report */
-#define SMT_PMF_GET 0x08 /* parameter management get */
-#define SMT_PMF_SET 0x09 /* parameter management set */
-#define SMT_ESF 0xff /* extended service */
-
-#define SMT_MAX_ECHO_LEN 4458 /* max length of SMT Echo */
-#if defined(CONC) || defined(CONC_II)
-#define SMT_TEST_ECHO_LEN 50 /* test length of SMT Echo */
-#else
-#define SMT_TEST_ECHO_LEN SMT_MAX_ECHO_LEN /* test length */
-#endif
-
-#define SMT_MAX_INFO_LEN (4352-20) /* max length for SMT info */
-
-
-/*
- * parameter types
- */
-
-struct smt_para {
- u_short p_type ; /* type */
- u_short p_len ; /* length of parameter */
-} ;
-
-#define PARA_LEN (sizeof(struct smt_para))
-
-#define SMTSETPARA(p,t) (p)->para.p_type = (t),\
- (p)->para.p_len = sizeof(*(p)) - PARA_LEN
-
-/*
- * P01 : Upstream Neighbor Address, UNA
- */
-#define SMT_P_UNA 0x0001 /* upstream neighbor address */
-#define SWAP_SMT_P_UNA "s6"
-
-struct smt_p_una {
- struct smt_para para ; /* generic parameter header */
- u_short una_pad ;
- struct fddi_addr una_node ; /* node address, zero if unknown */
-} ;
-
-/*
- * P02 : Station Descriptor
- */
-#define SMT_P_SDE 0x0002 /* station descriptor */
-#define SWAP_SMT_P_SDE "1111"
-
-#define SMT_SDE_STATION 0 /* end node */
-#define SMT_SDE_CONCENTRATOR 1 /* concentrator */
-
-struct smt_p_sde {
- struct smt_para para ; /* generic parameter header */
- u_char sde_type ; /* station type */
- u_char sde_mac_count ; /* number of MACs */
- u_char sde_non_master ; /* number of A,B or S ports */
- u_char sde_master ; /* number of S ports on conc. */
-} ;
-
-/*
- * P03 : Station State
- */
-#define SMT_P_STATE 0x0003 /* station state */
-#define SWAP_SMT_P_STATE "scc"
-
-struct smt_p_state {
- struct smt_para para ; /* generic parameter header */
- u_short st_pad ;
- u_char st_topology ; /* topology */
- u_char st_dupl_addr ; /* duplicate address detected */
-} ;
-#define SMT_ST_WRAPPED (1<<0) /* station wrapped */
-#define SMT_ST_UNATTACHED (1<<1) /* unattached concentrator */
-#define SMT_ST_TWISTED_A (1<<2) /* A-A connection, twisted ring */
-#define SMT_ST_TWISTED_B (1<<3) /* B-B connection, twisted ring */
-#define SMT_ST_ROOTED_S (1<<4) /* rooted station */
-#define SMT_ST_SRF (1<<5) /* SRF protocol supported */
-#define SMT_ST_SYNC_SERVICE (1<<6) /* use synchronous bandwidth */
-
-#define SMT_ST_MY_DUPA (1<<0) /* my station detected dupl. */
-#define SMT_ST_UNA_DUPA (1<<1) /* my UNA detected duplicate */
-
-/*
- * P04 : timestamp
- */
-#define SMT_P_TIMESTAMP 0x0004 /* time stamp */
-#define SWAP_SMT_P_TIMESTAMP "8"
-struct smt_p_timestamp {
- struct smt_para para ; /* generic parameter header */
- u_char ts_time[8] ; /* time, resolution 80nS, unique */
-} ;
-
-/*
- * P05 : station policies
- */
-#define SMT_P_POLICY 0x0005 /* station policies */
-#define SWAP_SMT_P_POLICY "ss"
-
-struct smt_p_policy {
- struct smt_para para ; /* generic parameter header */
- u_short pl_config ;
- u_short pl_connect ; /* bit string POLICY_AA ... */
-} ;
-#define SMT_PL_HOLD 1 /* hold policy supported (Dual MAC) */
-
-/*
- * P06 : latency equivalent
- */
-#define SMT_P_LATENCY 0x0006 /* latency */
-#define SWAP_SMT_P_LATENCY "ssss"
-
-/*
- * note: latency has two phy entries by definition
- * for a SAS, the 2nd one is null
- */
-struct smt_p_latency {
- struct smt_para para ; /* generic parameter header */
- u_short lt_phyout_idx1 ; /* index */
- u_short lt_latency1 ; /* latency , unit : byte clock */
- u_short lt_phyout_idx2 ; /* 0 if SAS */
- u_short lt_latency2 ; /* 0 if SAS */
-} ;
-
-/*
- * P07 : MAC neighbors
- */
-#define SMT_P_NEIGHBORS 0x0007 /* MAC neighbor description */
-#define SWAP_SMT_P_NEIGHBORS "ss66"
-
-struct smt_p_neighbor {
- struct smt_para para ; /* generic parameter header */
- u_short nb_mib_index ; /* MIB index */
- u_short nb_mac_index ; /* n+1 .. n+m, m = #MACs, n = #PHYs */
- struct fddi_addr nb_una ; /* UNA , 0 for unknown */
- struct fddi_addr nb_dna ; /* DNA , 0 for unknown */
-} ;
-
-/*
- * PHY record
- */
-#define SMT_PHY_A 0 /* A port */
-#define SMT_PHY_B 1 /* B port */
-#define SMT_PHY_S 2 /* slave port */
-#define SMT_PHY_M 3 /* master port */
-
-#define SMT_CS_DISABLED 0 /* connect state : disabled */
-#define SMT_CS_CONNECTING 1 /* connect state : connecting */
-#define SMT_CS_STANDBY 2 /* connect state : stand by */
-#define SMT_CS_ACTIVE 3 /* connect state : active */
-
-#define SMT_RM_NONE 0
-#define SMT_RM_MAC 1
-
-struct smt_phy_rec {
- u_short phy_mib_index ; /* MIB index */
- u_char phy_type ; /* A/B/S/M */
- u_char phy_connect_state ; /* disabled/connecting/active */
- u_char phy_remote_type ; /* A/B/S/M */
- u_char phy_remote_mac ; /* none/remote */
- u_short phy_resource_idx ; /* 1 .. n */
-} ;
-
-/*
- * MAC record
- */
-struct smt_mac_rec {
- struct fddi_addr mac_addr ; /* MAC address */
- u_short mac_resource_idx ; /* n+1 .. n+m */
-} ;
-
-/*
- * P08 : path descriptors
- * should be really an array ; however our environment has a fixed number of
- * PHYs and MACs
- */
-#define SMT_P_PATH 0x0008 /* path descriptor */
-#define SWAP_SMT_P_PATH "[6s]"
-
-struct smt_p_path {
- struct smt_para para ; /* generic parameter header */
- struct smt_phy_rec pd_phy[2] ; /* PHY A */
- struct smt_mac_rec pd_mac ; /* MAC record */
-} ;
-
-/*
- * P09 : MAC status
- */
-#define SMT_P_MAC_STATUS 0x0009 /* MAC status */
-#define SWAP_SMT_P_MAC_STATUS "sslllllllll"
-
-struct smt_p_mac_status {
- struct smt_para para ; /* generic parameter header */
- u_short st_mib_index ; /* MIB index */
- u_short st_mac_index ; /* n+1 .. n+m */
- u_int st_t_req ; /* T_Req */
- u_int st_t_neg ; /* T_Neg */
- u_int st_t_max ; /* T_Max */
- u_int st_tvx_value ; /* TVX_Value */
- u_int st_t_min ; /* T_Min */
- u_int st_sba ; /* synchr. bandwidth alloc */
- u_int st_frame_ct ; /* frame counter */
- u_int st_error_ct ; /* error counter */
- u_int st_lost_ct ; /* lost frames counter */
-} ;
-
-/*
- * P0A : PHY link error rate monitoring
- */
-#define SMT_P_LEM 0x000a /* link error monitor */
-#define SWAP_SMT_P_LEM "ssccccll"
-/*
- * units of lem_cutoff,lem_alarm,lem_estimate : 10**-x
- */
-struct smt_p_lem {
- struct smt_para para ; /* generic parameter header */
- u_short lem_mib_index ; /* MIB index */
- u_short lem_phy_index ; /* 1 .. n */
- u_char lem_pad2 ; /* be nice and make it even . */
- u_char lem_cutoff ; /* 0x4 .. 0xf, default 0x7 */
- u_char lem_alarm ; /* 0x4 .. 0xf, default 0x8 */
- u_char lem_estimate ; /* 0x0 .. 0xff */
- u_int lem_reject_ct ; /* 0x00000000 .. 0xffffffff */
- u_int lem_ct ; /* 0x00000000 .. 0xffffffff */
-} ;
-
-/*
- * P0B : MAC frame counters
- */
-#define SMT_P_MAC_COUNTER 0x000b /* MAC frame counters */
-#define SWAP_SMT_P_MAC_COUNTER "ssll"
-
-struct smt_p_mac_counter {
- struct smt_para para ; /* generic parameter header */
- u_short mc_mib_index ; /* MIB index */
- u_short mc_index ; /* mac index */
- u_int mc_receive_ct ; /* receive counter */
- u_int mc_transmit_ct ; /* transmit counter */
-} ;
-
-/*
- * P0C : MAC frame not copied counter
- */
-#define SMT_P_MAC_FNC 0x000c /* MAC frame not copied counter */
-#define SWAP_SMT_P_MAC_FNC "ssl"
-
-struct smt_p_mac_fnc {
- struct smt_para para ; /* generic parameter header */
- u_short nc_mib_index ; /* MIB index */
- u_short nc_index ; /* mac index */
- u_int nc_counter ; /* not copied counter */
-} ;
-
-
-/*
- * P0D : MAC priority values
- */
-#define SMT_P_PRIORITY 0x000d /* MAC priority values */
-#define SWAP_SMT_P_PRIORITY "ssl"
-
-struct smt_p_priority {
- struct smt_para para ; /* generic parameter header */
- u_short pr_mib_index ; /* MIB index */
- u_short pr_index ; /* mac index */
- u_int pr_priority[7] ; /* priority values */
-} ;
-
-/*
- * P0E : PHY elasticity buffer status
- */
-#define SMT_P_EB 0x000e /* PHY EB status */
-#define SWAP_SMT_P_EB "ssl"
-
-struct smt_p_eb {
- struct smt_para para ; /* generic parameter header */
- u_short eb_mib_index ; /* MIB index */
- u_short eb_index ; /* phy index */
- u_int eb_error_ct ; /* # of eb overflows */
-} ;
-
-/*
- * P0F : manufacturer field
- */
-#define SMT_P_MANUFACTURER 0x000f /* manufacturer field */
-#define SWAP_SMT_P_MANUFACTURER ""
-
-struct smp_p_manufacturer {
- struct smt_para para ; /* generic parameter header */
- u_char mf_data[32] ; /* OUI + arbitrary data */
-} ;
-
-/*
- * P10 : user field
- */
-#define SMT_P_USER 0x0010 /* manufacturer field */
-#define SWAP_SMT_P_USER ""
-
-struct smp_p_user {
- struct smt_para para ; /* generic parameter header */
- u_char us_data[32] ; /* arbitrary data */
-} ;
-
-
-
-/*
- * P11 : echo data
- */
-#define SMT_P_ECHODATA 0x0011 /* echo data */
-#define SWAP_SMT_P_ECHODATA ""
-
-struct smt_p_echo {
- struct smt_para para ; /* generic parameter header */
- u_char ec_data[SMT_MAX_ECHO_LEN-4] ; /* echo data */
-} ;
-
-/*
- * P12 : reason code
- */
-#define SMT_P_REASON 0x0012 /* reason code */
-#define SWAP_SMT_P_REASON "l"
-
-struct smt_p_reason {
- struct smt_para para ; /* generic parameter header */
- u_int rdf_reason ; /* CLASS/VERSION */
-} ;
-#define SMT_RDF_CLASS 0x00000001 /* class not supported */
-#define SMT_RDF_VERSION 0x00000002 /* version not supported */
-#define SMT_RDF_SUCCESS 0x00000003 /* success (PMF) */
-#define SMT_RDF_BADSET 0x00000004 /* bad set count (PMF) */
-#define SMT_RDF_ILLEGAL 0x00000005 /* read only (PMF) */
-#define SMT_RDF_NOPARAM 0x6 /* parameter not supported (PMF) */
-#define SMT_RDF_RANGE 0x8 /* out of range */
-#define SMT_RDF_AUTHOR 0x9 /* not autohorized */
-#define SMT_RDF_LENGTH 0x0a /* length error */
-#define SMT_RDF_TOOLONG 0x0b /* length error */
-#define SMT_RDF_SBA 0x0d /* SBA denied */
-
-/*
- * P13 : refused frame beginning
- */
-#define SMT_P_REFUSED 0x0013 /* refused frame beginning */
-#define SWAP_SMT_P_REFUSED "l"
-
-struct smt_p_refused {
- struct smt_para para ; /* generic parameter header */
- u_int ref_fc ; /* 3 bytes 0 + FC */
- struct smt_header ref_header ; /* refused header */
-} ;
-
-/*
- * P14 : supported SMT versions
- */
-#define SMT_P_VERSION 0x0014 /* SMT supported versions */
-#define SWAP_SMT_P_VERSION "sccss"
-
-struct smt_p_version {
- struct smt_para para ; /* generic parameter header */
- u_short v_pad ;
- u_char v_n ; /* 1 .. 0xff, #versions */
- u_char v_index ; /* 1 .. 0xff, index of op. v. */
- u_short v_version[1] ; /* list of min. 1 version */
- u_short v_pad2 ; /* pad if necessary */
-} ;
-
-/*
- * P15 : Resource Type
- */
-#define SWAP_SMT_P0015 "l"
-
-struct smt_p_0015 {
- struct smt_para para ; /* generic parameter header */
- u_int res_type ; /* recsource type */
-} ;
-
-#define SYNC_BW 0x00000001L /* Synchronous Bandwidth */
-
-/*
- * P16 : SBA Command
- */
-#define SWAP_SMT_P0016 "l"
-
-struct smt_p_0016 {
- struct smt_para para ; /* generic parameter header */
- u_int sba_cmd ; /* command for the SBA */
-} ;
-
-#define REQUEST_ALLOCATION 0x1 /* req allocation of sync bandwidth */
-#define REPORT_ALLOCATION 0x2 /* rep of sync bandwidth allocation */
-#define CHANGE_ALLOCATION 0x3 /* forces a station using sync band-*/
- /* width to change its current allo-*/
- /* cation */
-
-/*
- * P17 : SBA Payload Request
- */
-#define SWAP_SMT_P0017 "l"
-
-struct smt_p_0017 {
- struct smt_para para ; /* generic parameter header */
- int sba_pl_req ; /* total sync bandwidth measured in */
-} ; /* bytes per 125 us */
-
-/*
- * P18 : SBA Overhead Request
- */
-#define SWAP_SMT_P0018 "l"
-
-struct smt_p_0018 {
- struct smt_para para ; /* generic parameter header */
- int sba_ov_req ; /* total sync bandwidth req for overhead*/
-} ; /* measuered in bytes per T_Neg */
-
-/*
- * P19 : SBA Allocation Address
- */
-#define SWAP_SMT_P0019 "s6"
-
-struct smt_p_0019 {
- struct smt_para para ; /* generic parameter header */
- u_short sba_pad ;
- struct fddi_addr alloc_addr ; /* Allocation Address */
-} ;
-
-/*
- * P1A : SBA Category
- */
-#define SWAP_SMT_P001A "l"
-
-struct smt_p_001a {
- struct smt_para para ; /* generic parameter header */
- u_int category ; /* Allocator defined classification */
-} ;
-
-/*
- * P1B : Maximum T_Neg
- */
-#define SWAP_SMT_P001B "l"
-
-struct smt_p_001b {
- struct smt_para para ; /* generic parameter header */
- u_int max_t_neg ; /* longest T_NEG for the sync service*/
-} ;
-
-/*
- * P1C : Minimum SBA Segment Size
- */
-#define SWAP_SMT_P001C "l"
-
-struct smt_p_001c {
- struct smt_para para ; /* generic parameter header */
- u_int min_seg_siz ; /* smallest number of bytes per frame*/
-} ;
-
-/*
- * P1D : SBA Allocatable
- */
-#define SWAP_SMT_P001D "l"
-
-struct smt_p_001d {
- struct smt_para para ; /* generic parameter header */
- u_int allocatable ; /* total sync bw available for alloc */
-} ;
-
-/*
- * P20 0B : frame status capabilities
- * NOTE: not in swap table, is used by smt.c AND PMF table
- */
-#define SMT_P_FSC 0x200b
-/* #define SWAP_SMT_P_FSC "ssss" */
-
-struct smt_p_fsc {
- struct smt_para para ; /* generic parameter header */
- u_short fsc_pad0 ;
- u_short fsc_mac_index ; /* mac index 1 .. ff */
- u_short fsc_pad1 ;
- u_short fsc_value ; /* FSC_TYPE[0-2] */
-} ;
-
-#define FSC_TYPE0 0 /* "normal" node (A/C handling) */
-#define FSC_TYPE1 1 /* Special A/C indicator forwarding */
-#define FSC_TYPE2 2 /* Special A/C indicator forwarding */
-
-/*
- * P00 21 : user defined authoriziation (see pmf.c)
- */
-#define SMT_P_AUTHOR 0x0021
-
-/*
- * notification parameters
- */
-#define SWAP_SMT_P1048 "ll"
-struct smt_p_1048 {
- u_int p1048_flag ;
- u_int p1048_cf_state ;
-} ;
-
-/*
- * NOTE: all 2xxx 3xxx and 4xxx must include the INDEX in the swap string,
- * even so the INDEX is NOT part of the struct.
- * INDEX is already swapped in pmf.c, format in string is '4'
- */
-#define SWAP_SMT_P208C "4lss66"
-struct smt_p_208c {
- u_int p208c_flag ;
- u_short p208c_pad ;
- u_short p208c_dupcondition ;
- struct fddi_addr p208c_fddilong ;
- struct fddi_addr p208c_fddiunalong ;
-} ;
-
-#define SWAP_SMT_P208D "4lllll"
-struct smt_p_208d {
- u_int p208d_flag ;
- u_int p208d_frame_ct ;
- u_int p208d_error_ct ;
- u_int p208d_lost_ct ;
- u_int p208d_ratio ;
-} ;
-
-#define SWAP_SMT_P208E "4llll"
-struct smt_p_208e {
- u_int p208e_flag ;
- u_int p208e_not_copied ;
- u_int p208e_copied ;
- u_int p208e_not_copied_ratio ;
-} ;
-
-#define SWAP_SMT_P208F "4ll6666s6"
-
-struct smt_p_208f {
- u_int p208f_multiple ;
- u_int p208f_nacondition ;
- struct fddi_addr p208f_old_una ;
- struct fddi_addr p208f_new_una ;
- struct fddi_addr p208f_old_dna ;
- struct fddi_addr p208f_new_dna ;
- u_short p208f_curren_path ;
- struct fddi_addr p208f_smt_address ;
-} ;
-
-#define SWAP_SMT_P2090 "4lssl"
-
-struct smt_p_2090 {
- u_int p2090_multiple ;
- u_short p2090_availablepaths ;
- u_short p2090_currentpath ;
- u_int p2090_requestedpaths ;
-} ;
-
-/*
- * NOTE:
- * special kludge for parameters 320b,320f,3210
- * these parameters are part of RAF frames
- * RAF frames are parsed in SBA.C and must be swapped
- * PMF.C has special code to avoid double swapping
- */
-#ifdef LITTLE_ENDIAN
-#define SBAPATHINDEX (0x01000000L)
-#else
-#define SBAPATHINDEX (0x01L)
-#endif
-
-#define SWAP_SMT_P320B "42s"
-
-struct smt_p_320b {
- struct smt_para para ; /* generic parameter header */
- u_int mib_index ;
- u_short path_pad ;
- u_short path_index ;
-} ;
-
-#define SWAP_SMT_P320F "4l"
-
-struct smt_p_320f {
- struct smt_para para ; /* generic parameter header */
- u_int mib_index ;
- u_int mib_payload ;
-} ;
-
-#define SWAP_SMT_P3210 "4l"
-
-struct smt_p_3210 {
- struct smt_para para ; /* generic parameter header */
- u_int mib_index ;
- u_int mib_overhead ;
-} ;
-
-#define SWAP_SMT_P4050 "4l1111ll"
-
-struct smt_p_4050 {
- u_int p4050_flag ;
- u_char p4050_pad ;
- u_char p4050_cutoff ;
- u_char p4050_alarm ;
- u_char p4050_estimate ;
- u_int p4050_reject_ct ;
- u_int p4050_ct ;
-} ;
-
-#define SWAP_SMT_P4051 "4lssss"
-struct smt_p_4051 {
- u_int p4051_multiple ;
- u_short p4051_porttype ;
- u_short p4051_connectstate ;
- u_short p4051_pc_neighbor ;
- u_short p4051_pc_withhold ;
-} ;
-
-#define SWAP_SMT_P4052 "4ll"
-struct smt_p_4052 {
- u_int p4052_flag ;
- u_int p4052_eberrorcount ;
-} ;
-
-#define SWAP_SMT_P4053 "4lsslss"
-
-struct smt_p_4053 {
- u_int p4053_multiple ;
- u_short p4053_availablepaths ;
- u_short p4053_currentpath ;
- u_int p4053_requestedpaths ;
- u_short p4053_mytype ;
- u_short p4053_neighbortype ;
-} ;
-
-
-#define SMT_P_SETCOUNT 0x1035
-#define SWAP_SMT_P_SETCOUNT "l8"
-
-struct smt_p_setcount {
- struct smt_para para ; /* generic parameter header */
- u_int count ;
- u_char timestamp[8] ;
-} ;
-
-/*
- * SMT FRAMES
- */
-
-/*
- * NIF : neighbor information frames
- */
-struct smt_nif {
- struct smt_header smt ; /* generic header */
- struct smt_p_una una ; /* UNA */
- struct smt_p_sde sde ; /* station descriptor */
- struct smt_p_state state ; /* station state */
-#ifdef SMT6_10
- struct smt_p_fsc fsc ; /* frame status cap. */
-#endif
-} ;
-
-/*
- * SIF : station information frames
- */
-struct smt_sif_config {
- struct smt_header smt ; /* generic header */
- struct smt_p_timestamp ts ; /* time stamp */
- struct smt_p_sde sde ; /* station descriptor */
- struct smt_p_version version ; /* supported versions */
- struct smt_p_state state ; /* station state */
- struct smt_p_policy policy ; /* station policy */
- struct smt_p_latency latency ; /* path latency */
- struct smt_p_neighbor neighbor ; /* neighbors, we have only one*/
-#ifdef OPT_PMF
- struct smt_p_setcount setcount ; /* Set Count mandatory */
-#endif
- /* WARNING : path MUST BE LAST FIELD !!! (see smt.c:smt_fill_path) */
- struct smt_p_path path ; /* path descriptor */
-} ;
-#define SIZEOF_SMT_SIF_CONFIG (sizeof(struct smt_sif_config)- \
- sizeof(struct smt_p_path))
-
-struct smt_sif_operation {
- struct smt_header smt ; /* generic header */
- struct smt_p_timestamp ts ; /* time stamp */
- struct smt_p_mac_status status ; /* mac status */
- struct smt_p_mac_counter mc ; /* MAC counter */
- struct smt_p_mac_fnc fnc ; /* MAC frame not copied */
- struct smp_p_manufacturer man ; /* manufacturer field */
- struct smp_p_user user ; /* user field */
-#ifdef OPT_PMF
- struct smt_p_setcount setcount ; /* Set Count mandatory */
-#endif
- /* must be last */
- struct smt_p_lem lem[1] ; /* phy lem status */
-} ;
-#define SIZEOF_SMT_SIF_OPERATION (sizeof(struct smt_sif_operation)- \
- sizeof(struct smt_p_lem))
-
-/*
- * ECF : echo frame
- */
-struct smt_ecf {
- struct smt_header smt ; /* generic header */
- struct smt_p_echo ec_echo ; /* echo parameter */
-} ;
-#define SMT_ECF_LEN (sizeof(struct smt_header)+sizeof(struct smt_para))
-
-/*
- * RDF : request denied frame
- */
-struct smt_rdf {
- struct smt_header smt ; /* generic header */
- struct smt_p_reason reason ; /* reason code */
- struct smt_p_version version ; /* supported versions */
- struct smt_p_refused refused ; /* refused frame fragment */
-} ;
-
-/*
- * SBA Request Allocation Response Frame
- */
-struct smt_sba_alc_res {
- struct smt_header smt ; /* generic header */
- struct smt_p_0015 s_type ; /* resource type */
- struct smt_p_0016 cmd ; /* SBA command */
- struct smt_p_reason reason ; /* reason code */
- struct smt_p_320b path ; /* path type */
- struct smt_p_320f payload ; /* current SBA payload */
- struct smt_p_3210 overhead ; /* current SBA overhead */
- struct smt_p_0019 a_addr ; /* Allocation Address */
- struct smt_p_001a cat ; /* Category - from the request */
- struct smt_p_001d alloc ; /* SBA Allocatable */
-} ;
-
-/*
- * SBA Request Allocation Request Frame
- */
-struct smt_sba_alc_req {
- struct smt_header smt ; /* generic header */
- struct smt_p_0015 s_type ; /* resource type */
- struct smt_p_0016 cmd ; /* SBA command */
- struct smt_p_320b path ; /* path type */
- struct smt_p_0017 pl_req ; /* requested payload */
- struct smt_p_0018 ov_req ; /* requested SBA overhead */
- struct smt_p_320f payload ; /* current SBA payload */
- struct smt_p_3210 overhead ; /* current SBA overhead */
- struct smt_p_0019 a_addr ; /* Allocation Address */
- struct smt_p_001a cat ; /* Category - from the request */
- struct smt_p_001b tneg ; /* max T-NEG */
- struct smt_p_001c segm ; /* minimum segment size */
-} ;
-
-/*
- * SBA Change Allocation Request Frame
- */
-struct smt_sba_chg {
- struct smt_header smt ; /* generic header */
- struct smt_p_0015 s_type ; /* resource type */
- struct smt_p_0016 cmd ; /* SBA command */
- struct smt_p_320b path ; /* path type */
- struct smt_p_320f payload ; /* current SBA payload */
- struct smt_p_3210 overhead ; /* current SBA overhead */
- struct smt_p_001a cat ; /* Category - from the request */
-} ;
-
-/*
- * SBA Report Allocation Request Frame
- */
-struct smt_sba_rep_req {
- struct smt_header smt ; /* generic header */
- struct smt_p_0015 s_type ; /* resource type */
- struct smt_p_0016 cmd ; /* SBA command */
-} ;
-
-/*
- * SBA Report Allocation Response Frame
- */
-struct smt_sba_rep_res {
- struct smt_header smt ; /* generic header */
- struct smt_p_0015 s_type ; /* resource type */
- struct smt_p_0016 cmd ; /* SBA command */
- struct smt_p_320b path ; /* path type */
- struct smt_p_320f payload ; /* current SBA payload */
- struct smt_p_3210 overhead ; /* current SBA overhead */
-} ;
-
-/*
- * actions
- */
-#define SMT_STATION_ACTION 1
-#define SMT_STATION_ACTION_CONNECT 0
-#define SMT_STATION_ACTION_DISCONNECT 1
-#define SMT_STATION_ACTION_PATHTEST 2
-#define SMT_STATION_ACTION_SELFTEST 3
-#define SMT_STATION_ACTION_DISABLE_A 4
-#define SMT_STATION_ACTION_DISABLE_B 5
-#define SMT_STATION_ACTION_DISABLE_M 6
-
-#define SMT_PORT_ACTION 2
-#define SMT_PORT_ACTION_MAINT 0
-#define SMT_PORT_ACTION_ENABLE 1
-#define SMT_PORT_ACTION_DISABLE 2
-#define SMT_PORT_ACTION_START 3
-#define SMT_PORT_ACTION_STOP 4
-
-#endif /* _SMT_ */
diff --git a/drivers/net/skfp/h/smt_p.h b/drivers/net/skfp/h/smt_p.h
deleted file mode 100644
index 99f9be9552bb..000000000000
--- a/drivers/net/skfp/h/smt_p.h
+++ /dev/null
@@ -1,326 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * defines for all SMT attributes
- */
-
-/*
- * this boring file was produced by perl
- * thanks Larry !
- */
-#define SMT_P0012 0x0012
-
-#define SMT_P0015 0x0015
-#define SMT_P0016 0x0016
-#define SMT_P0017 0x0017
-#define SMT_P0018 0x0018
-#define SMT_P0019 0x0019
-
-#define SMT_P001A 0x001a
-#define SMT_P001B 0x001b
-#define SMT_P001C 0x001c
-#define SMT_P001D 0x001d
-
-#define SMT_P100A 0x100a
-#define SMT_P100B 0x100b
-#define SMT_P100C 0x100c
-#define SMT_P100D 0x100d
-#define SMT_P100E 0x100e
-#define SMT_P100F 0x100f
-#define SMT_P1010 0x1010
-#define SMT_P1011 0x1011
-#define SMT_P1012 0x1012
-#define SMT_P1013 0x1013
-#define SMT_P1014 0x1014
-#define SMT_P1015 0x1015
-#define SMT_P1016 0x1016
-#define SMT_P1017 0x1017
-#define SMT_P1018 0x1018
-#define SMT_P1019 0x1019
-#define SMT_P101A 0x101a
-#define SMT_P101B 0x101b
-#define SMT_P101C 0x101c
-#define SMT_P101D 0x101d
-#define SMT_P101E 0x101e
-#define SMT_P101F 0x101f
-#define SMT_P1020 0x1020
-#define SMT_P1021 0x1021
-#define SMT_P1022 0x1022
-#define SMT_P1023 0x1023
-#define SMT_P1024 0x1024
-#define SMT_P1025 0x1025
-#define SMT_P1026 0x1026
-#define SMT_P1027 0x1027
-#define SMT_P1028 0x1028
-#define SMT_P1029 0x1029
-#define SMT_P102A 0x102a
-#define SMT_P102B 0x102b
-#define SMT_P102C 0x102c
-#define SMT_P102D 0x102d
-#define SMT_P102E 0x102e
-#define SMT_P102F 0x102f
-#define SMT_P1030 0x1030
-#define SMT_P1031 0x1031
-#define SMT_P1032 0x1032
-#define SMT_P1033 0x1033
-#define SMT_P1034 0x1034
-#define SMT_P1035 0x1035
-#define SMT_P1036 0x1036
-#define SMT_P1037 0x1037
-#define SMT_P1038 0x1038
-#define SMT_P1039 0x1039
-#define SMT_P103A 0x103a
-#define SMT_P103B 0x103b
-#define SMT_P103C 0x103c
-#define SMT_P103D 0x103d
-#define SMT_P103E 0x103e
-#define SMT_P103F 0x103f
-#define SMT_P1040 0x1040
-#define SMT_P1041 0x1041
-#define SMT_P1042 0x1042
-#define SMT_P1043 0x1043
-#define SMT_P1044 0x1044
-#define SMT_P1045 0x1045
-#define SMT_P1046 0x1046
-#define SMT_P1047 0x1047
-#define SMT_P1048 0x1048
-#define SMT_P1049 0x1049
-#define SMT_P104A 0x104a
-#define SMT_P104B 0x104b
-#define SMT_P104C 0x104c
-#define SMT_P104D 0x104d
-#define SMT_P104E 0x104e
-#define SMT_P104F 0x104f
-#define SMT_P1050 0x1050
-#define SMT_P1051 0x1051
-#define SMT_P1052 0x1052
-#define SMT_P1053 0x1053
-#define SMT_P1054 0x1054
-
-#define SMT_P10F0 0x10f0
-#define SMT_P10F1 0x10f1
-#ifdef ESS
-#define SMT_P10F2 0x10f2
-#define SMT_P10F3 0x10f3
-#define SMT_P10F4 0x10f4
-#define SMT_P10F5 0x10f5
-#define SMT_P10F6 0x10f6
-#define SMT_P10F7 0x10f7
-#endif
-#ifdef SBA
-#define SMT_P10F8 0x10f8
-#define SMT_P10F9 0x10f9
-#endif
-
-#define SMT_P200A 0x200a
-#define SMT_P200B 0x200b
-#define SMT_P200C 0x200c
-#define SMT_P200D 0x200d
-#define SMT_P200E 0x200e
-#define SMT_P200F 0x200f
-#define SMT_P2010 0x2010
-#define SMT_P2011 0x2011
-#define SMT_P2012 0x2012
-#define SMT_P2013 0x2013
-#define SMT_P2014 0x2014
-#define SMT_P2015 0x2015
-#define SMT_P2016 0x2016
-#define SMT_P2017 0x2017
-#define SMT_P2018 0x2018
-#define SMT_P2019 0x2019
-#define SMT_P201A 0x201a
-#define SMT_P201B 0x201b
-#define SMT_P201C 0x201c
-#define SMT_P201D 0x201d
-#define SMT_P201E 0x201e
-#define SMT_P201F 0x201f
-#define SMT_P2020 0x2020
-#define SMT_P2021 0x2021
-#define SMT_P2022 0x2022
-#define SMT_P2023 0x2023
-#define SMT_P2024 0x2024
-#define SMT_P2025 0x2025
-#define SMT_P2026 0x2026
-#define SMT_P2027 0x2027
-#define SMT_P2028 0x2028
-#define SMT_P2029 0x2029
-#define SMT_P202A 0x202a
-#define SMT_P202B 0x202b
-#define SMT_P202C 0x202c
-#define SMT_P202D 0x202d
-#define SMT_P202E 0x202e
-#define SMT_P202F 0x202f
-#define SMT_P2030 0x2030
-#define SMT_P2031 0x2031
-#define SMT_P2032 0x2032
-#define SMT_P2033 0x2033
-#define SMT_P2034 0x2034
-#define SMT_P2035 0x2035
-#define SMT_P2036 0x2036
-#define SMT_P2037 0x2037
-#define SMT_P2038 0x2038
-#define SMT_P2039 0x2039
-#define SMT_P203A 0x203a
-#define SMT_P203B 0x203b
-#define SMT_P203C 0x203c
-#define SMT_P203D 0x203d
-#define SMT_P203E 0x203e
-#define SMT_P203F 0x203f
-#define SMT_P2040 0x2040
-#define SMT_P2041 0x2041
-#define SMT_P2042 0x2042
-#define SMT_P2043 0x2043
-#define SMT_P2044 0x2044
-#define SMT_P2045 0x2045
-#define SMT_P2046 0x2046
-#define SMT_P2047 0x2047
-#define SMT_P2048 0x2048
-#define SMT_P2049 0x2049
-#define SMT_P204A 0x204a
-#define SMT_P204B 0x204b
-#define SMT_P204C 0x204c
-#define SMT_P204D 0x204d
-#define SMT_P204E 0x204e
-#define SMT_P204F 0x204f
-#define SMT_P2050 0x2050
-#define SMT_P2051 0x2051
-#define SMT_P2052 0x2052
-#define SMT_P2053 0x2053
-#define SMT_P2054 0x2054
-#define SMT_P2055 0x2055
-#define SMT_P2056 0x2056
-#define SMT_P2057 0x2057
-#define SMT_P2058 0x2058
-#define SMT_P2059 0x2059
-#define SMT_P205A 0x205a
-#define SMT_P205B 0x205b
-#define SMT_P205C 0x205c
-#define SMT_P205D 0x205d
-#define SMT_P205E 0x205e
-#define SMT_P205F 0x205f
-#define SMT_P2060 0x2060
-#define SMT_P2061 0x2061
-#define SMT_P2062 0x2062
-#define SMT_P2063 0x2063
-#define SMT_P2064 0x2064
-#define SMT_P2065 0x2065
-#define SMT_P2066 0x2066
-#define SMT_P2067 0x2067
-#define SMT_P2068 0x2068
-#define SMT_P2069 0x2069
-#define SMT_P206A 0x206a
-#define SMT_P206B 0x206b
-#define SMT_P206C 0x206c
-#define SMT_P206D 0x206d
-#define SMT_P206E 0x206e
-#define SMT_P206F 0x206f
-#define SMT_P2070 0x2070
-#define SMT_P2071 0x2071
-#define SMT_P2072 0x2072
-#define SMT_P2073 0x2073
-#define SMT_P2074 0x2074
-#define SMT_P2075 0x2075
-#define SMT_P2076 0x2076
-
-#define SMT_P208C 0x208c
-#define SMT_P208D 0x208d
-#define SMT_P208E 0x208e
-#define SMT_P208F 0x208f
-#define SMT_P2090 0x2090
-
-#define SMT_P20F0 0x20F0
-#define SMT_P20F1 0x20F1
-
-#define SMT_P320A 0x320a
-#define SMT_P320B 0x320b
-#define SMT_P320C 0x320c
-#define SMT_P320D 0x320d
-#define SMT_P320E 0x320e
-#define SMT_P320F 0x320f
-#define SMT_P3210 0x3210
-#define SMT_P3211 0x3211
-#define SMT_P3212 0x3212
-#define SMT_P3213 0x3213
-#define SMT_P3214 0x3214
-#define SMT_P3215 0x3215
-#define SMT_P3216 0x3216
-#define SMT_P3217 0x3217
-
-#define SMT_P400A 0x400a
-#define SMT_P400B 0x400b
-#define SMT_P400C 0x400c
-#define SMT_P400D 0x400d
-#define SMT_P400E 0x400e
-#define SMT_P400F 0x400f
-#define SMT_P4010 0x4010
-#define SMT_P4011 0x4011
-#define SMT_P4012 0x4012
-#define SMT_P4013 0x4013
-#define SMT_P4014 0x4014
-#define SMT_P4015 0x4015
-#define SMT_P4016 0x4016
-#define SMT_P4017 0x4017
-#define SMT_P4018 0x4018
-#define SMT_P4019 0x4019
-#define SMT_P401A 0x401a
-#define SMT_P401B 0x401b
-#define SMT_P401C 0x401c
-#define SMT_P401D 0x401d
-#define SMT_P401E 0x401e
-#define SMT_P401F 0x401f
-#define SMT_P4020 0x4020
-#define SMT_P4021 0x4021
-#define SMT_P4022 0x4022
-#define SMT_P4023 0x4023
-#define SMT_P4024 0x4024
-#define SMT_P4025 0x4025
-#define SMT_P4026 0x4026
-#define SMT_P4027 0x4027
-#define SMT_P4028 0x4028
-#define SMT_P4029 0x4029
-#define SMT_P402A 0x402a
-#define SMT_P402B 0x402b
-#define SMT_P402C 0x402c
-#define SMT_P402D 0x402d
-#define SMT_P402E 0x402e
-#define SMT_P402F 0x402f
-#define SMT_P4030 0x4030
-#define SMT_P4031 0x4031
-#define SMT_P4032 0x4032
-#define SMT_P4033 0x4033
-#define SMT_P4034 0x4034
-#define SMT_P4035 0x4035
-#define SMT_P4036 0x4036
-#define SMT_P4037 0x4037
-#define SMT_P4038 0x4038
-#define SMT_P4039 0x4039
-#define SMT_P403A 0x403a
-#define SMT_P403B 0x403b
-#define SMT_P403C 0x403c
-#define SMT_P403D 0x403d
-#define SMT_P403E 0x403e
-#define SMT_P403F 0x403f
-#define SMT_P4040 0x4040
-#define SMT_P4041 0x4041
-#define SMT_P4042 0x4042
-#define SMT_P4043 0x4043
-#define SMT_P4044 0x4044
-#define SMT_P4045 0x4045
-#define SMT_P4046 0x4046
-
-#define SMT_P4050 0x4050
-#define SMT_P4051 0x4051
-#define SMT_P4052 0x4052
-#define SMT_P4053 0x4053
diff --git a/drivers/net/skfp/h/smtstate.h b/drivers/net/skfp/h/smtstate.h
deleted file mode 100644
index 62fe695077a9..000000000000
--- a/drivers/net/skfp/h/smtstate.h
+++ /dev/null
@@ -1,106 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _SKFP_H_SMTSTATE_H_
-#define _SKFP_H_SMTSTATE_H_
-
-/*
- * SMT state definitions
- */
-
-#ifndef KERNEL
-/*
- * PCM states
- */
-#define PC0_OFF 0
-#define PC1_BREAK 1
-#define PC2_TRACE 2
-#define PC3_CONNECT 3
-#define PC4_NEXT 4
-#define PC5_SIGNAL 5
-#define PC6_JOIN 6
-#define PC7_VERIFY 7
-#define PC8_ACTIVE 8
-#define PC9_MAINT 9
-
-/*
- * PCM modes
- */
-#define PM_NONE 0
-#define PM_PEER 1
-#define PM_TREE 2
-
-/*
- * PCM type
- */
-#define TA 0
-#define TB 1
-#define TS 2
-#define TM 3
-#define TNONE 4
-
-/*
- * CFM states
- */
-#define SC0_ISOLATED 0 /* isolated */
-#define SC1_WRAP_A 5 /* wrap A */
-#define SC2_WRAP_B 6 /* wrap B */
-#define SC4_THRU_A 12 /* through A */
-#define SC5_THRU_B 7 /* through B (SMt 6.2) */
-#define SC7_WRAP_S 8 /* SAS */
-
-/*
- * ECM states
- */
-#define EC0_OUT 0
-#define EC1_IN 1
-#define EC2_TRACE 2
-#define EC3_LEAVE 3
-#define EC4_PATH_TEST 4
-#define EC5_INSERT 5
-#define EC6_CHECK 6
-#define EC7_DEINSERT 7
-
-/*
- * RMT states
- */
-#define RM0_ISOLATED 0
-#define RM1_NON_OP 1 /* not operational */
-#define RM2_RING_OP 2 /* ring operational */
-#define RM3_DETECT 3 /* detect dupl addresses */
-#define RM4_NON_OP_DUP 4 /* dupl. addr detected */
-#define RM5_RING_OP_DUP 5 /* ring oper. with dupl. addr */
-#define RM6_DIRECTED 6 /* sending directed beacons */
-#define RM7_TRACE 7 /* trace initiated */
-#endif
-
-struct pcm_state {
- unsigned char pcm_type ; /* TA TB TS TM */
- unsigned char pcm_state ; /* state PC[0-9]_* */
- unsigned char pcm_mode ; /* PM_{NONE,PEER,TREE} */
- unsigned char pcm_neighbor ; /* TA TB TS TM */
- unsigned char pcm_bsf ; /* flag bs : TRUE/FALSE */
- unsigned char pcm_lsf ; /* flag ls : TRUE/FALSE */
- unsigned char pcm_lct_fail ; /* counter lct_fail */
- unsigned char pcm_ls_rx ; /* rx line state */
- short pcm_r_val ; /* signaling bits */
- short pcm_t_val ; /* signaling bits */
-} ;
-
-struct smt_state {
- struct pcm_state pcm_state[NUMPHYS] ; /* port A & port B */
-} ;
-
-#endif
-
diff --git a/drivers/net/skfp/h/supern_2.h b/drivers/net/skfp/h/supern_2.h
deleted file mode 100644
index 0b73690280f6..000000000000
--- a/drivers/net/skfp/h/supern_2.h
+++ /dev/null
@@ -1,1059 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- defines for AMD Supernet II chip set
- the chips are referred to as
- FPLUS Formac Plus
- PLC Physical Layer
-
- added defines for AMD Supernet III chip set
- added comments on differences between Supernet II and Supernet III
- added defines for the Motorola ELM (MOT_ELM)
-*/
-
-#ifndef _SUPERNET_
-#define _SUPERNET_
-
-/*
- * Define Supernet 3 when used
- */
-#ifdef PCI
-#ifndef SUPERNET_3
-#define SUPERNET_3
-#endif
-#define TAG
-#endif
-
-#define MB 0xff
-#define MW 0xffff
-#define MD 0xffffffff
-
-/*
- * FORMAC frame status (rx_msext)
- */
-#define FS_EI (1<<2)
-#define FS_AI (1<<1)
-#define FS_CI (1<<0)
-
-#define FS_MSVALID (1<<15) /* end of queue */
-#define FS_MSRABT (1<<14) /* frame was aborted during reception*/
-#define FS_SSRCRTG (1<<12) /* if SA has set MSB (source-routing)*/
-#define FS_SEAC2 (FS_EI<<9) /* error indicator */
-#define FS_SEAC1 (FS_AI<<9) /* address indicator */
-#define FS_SEAC0 (FS_CI<<9) /* copy indicator */
-#define FS_SFRMERR (1<<8) /* error detected (CRC or length) */
-#define FS_SADRRG (1<<7) /* address recognized */
-#define FS_SFRMTY2 (1<<6) /* frame-class bit */
-#define FS_SFRMTY1 (1<<5) /* frame-type bit (impementor) */
-#define FS_SFRMTY0 (1<<4) /* frame-type bit (LLC) */
-#define FS_ERFBB1 (1<<1) /* byte offset (depends on LSB bit) */
-#define FS_ERFBB0 (1<<0) /* - " - */
-
-/*
- * status frame type
- */
-#define FRM_SMT (0) /* asynchr. frames */
-#define FRM_LLCA (1)
-#define FRM_IMPA (2)
-#define FRM_MAC (4) /* synchr. frames */
-#define FRM_LLCS (5)
-#define FRM_IMPS (6)
-
-/*
- * bits in rx_descr.i (receive frame status word)
- */
-#define RX_MSVALID ((long)1<<31) /* memory status valid */
-#define RX_MSRABT ((long)1<<30) /* memory status receive abort */
-#define RX_FS_E ((long)FS_SEAC2<<16) /* error indicator */
-#define RX_FS_A ((long)FS_SEAC1<<16) /* address indicator */
-#define RX_FS_C ((long)FS_SEAC0<<16) /* copy indicator */
-#define RX_FS_CRC ((long)FS_SFRMERR<<16)/* error detected */
-#define RX_FS_ADDRESS ((long)FS_SADRRG<<16) /* address recognized */
-#define RX_FS_MAC ((long)FS_SFRMTY2<<16)/* MAC frame */
-#define RX_FS_SMT ((long)0<<16) /* SMT frame */
-#define RX_FS_IMPL ((long)FS_SFRMTY1<<16)/* implementer frame */
-#define RX_FS_LLC ((long)FS_SFRMTY0<<16)/* LLC frame */
-
-/*
- * receive frame descriptor
- */
-union rx_descr {
- struct {
-#ifdef LITTLE_ENDIAN
- unsigned rx_length :16 ; /* frame length lower/upper byte */
- unsigned rx_erfbb :2 ; /* received frame byte boundary */
- unsigned rx_reserv2:2 ; /* reserved */
- unsigned rx_sfrmty :3 ; /* frame type bits */
- unsigned rx_sadrrg :1 ; /* DA == MA or broad-/multicast */
- unsigned rx_sfrmerr:1 ; /* received frame not valid */
- unsigned rx_seac0 :1 ; /* frame-copied C-indicator */
- unsigned rx_seac1 :1 ; /* address-match A-indicator */
- unsigned rx_seac2 :1 ; /* frame-error E-indicator */
- unsigned rx_ssrcrtg:1 ; /* == 1 SA has MSB set */
- unsigned rx_reserv1:1 ; /* reserved */
- unsigned rx_msrabt :1 ; /* memory status receive abort */
- unsigned rx_msvalid:1 ; /* memory status valid */
-#else
- unsigned rx_msvalid:1 ; /* memory status valid */
- unsigned rx_msrabt :1 ; /* memory status receive abort */
- unsigned rx_reserv1:1 ; /* reserved */
- unsigned rx_ssrcrtg:1 ; /* == 1 SA has MSB set */
- unsigned rx_seac2 :1 ; /* frame-error E-indicator */
- unsigned rx_seac1 :1 ; /* address-match A-indicator */
- unsigned rx_seac0 :1 ; /* frame-copied C-indicator */
- unsigned rx_sfrmerr:1 ; /* received frame not valid */
- unsigned rx_sadrrg :1 ; /* DA == MA or broad-/multicast */
- unsigned rx_sfrmty :3 ; /* frame type bits */
- unsigned rx_erfbb :2 ; /* received frame byte boundary */
- unsigned rx_reserv2:2 ; /* reserved */
- unsigned rx_length :16 ; /* frame length lower/upper byte */
-#endif
- } r ;
- long i ;
-} ;
-
-/* defines for Receive Frame Descriptor access */
-#define RD_S_ERFBB 0x00030000L /* received frame byte boundary */
-#define RD_S_RES2 0x000c0000L /* reserved */
-#define RD_S_SFRMTY 0x00700000L /* frame type bits */
-#define RD_S_SADRRG 0x00800000L /* DA == MA or broad-/multicast */
-#define RD_S_SFRMERR 0x01000000L /* received frame not valid */
-#define RD_S_SEAC 0x0e000000L /* frame status indicators */
-#define RD_S_SEAC0 0x02000000L /* frame-copied case-indicator */
-#define RD_S_SEAC1 0x04000000L /* address-match A-indicator */
-#define RD_S_SEAC2 0x08000000L /* frame-error E-indicator */
-#define RD_S_SSRCRTG 0x10000000L /* == 1 SA has MSB set */
-#define RD_S_RES1 0x20000000L /* reserved */
-#define RD_S_MSRABT 0x40000000L /* memory status receive abort */
-#define RD_S_MSVALID 0x80000000L /* memory status valid */
-
-#define RD_STATUS 0xffff0000L
-#define RD_LENGTH 0x0000ffffL
-
-/* defines for Receive Frames Status Word values */
-/*RD_S_SFRMTY*/
-#define RD_FRM_SMT (unsigned long)(0<<20) /* asynchr. frames */
-#define RD_FRM_LLCA (unsigned long)(1<<20)
-#define RD_FRM_IMPA (unsigned long)(2<<20)
-#define RD_FRM_MAC (unsigned long)(4<<20) /* synchr. frames */
-#define RD_FRM_LLCS (unsigned long)(5<<20)
-#define RD_FRM_IMPS (unsigned long)(6<<20)
-
-#define TX_DESCRIPTOR 0x40000000L
-#define TX_OFFSET_3 0x18000000L
-
-#define TXP1 2
-
-/*
- * transmit frame descriptor
- */
-union tx_descr {
- struct {
-#ifdef LITTLE_ENDIAN
- unsigned tx_length:16 ; /* frame length lower/upper byte */
- unsigned tx_res :8 ; /* reserved (bit 16..23) */
- unsigned tx_xmtabt:1 ; /* transmit abort */
- unsigned tx_nfcs :1 ; /* no frame check sequence */
- unsigned tx_xdone :1 ; /* give up token */
- unsigned tx_rpxm :2 ; /* byte offset */
- unsigned tx_pat1 :2 ; /* must be TXP1 */
- unsigned tx_more :1 ; /* more frame in chain */
-#else
- unsigned tx_more :1 ; /* more frame in chain */
- unsigned tx_pat1 :2 ; /* must be TXP1 */
- unsigned tx_rpxm :2 ; /* byte offset */
- unsigned tx_xdone :1 ; /* give up token */
- unsigned tx_nfcs :1 ; /* no frame check sequence */
- unsigned tx_xmtabt:1 ; /* transmit abort */
- unsigned tx_res :8 ; /* reserved (bit 16..23) */
- unsigned tx_length:16 ; /* frame length lower/upper byte */
-#endif
- } t ;
- long i ;
-} ;
-
-/* defines for Transmit Descriptor access */
-#define TD_C_MORE 0x80000000L /* more frame in chain */
-#define TD_C_DESCR 0x60000000L /* must be TXP1 */
-#define TD_C_TXFBB 0x18000000L /* byte offset */
-#define TD_C_XDONE 0x04000000L /* give up token */
-#define TD_C_NFCS 0x02000000L /* no frame check sequence */
-#define TD_C_XMTABT 0x01000000L /* transmit abort */
-
-#define TD_C_LNCNU 0x0000ff00L
-#define TD_C_LNCNL 0x000000ffL
-#define TD_C_LNCN 0x0000ffffL /* frame length lower/upper byte */
-
-/*
- * transmit pointer
- */
-union tx_pointer {
- struct t {
-#ifdef LITTLE_ENDIAN
- unsigned tp_pointer:16 ; /* pointer to tx_descr (low/high) */
- unsigned tp_res :8 ; /* reserved (bit 16..23) */
- unsigned tp_pattern:8 ; /* fixed pattern (bit 24..31) */
-#else
- unsigned tp_pattern:8 ; /* fixed pattern (bit 24..31) */
- unsigned tp_res :8 ; /* reserved (bit 16..23) */
- unsigned tp_pointer:16 ; /* pointer to tx_descr (low/high) */
-#endif
- } t ;
- long i ;
-} ;
-
-/* defines for Nontag Mode Pointer access */
-#define TD_P_CNTRL 0xff000000L
-#define TD_P_RPXU 0x0000ff00L
-#define TD_P_RPXL 0x000000ffL
-#define TD_P_RPX 0x0000ffffL
-
-
-#define TX_PATTERN 0xa0
-#define TX_POINTER_END 0xa0000000L
-#define TX_INT_PATTERN 0xa0000000L
-
-struct tx_queue {
- struct tx_queue *tq_next ;
- u_short tq_pack_offset ; /* offset buffer memory */
- u_char tq_pad[2] ;
-} ;
-
-/*
- defines for FORMAC Plus (Am79C830)
-*/
-
-/*
- * FORMAC+ read/write (r/w) registers
- */
-#define FM_CMDREG1 0x00 /* write command reg 1 instruction */
-#define FM_CMDREG2 0x01 /* write command reg 2 instruction */
-#define FM_ST1U 0x00 /* read upper 16-bit of status reg 1 */
-#define FM_ST1L 0x01 /* read lower 16-bit of status reg 1 */
-#define FM_ST2U 0x02 /* read upper 16-bit of status reg 2 */
-#define FM_ST2L 0x03 /* read lower 16-bit of status reg 2 */
-#define FM_IMSK1U 0x04 /* r/w upper 16-bit of IMSK 1 */
-#define FM_IMSK1L 0x05 /* r/w lower 16-bit of IMSK 1 */
-#define FM_IMSK2U 0x06 /* r/w upper 16-bit of IMSK 2 */
-#define FM_IMSK2L 0x07 /* r/w lower 16-bit of IMSK 2 */
-#define FM_SAID 0x08 /* r/w short addr.-individual */
-#define FM_LAIM 0x09 /* r/w long addr.-ind. (MSW of LAID) */
-#define FM_LAIC 0x0a /* r/w long addr.-ind. (middle)*/
-#define FM_LAIL 0x0b /* r/w long addr.-ind. (LSW) */
-#define FM_SAGP 0x0c /* r/w short address-group */
-#define FM_LAGM 0x0d /* r/w long addr.-gr. (MSW of LAGP) */
-#define FM_LAGC 0x0e /* r/w long addr.-gr. (middle) */
-#define FM_LAGL 0x0f /* r/w long addr.-gr. (LSW) */
-#define FM_MDREG1 0x10 /* r/w 16-bit mode reg 1 */
-#define FM_STMCHN 0x11 /* read state-machine reg */
-#define FM_MIR1 0x12 /* read upper 16-bit of MAC Info Reg */
-#define FM_MIR0 0x13 /* read lower 16-bit of MAC Info Reg */
-#define FM_TMAX 0x14 /* r/w 16-bit TMAX reg */
-#define FM_TVX 0x15 /* write 8-bit TVX reg with NP7-0
- read TVX on NP7-0, timer on NP15-8*/
-#define FM_TRT 0x16 /* r/w upper 16-bit of TRT timer */
-#define FM_THT 0x17 /* r/w upper 16-bit of THT timer */
-#define FM_TNEG 0x18 /* read upper 16-bit of TNEG (TTRT) */
-#define FM_TMRS 0x19 /* read lower 5-bit of TNEG,TRT,THT */
- /* F E D C B A 9 8 7 6 5 4 3 2 1 0
- x |-TNEG4-0| |-TRT4-0-| |-THT4-0-| (x-late count) */
-#define FM_TREQ0 0x1a /* r/w 16-bit TREQ0 reg (LSW of TRT) */
-#define FM_TREQ1 0x1b /* r/w 16-bit TREQ1 reg (MSW of TRT) */
-#define FM_PRI0 0x1c /* r/w priority r. for asyn.-queue 0 */
-#define FM_PRI1 0x1d /* r/w priority r. for asyn.-queue 1 */
-#define FM_PRI2 0x1e /* r/w priority r. for asyn.-queue 2 */
-#define FM_TSYNC 0x1f /* r/w 16-bit of the TSYNC register */
-#define FM_MDREG2 0x20 /* r/w 16-bit mode reg 2 */
-#define FM_FRMTHR 0x21 /* r/w the frame threshold register */
-#define FM_EACB 0x22 /* r/w end addr of claim/beacon area */
-#define FM_EARV 0x23 /* r/w end addr of receive queue */
-/* Supernet 3 */
-#define FM_EARV1 FM_EARV
-
-#define FM_EAS 0x24 /* r/w end addr of synchr. queue */
-#define FM_EAA0 0x25 /* r/w end addr of asyn. queue 0 */
-#define FM_EAA1 0x26 /* r/w end addr of asyn. queue 1 */
-#define FM_EAA2 0x27 /* r/w end addr of asyn. queue 2 */
-#define FM_SACL 0x28 /* r/w start addr of claim frame */
-#define FM_SABC 0x29 /* r/w start addr of beacon frame */
-#define FM_WPXSF 0x2a /* r/w the write ptr. for special fr.*/
-#define FM_RPXSF 0x2b /* r/w the read ptr. for special fr. */
-#define FM_RPR 0x2d /* r/w the read ptr. for receive qu. */
-#define FM_WPR 0x2e /* r/w the write ptr. for receive qu.*/
-#define FM_SWPR 0x2f /* r/w the shadow wr.-ptr. for rec.q.*/
-/* Supernet 3 */
-#define FM_RPR1 FM_RPR
-#define FM_WPR1 FM_WPR
-#define FM_SWPR1 FM_SWPR
-
-#define FM_WPXS 0x30 /* r/w the write ptr. for synchr. qu.*/
-#define FM_WPXA0 0x31 /* r/w the write ptr. for asyn. qu.0 */
-#define FM_WPXA1 0x32 /* r/w the write ptr. for asyn. qu.1 */
-#define FM_WPXA2 0x33 /* r/w the write ptr. for asyn. qu.2 */
-#define FM_SWPXS 0x34 /* r/w the shadow wr.-ptr. for syn.q.*/
-#define FM_SWPXA0 0x35 /* r/w the shad. wr.-ptr. for asyn.q0*/
-#define FM_SWPXA1 0x36 /* r/w the shad. wr.-ptr. for asyn.q1*/
-#define FM_SWPXA2 0x37 /* r/w the shad. wr.-ptr. for asyn.q2*/
-#define FM_RPXS 0x38 /* r/w the read ptr. for synchr. qu. */
-#define FM_RPXA0 0x39 /* r/w the read ptr. for asyn. qu. 0 */
-#define FM_RPXA1 0x3a /* r/w the read ptr. for asyn. qu. 1 */
-#define FM_RPXA2 0x3b /* r/w the read ptr. for asyn. qu. 2 */
-#define FM_MARR 0x3c /* r/w the memory read addr register */
-#define FM_MARW 0x3d /* r/w the memory write addr register*/
-#define FM_MDRU 0x3e /* r/w upper 16-bit of mem. data reg */
-#define FM_MDRL 0x3f /* r/w lower 16-bit of mem. data reg */
-
-/* following instructions relate to MAC counters and timer */
-#define FM_TMSYNC 0x40 /* r/w upper 16 bits of TMSYNC timer */
-#define FM_FCNTR 0x41 /* r/w the 16-bit frame counter */
-#define FM_LCNTR 0x42 /* r/w the 16-bit lost counter */
-#define FM_ECNTR 0x43 /* r/w the 16-bit error counter */
-
-/* Supernet 3: extensions to old register block */
-#define FM_FSCNTR 0x44 /* r/? Frame Strip Counter */
-#define FM_FRSELREG 0x45 /* r/w Frame Selection Register */
-
-/* Supernet 3: extensions for 2. receive queue etc. */
-#define FM_MDREG3 0x60 /* r/w Mode Register 3 */
-#define FM_ST3U 0x61 /* read upper 16-bit of status reg 3 */
-#define FM_ST3L 0x62 /* read lower 16-bit of status reg 3 */
-#define FM_IMSK3U 0x63 /* r/w upper 16-bit of IMSK reg 3 */
-#define FM_IMSK3L 0x64 /* r/w lower 16-bit of IMSK reg 3 */
-#define FM_IVR 0x65 /* read Interrupt Vector register */
-#define FM_IMR 0x66 /* r/w Interrupt mask register */
-/* 0x67 Hidden */
-#define FM_RPR2 0x68 /* r/w the read ptr. for rec. qu. 2 */
-#define FM_WPR2 0x69 /* r/w the write ptr. for rec. qu. 2 */
-#define FM_SWPR2 0x6a /* r/w the shadow wptr. for rec. q. 2 */
-#define FM_EARV2 0x6b /* r/w end addr of rec. qu. 2 */
-#define FM_UNLCKDLY 0x6c /* r/w Auto Unlock Delay register */
- /* Bit 15-8: RECV2 unlock threshold */
- /* Bit 7-0: RECV1 unlock threshold */
-/* 0x6f-0x73 Hidden */
-#define FM_LTDPA1 0x79 /* r/w Last Trans desc ptr for A1 qu. */
-/* 0x80-0x9a PLCS registers of built-in PLCS (Supernet 3 only) */
-
-/* Supernet 3: Adderss Filter Registers */
-#define FM_AFCMD 0xb0 /* r/w Address Filter Command Reg */
-#define FM_AFSTAT 0xb2 /* r/w Address Filter Status Reg */
-#define FM_AFBIST 0xb4 /* r/w Address Filter BIST signature */
-#define FM_AFCOMP2 0xb6 /* r/w Address Filter Comparand 2 */
-#define FM_AFCOMP1 0xb8 /* r/w Address Filter Comparand 1 */
-#define FM_AFCOMP0 0xba /* r/w Address Filter Comparand 0 */
-#define FM_AFMASK2 0xbc /* r/w Address Filter Mask 2 */
-#define FM_AFMASK1 0xbe /* r/w Address Filter Mask 1 */
-#define FM_AFMASK0 0xc0 /* r/w Address Filter Mask 0 */
-#define FM_AFPERS 0xc2 /* r/w Address Filter Personality Reg */
-
-/* Supernet 3: Orion (PDX?) Registers */
-#define FM_ORBIST 0xd0 /* r/w Orion BIST signature */
-#define FM_ORSTAT 0xd2 /* r/w Orion Status Register */
-
-
-/*
- * Mode Register 1 (MDREG1)
- */
-#define FM_RES0 0x0001 /* reserved */
- /* SN3: other definition */
-#define FM_XMTINH_HOLD 0x0002 /* transmit-inhibit/hold bit */
- /* SN3: other definition */
-#define FM_HOFLXI 0x0003 /* SN3: Hold / Flush / Inhibit */
-#define FM_FULL_HALF 0x0004 /* full-duplex/half-duplex bit */
-#define FM_LOCKTX 0x0008 /* lock-transmit-asynchr.-queues bit */
-#define FM_EXGPA0 0x0010 /* extended-group-addressing bit 0 */
-#define FM_EXGPA1 0x0020 /* extended-group-addressing bit 1 */
-#define FM_DISCRY 0x0040 /* disable-carry bit */
- /* SN3: reserved */
-#define FM_SELRA 0x0080 /* select input from PHY (1=RA,0=RB) */
-
-#define FM_ADDET 0x0700 /* address detection */
-#define FM_MDAMA (0<<8) /* address detection : DA = MA */
-#define FM_MDASAMA (1<<8) /* address detection : DA=MA||SA=MA */
-#define FM_MRNNSAFNMA (2<<8) /* rec. non-NSA frames DA=MA&&SA!=MA */
-#define FM_MRNNSAF (3<<8) /* rec. non-NSA frames DA = MA */
-#define FM_MDISRCV (4<<8) /* disable receive function */
-#define FM_MRES0 (5<<8) /* reserve */
-#define FM_MLIMPROM (6<<8) /* limited-promiscuous mode */
-#define FM_MPROMISCOUS (7<<8) /* address detection : promiscuous */
-
-#define FM_SELSA 0x0800 /* select-short-address bit */
-
-#define FM_MMODE 0x7000 /* mode select */
-#define FM_MINIT (0<<12) /* initialize */
-#define FM_MMEMACT (1<<12) /* memory activate */
-#define FM_MONLINESP (2<<12) /* on-line special */
-#define FM_MONLINE (3<<12) /* on-line (FDDI operational mode) */
-#define FM_MILOOP (4<<12) /* internal loopback */
-#define FM_MRES1 (5<<12) /* reserved */
-#define FM_MRES2 (6<<12) /* reserved */
-#define FM_MELOOP (7<<12) /* external loopback */
-
-#define FM_SNGLFRM 0x8000 /* single-frame-receive mode */
- /* SN3: reserved */
-
-#define MDR1INIT (FM_MINIT | FM_MDAMA)
-
-/*
- * Mode Register 2 (MDREG2)
- */
-#define FM_AFULL 0x000f /* 4-bit value (empty loc.in txqueue)*/
-#define FM_RCVERR 0x0010 /* rec.-errored-frames bit */
-#define FM_SYMCTL 0x0020 /* sysmbol-control bit */
- /* SN3: reserved */
-#define FM_SYNPRQ 0x0040 /* synchron.-NP-DMA-request bit */
-#define FM_ENNPRQ 0x0080 /* enable-NP-DMA-request bit */
-#define FM_ENHSRQ 0x0100 /* enable-host-request bit */
-#define FM_RXFBB01 0x0600 /* rec. frame byte boundary bit0 & 1 */
-#define FM_LSB 0x0800 /* determ. ordering of bytes in buffer*/
-#define FM_PARITY 0x1000 /* 1 = even, 0 = odd */
-#define FM_CHKPAR 0x2000 /* 1 = parity of 32-bit buffer BD-bus*/
-#define FM_STRPFCS 0x4000 /* 1 = strips FCS field of rec.frame */
-#define FM_BMMODE 0x8000 /* Buffer-Memory-Mode (1 = tag mode) */
- /* SN3: 1 = tag, 0 = modified tag */
-
-/*
- * Status Register 1, Upper 16 Bits (ST1U)
- */
-#define FM_STEFRMS 0x0001 /* transmit end of frame: synchr. qu.*/
-#define FM_STEFRMA0 0x0002 /* transmit end of frame: asyn. qu.0 */
-#define FM_STEFRMA1 0x0004 /* transmit end of frame: asyn. qu.1 */
-#define FM_STEFRMA2 0x0008 /* transmit end of frame: asyn. qu.2 */
- /* SN3: reserved */
-#define FM_STECFRMS 0x0010 /* transmit end of chain of syn. qu. */
- /* SN3: reserved */
-#define FM_STECFRMA0 0x0020 /* transmit end of chain of asyn. q0 */
- /* SN3: reserved */
-#define FM_STECFRMA1 0x0040 /* transmit end of chain of asyn. q1 */
- /* SN3: STECMDA1 */
-#define FM_STECMDA1 0x0040 /* SN3: 'no description' */
-#define FM_STECFRMA2 0x0080 /* transmit end of chain of asyn. q2 */
- /* SN3: reserved */
-#define FM_STEXDONS 0x0100 /* transmit until XDONE in syn. qu. */
-#define FM_STBFLA 0x0200 /* asynchr.-queue trans. buffer full */
-#define FM_STBFLS 0x0400 /* synchr.-queue transm. buffer full */
-#define FM_STXABRS 0x0800 /* synchr. queue transmit-abort */
-#define FM_STXABRA0 0x1000 /* asynchr. queue 0 transmit-abort */
-#define FM_STXABRA1 0x2000 /* asynchr. queue 1 transmit-abort */
-#define FM_STXABRA2 0x4000 /* asynchr. queue 2 transmit-abort */
- /* SN3: reserved */
-#define FM_SXMTABT 0x8000 /* transmit abort */
-
-/*
- * Status Register 1, Lower 16 Bits (ST1L)
- */
-#define FM_SQLCKS 0x0001 /* queue lock for synchr. queue */
-#define FM_SQLCKA0 0x0002 /* queue lock for asynchr. queue 0 */
-#define FM_SQLCKA1 0x0004 /* queue lock for asynchr. queue 1 */
-#define FM_SQLCKA2 0x0008 /* queue lock for asynchr. queue 2 */
- /* SN3: reserved */
-#define FM_STXINFLS 0x0010 /* transmit instruction full: syn. */
- /* SN3: reserved */
-#define FM_STXINFLA0 0x0020 /* transmit instruction full: asyn.0 */
- /* SN3: reserved */
-#define FM_STXINFLA1 0x0040 /* transmit instruction full: asyn.1 */
- /* SN3: reserved */
-#define FM_STXINFLA2 0x0080 /* transmit instruction full: asyn.2 */
- /* SN3: reserved */
-#define FM_SPCEPDS 0x0100 /* parity/coding error: syn. queue */
-#define FM_SPCEPDA0 0x0200 /* parity/coding error: asyn. queue0 */
-#define FM_SPCEPDA1 0x0400 /* parity/coding error: asyn. queue1 */
-#define FM_SPCEPDA2 0x0800 /* parity/coding error: asyn. queue2 */
- /* SN3: reserved */
-#define FM_STBURS 0x1000 /* transmit buffer underrun: syn. q. */
-#define FM_STBURA0 0x2000 /* transmit buffer underrun: asyn.0 */
-#define FM_STBURA1 0x4000 /* transmit buffer underrun: asyn.1 */
-#define FM_STBURA2 0x8000 /* transmit buffer underrun: asyn.2 */
- /* SN3: reserved */
-
-/*
- * Status Register 2, Upper 16 Bits (ST2U)
- */
-#define FM_SOTRBEC 0x0001 /* other beacon received */
-#define FM_SMYBEC 0x0002 /* my beacon received */
-#define FM_SBEC 0x0004 /* beacon state entered */
-#define FM_SLOCLM 0x0008 /* low claim received */
-#define FM_SHICLM 0x0010 /* high claim received */
-#define FM_SMYCLM 0x0020 /* my claim received */
-#define FM_SCLM 0x0040 /* claim state entered */
-#define FM_SERRSF 0x0080 /* error in special frame */
-#define FM_SNFSLD 0x0100 /* NP and FORMAC+ simultaneous load */
-#define FM_SRFRCTOV 0x0200 /* receive frame counter overflow */
- /* SN3: reserved */
-#define FM_SRCVFRM 0x0400 /* receive frame */
- /* SN3: reserved */
-#define FM_SRCVOVR 0x0800 /* receive FIFO overflow */
-#define FM_SRBFL 0x1000 /* receive buffer full */
-#define FM_SRABT 0x2000 /* receive abort */
-#define FM_SRBMT 0x4000 /* receive buffer empty */
-#define FM_SRCOMP 0x8000 /* receive complete. Nontag mode */
-
-/*
- * Status Register 2, Lower 16 Bits (ST2L)
- * Attention: SN3 docu shows these bits the other way around
- */
-#define FM_SRES0 0x0001 /* reserved */
-#define FM_SESTRIPTK 0x0001 /* SN3: 'no description' */
-#define FM_STRTEXR 0x0002 /* TRT expired in claim | beacon st. */
-#define FM_SDUPCLM 0x0004 /* duplicate claim received */
-#define FM_SSIFG 0x0008 /* short interframe gap */
-#define FM_SFRMCTR 0x0010 /* frame counter overflow */
-#define FM_SERRCTR 0x0020 /* error counter overflow */
-#define FM_SLSTCTR 0x0040 /* lost counter overflow */
-#define FM_SPHINV 0x0080 /* PHY invalid */
-#define FM_SADET 0x0100 /* address detect */
-#define FM_SMISFRM 0x0200 /* missed frame */
-#define FM_STRTEXP 0x0400 /* TRT expired and late count > 0 */
-#define FM_STVXEXP 0x0800 /* TVX expired */
-#define FM_STKISS 0x1000 /* token issued */
-#define FM_STKERR 0x2000 /* token error */
-#define FM_SMULTDA 0x4000 /* multiple destination address */
-#define FM_SRNGOP 0x8000 /* ring operational */
-
-/*
- * Supernet 3:
- * Status Register 3, Upper 16 Bits (ST3U)
- */
-#define FM_SRQUNLCK1 0x0001 /* receive queue unlocked queue 1 */
-#define FM_SRQUNLCK2 0x0002 /* receive queue unlocked queue 2 */
-#define FM_SRPERRQ1 0x0004 /* receive parity error rx queue 1 */
-#define FM_SRPERRQ2 0x0008 /* receive parity error rx queue 2 */
- /* Bit 4-10: reserved */
-#define FM_SRCVOVR2 0x0800 /* receive FIFO overfull rx queue 2 */
-#define FM_SRBFL2 0x1000 /* receive buffer full rx queue 2 */
-#define FM_SRABT2 0x2000 /* receive abort rx queue 2 */
-#define FM_SRBMT2 0x4000 /* receive buf empty rx queue 2 */
-#define FM_SRCOMP2 0x8000 /* receive comp rx queue 2 */
-
-/*
- * Supernet 3:
- * Status Register 3, Lower 16 Bits (ST3L)
- */
-#define FM_AF_BIST_DONE 0x0001 /* Address Filter BIST is done */
-#define FM_PLC_BIST_DONE 0x0002 /* internal PLC Bist is done */
-#define FM_PDX_BIST_DONE 0x0004 /* PDX BIST is done */
- /* Bit 3: reserved */
-#define FM_SICAMDAMAT 0x0010 /* Status internal CAM DA match */
-#define FM_SICAMDAXACT 0x0020 /* Status internal CAM DA exact match */
-#define FM_SICAMSAMAT 0x0040 /* Status internal CAM SA match */
-#define FM_SICAMSAXACT 0x0080 /* Status internal CAM SA exact match */
-
-/*
- * MAC State-Machine Register FM_STMCHN
- */
-#define FM_MDRTAG 0x0004 /* tag bit of long word read */
-#define FM_SNPPND 0x0008 /* r/w from buffer mem. is pending */
-#define FM_TXSTAT 0x0070 /* transmitter state machine state */
-#define FM_RCSTAT 0x0380 /* receiver state machine state */
-#define FM_TM01 0x0c00 /* indicate token mode */
-#define FM_SIM 0x1000 /* indicate send immediate-mode */
-#define FM_REV 0xe000 /* FORMAC Plus revision number */
-
-/*
- * Supernet 3
- * Mode Register 3
- */
-#define FM_MENRS 0x0001 /* Ena enhanced rec status encoding */
-#define FM_MENXS 0x0002 /* Ena enhanced xmit status encoding */
-#define FM_MENXCT 0x0004 /* Ena EXACT/INEXACT matching */
-#define FM_MENAFULL 0x0008 /* Ena enh QCTRL encoding for AFULL */
-#define FM_MEIND 0x0030 /* Ena enh A,C indicator settings */
-#define FM_MENQCTRL 0x0040 /* Ena enh QCTRL encoding */
-#define FM_MENRQAUNLCK 0x0080 /* Ena rec q auto unlock */
-#define FM_MENDAS 0x0100 /* Ena DAS connections by cntr MUX */
-#define FM_MENPLCCST 0x0200 /* Ena Counter Segm test in PLC blck */
-#define FM_MENSGLINT 0x0400 /* Ena Vectored Interrupt reading */
-#define FM_MENDRCV 0x0800 /* Ena dual receive queue operation */
-#define FM_MENFCLOC 0x3000 /* Ena FC location within frm data */
-#define FM_MENTRCMD 0x4000 /* Ena ASYNC1 xmit only after command */
-#define FM_MENTDLPBK 0x8000 /* Ena TDAT to RDAT lkoopback */
-
-/*
- * Supernet 3
- * Frame Selection Register
- */
-#define FM_RECV1 0x000f /* options for receive queue 1 */
-#define FM_RCV1_ALL (0<<0) /* receive all frames */
-#define FM_RCV1_LLC (1<<0) /* rec all LLC frames */
-#define FM_RCV1_SMT (2<<0) /* rec all SMT frames */
-#define FM_RCV1_NSMT (3<<0) /* rec non-SMT frames */
-#define FM_RCV1_IMP (4<<0) /* rec Implementor frames */
-#define FM_RCV1_MAC (5<<0) /* rec all MAC frames */
-#define FM_RCV1_SLLC (6<<0) /* rec all sync LLC frames */
-#define FM_RCV1_ALLC (7<<0) /* rec all async LLC frames */
-#define FM_RCV1_VOID (8<<0) /* rec all void frames */
-#define FM_RCV1_ALSMT (9<<0) /* rec all async LLC & SMT frames */
-#define FM_RECV2 0x00f0 /* options for receive queue 2 */
-#define FM_RCV2_ALL (0<<4) /* receive all other frames */
-#define FM_RCV2_LLC (1<<4) /* rec all LLC frames */
-#define FM_RCV2_SMT (2<<4) /* rec all SMT frames */
-#define FM_RCV2_NSMT (3<<4) /* rec non-SMT frames */
-#define FM_RCV2_IMP (4<<4) /* rec Implementor frames */
-#define FM_RCV2_MAC (5<<4) /* rec all MAC frames */
-#define FM_RCV2_SLLC (6<<4) /* rec all sync LLC frames */
-#define FM_RCV2_ALLC (7<<4) /* rec all async LLC frames */
-#define FM_RCV2_VOID (8<<4) /* rec all void frames */
-#define FM_RCV2_ALSMT (9<<4) /* rec all async LLC & SMT frames */
-#define FM_ENXMTADSWAP 0x4000 /* enh rec addr swap (phys -> can) */
-#define FM_ENRCVADSWAP 0x8000 /* enh tx addr swap (can -> phys) */
-
-/*
- * Supernet 3:
- * Address Filter Command Register (AFCMD)
- */
-#define FM_INST 0x0007 /* Address Filter Operation */
-#define FM_IINV_CAM (0<<0) /* Invalidate CAM */
-#define FM_IWRITE_CAM (1<<0) /* Write CAM */
-#define FM_IREAD_CAM (2<<0) /* Read CAM */
-#define FM_IRUN_BIST (3<<0) /* Run BIST */
-#define FM_IFIND (4<<0) /* Find */
-#define FM_IINV (5<<0) /* Invalidate */
-#define FM_ISKIP (6<<0) /* Skip */
-#define FM_ICL_SKIP (7<<0) /* Clear all SKIP bits */
-
-/*
- * Supernet 3:
- * Address Filter Status Register (AFSTAT)
- */
- /* Bit 0-4: reserved */
-#define FM_REV_NO 0x00e0 /* Revision Number of Address Filter */
-#define FM_BIST_DONE 0x0100 /* BIST complete */
-#define FM_EMPTY 0x0200 /* CAM empty */
-#define FM_ERROR 0x0400 /* Error (improper operation) */
-#define FM_MULT 0x0800 /* Multiple Match */
-#define FM_EXACT 0x1000 /* Exact Match */
-#define FM_FOUND 0x2000 /* Comparand found in CAM */
-#define FM_FULL 0x4000 /* CAM full */
-#define FM_DONE 0x8000 /* DONE indicator */
-
-/*
- * Supernet 3:
- * BIST Signature Register (AFBIST)
- */
-#define AF_BIST_SIGNAT 0x0553 /* Address Filter BIST Signature */
-
-/*
- * Supernet 3:
- * Personality Register (AFPERS)
- */
-#define FM_VALID 0x0001 /* CAM Entry Valid */
-#define FM_DA 0x0002 /* Destination Address */
-#define FM_DAX 0x0004 /* Destination Address Exact */
-#define FM_SA 0x0008 /* Source Address */
-#define FM_SAX 0x0010 /* Source Address Exact */
-#define FM_SKIP 0x0020 /* Skip this entry */
-
-/*
- * instruction set for command register 1 (NPADDR6-0 = 0x00)
- */
-#define FM_IRESET 0x01 /* software reset */
-#define FM_IRMEMWI 0x02 /* load Memory Data Reg., inc MARR */
-#define FM_IRMEMWO 0x03 /* load MDR from buffer memory, n.i. */
-#define FM_IIL 0x04 /* idle/listen */
-#define FM_ICL 0x05 /* claim/listen */
-#define FM_IBL 0x06 /* beacon/listen */
-#define FM_ILTVX 0x07 /* load TVX timer from TVX reg */
-#define FM_INRTM 0x08 /* nonrestricted token mode */
-#define FM_IENTM 0x09 /* enter nonrestricted token mode */
-#define FM_IERTM 0x0a /* enter restricted token mode */
-#define FM_IRTM 0x0b /* restricted token mode */
-#define FM_ISURT 0x0c /* send unrestricted token */
-#define FM_ISRT 0x0d /* send restricted token */
-#define FM_ISIM 0x0e /* enter send-immediate mode */
-#define FM_IESIM 0x0f /* exit send-immediate mode */
-#define FM_ICLLS 0x11 /* clear synchronous queue lock */
-#define FM_ICLLA0 0x12 /* clear asynchronous queue 0 lock */
-#define FM_ICLLA1 0x14 /* clear asynchronous queue 1 lock */
-#define FM_ICLLA2 0x18 /* clear asynchronous queue 2 lock */
- /* SN3: reserved */
-#define FM_ICLLR 0x20 /* clear receive queue (SN3:1) lock */
-#define FM_ICLLR2 0x21 /* SN3: clear receive queue 2 lock */
-#define FM_ITRXBUS 0x22 /* SN3: Tristate X-Bus (SAS only) */
-#define FM_IDRXBUS 0x23 /* SN3: drive X-Bus */
-#define FM_ICLLAL 0x3f /* clear all queue locks */
-
-/*
- * instruction set for command register 2 (NPADDR6-0 = 0x01)
- */
-#define FM_ITRS 0x01 /* transmit synchronous queue */
- /* SN3: reserved */
-#define FM_ITRA0 0x02 /* transmit asynchronous queue 0 */
- /* SN3: reserved */
-#define FM_ITRA1 0x04 /* transmit asynchronous queue 1 */
- /* SN3: reserved */
-#define FM_ITRA2 0x08 /* transmit asynchronous queue 2 */
- /* SN3: reserved */
-#define FM_IACTR 0x10 /* abort current transmit activity */
-#define FM_IRSTQ 0x20 /* reset transmit queues */
-#define FM_ISTTB 0x30 /* set tag bit */
-#define FM_IERSF 0x40 /* enable receive single frame */
- /* SN3: reserved */
-#define FM_ITR 0x50 /* SN3: Transmit Command */
-
-
-/*
- * defines for PLC (Am79C864)
- */
-
-/*
- * PLC read/write (r/w) registers
- */
-#define PL_CNTRL_A 0x00 /* control register A (r/w) */
-#define PL_CNTRL_B 0x01 /* control register B (r/w) */
-#define PL_INTR_MASK 0x02 /* interrupt mask (r/w) */
-#define PL_XMIT_VECTOR 0x03 /* transmit vector register (r/w) */
-#define PL_VECTOR_LEN 0x04 /* transmit vector length (r/w) */
-#define PL_LE_THRESHOLD 0x05 /* link error event threshold (r/w) */
-#define PL_C_MIN 0x06 /* minimum connect state time (r/w) */
-#define PL_TL_MIN 0x07 /* min. line state transmit t. (r/w) */
-#define PL_TB_MIN 0x08 /* minimum break time (r/w) */
-#define PL_T_OUT 0x09 /* signal timeout (r/w) */
-#define PL_CNTRL_C 0x0a /* control register C (r/w) */
-#define PL_LC_LENGTH 0x0b /* link confidence test time (r/w) */
-#define PL_T_SCRUB 0x0c /* scrub time = MAC TVX (r/w) */
-#define PL_NS_MAX 0x0d /* max. noise time before break (r/w)*/
-#define PL_TPC_LOAD_V 0x0e /* TPC timer load value (write only) */
-#define PL_TNE_LOAD_V 0x0f /* TNE timer load value (write only) */
-#define PL_STATUS_A 0x10 /* status register A (read only) */
-#define PL_STATUS_B 0x11 /* status register B (read only) */
-#define PL_TPC 0x12 /* timer for PCM (ro) [20.48 us] */
-#define PL_TNE 0x13 /* time of noise event [0.32 us] */
-#define PL_CLK_DIV 0x14 /* TNE clock divider (read only) */
-#define PL_BIST_SIGNAT 0x15 /* built in self test signature (ro)*/
-#define PL_RCV_VECTOR 0x16 /* receive vector reg. (read only) */
-#define PL_INTR_EVENT 0x17 /* interrupt event reg. (read only) */
-#define PL_VIOL_SYM_CTR 0x18 /* violation symbol count. (read o) */
-#define PL_MIN_IDLE_CTR 0x19 /* minimum idle counter (read only) */
-#define PL_LINK_ERR_CTR 0x1a /* link error event ctr.(read only) */
-#ifdef MOT_ELM
-#define PL_T_FOT_ASS 0x1e /* FOTOFF Assert Timer */
-#define PL_T_FOT_DEASS 0x1f /* FOTOFF Deassert Timer */
-#endif /* MOT_ELM */
-
-#ifdef MOT_ELM
-/*
- * Special Quad-Elm Registers.
- * A Quad-ELM consists of for ELMs and these additional registers.
- */
-#define QELM_XBAR_W 0x80 /* Crossbar Control ELM W */
-#define QELM_XBAR_X 0x81 /* Crossbar Control ELM X */
-#define QELM_XBAR_Y 0x82 /* Crossbar Control ELM Y */
-#define QELM_XBAR_Z 0x83 /* Crossbar Control ELM Z */
-#define QELM_XBAR_P 0x84 /* Crossbar Control Bus P */
-#define QELM_XBAR_S 0x85 /* Crossbar Control Bus S */
-#define QELM_XBAR_R 0x86 /* Crossbar Control Bus R */
-#define QELM_WR_XBAR 0x87 /* Write the Crossbar now (write) */
-#define QELM_CTR_W 0x88 /* Counter W */
-#define QELM_CTR_X 0x89 /* Counter X */
-#define QELM_CTR_Y 0x8a /* Counter Y */
-#define QELM_CTR_Z 0x8b /* Counter Z */
-#define QELM_INT_MASK 0x8c /* Interrupt mask register */
-#define QELM_INT_DATA 0x8d /* Interrupt data (event) register */
-#define QELM_ELMB 0x00 /* Elm base */
-#define QELM_ELM_SIZE 0x20 /* ELM size */
-#endif /* MOT_ELM */
-/*
- * PLC control register A (PL_CNTRL_A: log. addr. 0x00)
- * It is used for timer configuration, specification of PCM MAINT state option,
- * counter interrupt frequency, PLC data path config. and Built In Self Test.
- */
-#define PL_RUN_BIST 0x0001 /* begin running its Built In Self T.*/
-#define PL_RF_DISABLE 0x0002 /* disable the Repeat Filter state m.*/
-#define PL_SC_REM_LOOP 0x0004 /* remote loopback path */
-#define PL_SC_BYPASS 0x0008 /* by providing a physical bypass */
-#define PL_LM_LOC_LOOP 0x0010 /* loop path just after elastic buff.*/
-#define PL_EB_LOC_LOOP 0x0020 /* loop path just prior to PDT/PDR IF*/
-#define PL_FOT_OFF 0x0040 /* assertion of /FOTOFF pin of PLC */
-#define PL_LOOPBACK 0x0080 /* it cause the /LPBCK pin ass. low */
-#define PL_MINI_CTR_INT 0x0100 /* partially contr. when bit is ass. */
-#define PL_VSYM_CTR_INT 0x0200 /* controls when int bit is asserted */
-#define PL_ENA_PAR_CHK 0x0400 /* enable parity check */
-#define PL_REQ_SCRUB 0x0800 /* limited access to scrub capability*/
-#define PL_TPC_16BIT 0x1000 /* causes the TPC as a 16 bit timer */
-#define PL_TNE_16BIT 0x2000 /* causes the TNE as a 16 bit timer */
-#define PL_NOISE_TIMER 0x4000 /* allows the noise timing function */
-
-/*
- * PLC control register B (PL_CNTRL_B: log. addr. 0x01)
- * It contains signals and requeste to direct the process of PCM and it is also
- * used to control the Line State Match interrupt.
- */
-#define PL_PCM_CNTRL 0x0003 /* control PCM state machine */
-#define PL_PCM_NAF (0) /* state is not affected */
-#define PL_PCM_START (1) /* goes to the BREAK state */
-#define PL_PCM_TRACE (2) /* goes to the TRACE state */
-#define PL_PCM_STOP (3) /* goes to the OFF state */
-
-#define PL_MAINT 0x0004 /* if OFF state --> MAINT state */
-#define PL_LONG 0x0008 /* perf. a long Link Confid.Test(LCT)*/
-#define PL_PC_JOIN 0x0010 /* if NEXT state --> JOIN state */
-
-#define PL_PC_LOOP 0x0060 /* loopback used in the LCT */
-#define PL_NOLCT (0<<5) /* no LCT is performed */
-#define PL_TPDR (1<<5) /* PCM asserts transmit PDR */
-#define PL_TIDLE (2<<5) /* PCM asserts transmit idle */
-#define PL_RLBP (3<<5) /* trans. PDR & remote loopb. path */
-
-#define PL_CLASS_S 0x0080 /* signif. that single att. station */
-
-#define PL_MAINT_LS 0x0700 /* line state while in the MAINT st. */
-#define PL_M_QUI0 (0<<8) /* transmit QUIET line state */
-#define PL_M_IDLE (1<<8) /* transmit IDLE line state */
-#define PL_M_HALT (2<<8) /* transmit HALT line state */
-#define PL_M_MASTR (3<<8) /* transmit MASTER line state */
-#define PL_M_QUI1 (4<<8) /* transmit QUIET line state */
-#define PL_M_QUI2 (5<<8) /* transmit QUIET line state */
-#define PL_M_TPDR (6<<8) /* tr. PHY_DATA requ.-symbol is tr.ed*/
-#define PL_M_QUI3 (7<<8) /* transmit QUIET line state */
-
-#define PL_MATCH_LS 0x7800 /* line state to be comp. with curr.*/
-#define PL_I_ANY (0<<11) /* Int. on any change in *_LINE_ST */
-#define PL_I_IDLE (1<<11) /* Interrupt on IDLE line state */
-#define PL_I_HALT (2<<11) /* Interrupt on HALT line state */
-#define PL_I_MASTR (4<<11) /* Interrupt on MASTER line state */
-#define PL_I_QUIET (8<<11) /* Interrupt on QUIET line state */
-
-#define PL_CONFIG_CNTRL 0x8000 /* control over scrub, byp. & loopb.*/
-
-/*
- * PLC control register C (PL_CNTRL_C: log. addr. 0x0a)
- * It contains the scrambling control registers (PLC-S only)
- */
-#define PL_C_CIPHER_ENABLE (1<<0) /* enable scrambler */
-#define PL_C_CIPHER_LPBCK (1<<1) /* loopback scrambler */
-#define PL_C_SDOFF_ENABLE (1<<6) /* enable SDOFF timer */
-#define PL_C_SDON_ENABLE (1<<7) /* enable SDON timer */
-#ifdef MOT_ELM
-#define PL_C_FOTOFF_CTRL (3<<2) /* FOTOFF timer control */
-#define PL_C_FOTOFF_TIM (0<<2) /* FOTOFF use timer for (de)-assert */
-#define PL_C_FOTOFF_INA (2<<2) /* FOTOFF forced inactive */
-#define PL_C_FOTOFF_ACT (3<<2) /* FOTOFF forced active */
-#define PL_C_FOTOFF_SRCE (1<<4) /* FOTOFF source is PCM state != OFF */
-#define PL_C_RXDATA_EN (1<<5) /* Rec scr data forced to 0 */
-#define PL_C_SDNRZEN (1<<8) /* Monitor rec descr. data for act */
-#else /* nMOT_ELM */
-#define PL_C_FOTOFF_CTRL (3<<8) /* FOTOFF timer control */
-#define PL_C_FOTOFF_0 (0<<8) /* timer off */
-#define PL_C_FOTOFF_30 (1<<8) /* 30uS */
-#define PL_C_FOTOFF_50 (2<<8) /* 50uS */
-#define PL_C_FOTOFF_NEVER (3<<8) /* never */
-#define PL_C_SDON_TIMER (3<<10) /* SDON timer control */
-#define PL_C_SDON_084 (0<<10) /* 0.84 uS */
-#define PL_C_SDON_132 (1<<10) /* 1.32 uS */
-#define PL_C_SDON_252 (2<<10) /* 2.52 uS */
-#define PL_C_SDON_512 (3<<10) /* 5.12 uS */
-#define PL_C_SOFF_TIMER (3<<12) /* SDOFF timer control */
-#define PL_C_SOFF_076 (0<<12) /* 0.76 uS */
-#define PL_C_SOFF_132 (1<<12) /* 1.32 uS */
-#define PL_C_SOFF_252 (2<<12) /* 2.52 uS */
-#define PL_C_SOFF_512 (3<<12) /* 5.12 uS */
-#define PL_C_TSEL (3<<14) /* scrambler path select */
-#endif /* nMOT_ELM */
-
-/*
- * PLC status register A (PL_STATUS_A: log. addr. 0x10)
- * It is used to report status information to the Node Processor about the
- * Line State Machine (LSM).
- */
-#ifdef MOT_ELM
-#define PLC_INT_MASK 0xc000 /* ELM integration bits in status A */
-#define PLC_INT_C 0x0000 /* ELM Revision Band C */
-#define PLC_INT_CAMEL 0x4000 /* ELM integrated into CAMEL */
-#define PLC_INT_QE 0x8000 /* ELM integrated into Quad ELM */
-#define PLC_REV_MASK 0x3800 /* revision bits in status A */
-#define PLC_REVISION_B 0x0000 /* rev bits for ELM Rev B */
-#define PLC_REVISION_QA 0x0800 /* rev bits for ELM core in QELM-A */
-#else /* nMOT_ELM */
-#define PLC_REV_MASK 0xf800 /* revision bits in status A */
-#define PLC_REVISION_A 0x0000 /* revision bits for PLC */
-#define PLC_REVISION_S 0xf800 /* revision bits for PLC-S */
-#define PLC_REV_SN3 0x7800 /* revision bits for PLC-S in IFCP */
-#endif /* nMOT_ELM */
-#define PL_SYM_PR_CTR 0x0007 /* contains the LSM symbol pair Ctr. */
-#define PL_UNKN_LINE_ST 0x0008 /* unknown line state bit from LSM */
-#define PL_LSM_STATE 0x0010 /* state bit of LSM */
-
-#define PL_LINE_ST 0x00e0 /* contains recogn. line state of LSM*/
-#define PL_L_NLS (0<<5) /* noise line state */
-#define PL_L_ALS (1<<5) /* activ line state */
-#define PL_L_UND (2<<5) /* undefined */
-#define PL_L_ILS4 (3<<5) /* idle l. s. (after 4 idle symbols) */
-#define PL_L_QLS (4<<5) /* quiet line state */
-#define PL_L_MLS (5<<5) /* master line state */
-#define PL_L_HLS (6<<5) /* halt line state */
-#define PL_L_ILS16 (7<<5) /* idle line state (after 16 idle s.)*/
-
-#define PL_PREV_LINE_ST 0x0300 /* value of previous line state */
-#define PL_P_QLS (0<<8) /* quiet line state */
-#define PL_P_MLS (1<<8) /* master line state */
-#define PL_P_HLS (2<<8) /* halt line state */
-#define PL_P_ILS16 (3<<8) /* idle line state (after 16 idle s.)*/
-
-#define PL_SIGNAL_DET 0x0400 /* 1=that signal detect is deasserted*/
-
-
-/*
- * PLC status register B (PL_STATUS_B: log. addr. 0x11)
- * It contains signals and status from the repeat filter and PCM state machine.
- */
-#define PL_BREAK_REASON 0x0007 /* reason for PCM state mach.s to br.*/
-#define PL_B_NOT (0) /* PCM SM has not gone to BREAK state*/
-#define PL_B_PCS (1) /* PC_Start issued */
-#define PL_B_TPC (2) /* TPC timer expired after T_OUT */
-#define PL_B_TNE (3) /* TNE timer expired after NS_MAX */
-#define PL_B_QLS (4) /* quit line state detected */
-#define PL_B_ILS (5) /* idle line state detected */
-#define PL_B_HLS (6) /* halt line state detected */
-
-#define PL_TCF 0x0008 /* transmit code flag (start exec.) */
-#define PL_RCF 0x0010 /* receive code flag (start exec.) */
-#define PL_LSF 0x0020 /* line state flag (l.s. has been r.)*/
-#define PL_PCM_SIGNAL 0x0040 /* indic. that XMIT_VECTOR hb.written*/
-
-#define PL_PCM_STATE 0x0780 /* state bits of PCM state machine */
-#define PL_PC0 (0<<7) /* OFF - when /RST or PCM_CNTRL */
-#define PL_PC1 (1<<7) /* BREAK - entry point in start PCM*/
-#define PL_PC2 (2<<7) /* TRACE - to localize stuck Beacon*/
-#define PL_PC3 (3<<7) /* CONNECT - synchronize ends of conn*/
-#define PL_PC4 (4<<7) /* NEXT - to separate the signalng*/
-#define PL_PC5 (5<<7) /* SIGNAL - PCM trans/rec. bit infos*/
-#define PL_PC6 (6<<7) /* JOIN - 1. state to activ conn. */
-#define PL_PC7 (7<<7) /* VERIFY - 2. - " - (3. ACTIVE) */
-#define PL_PC8 (8<<7) /* ACTIVE - PHY has been incorporated*/
-#define PL_PC9 (9<<7) /* MAINT - for test purposes or so
- that PCM op. completely in softw. */
-
-#define PL_PCI_SCRUB 0x0800 /* scrubbing function is being exec. */
-
-#define PL_PCI_STATE 0x3000 /* Physical Connect. Insertion SM */
-#define PL_CI_REMV (0<<12) /* REMOVED */
-#define PL_CI_ISCR (1<<12) /* INSERT_SCRUB */
-#define PL_CI_RSCR (2<<12) /* REMOVE_SCRUB */
-#define PL_CI_INS (3<<12) /* INSERTED */
-
-#define PL_RF_STATE 0xc000 /* state bit of repeate filter SM */
-#define PL_RF_REPT (0<<14) /* REPEAT */
-#define PL_RF_IDLE (1<<14) /* IDLE */
-#define PL_RF_HALT1 (2<<14) /* HALT1 */
-#define PL_RF_HALT2 (3<<14) /* HALT2 */
-
-
-/*
- * PLC interrupt event register (PL_INTR_EVENT: log. addr. 0x17)
- * It is read only and is clearde whenever it is read!
- * It is used by the PLC to report events to the node processor.
- */
-#define PL_PARITY_ERR 0x0001 /* p. error h.b.detected on TX9-0 inp*/
-#define PL_LS_MATCH 0x0002 /* l.s.== l.s. PLC_CNTRL_B's MATCH_LS*/
-#define PL_PCM_CODE 0x0004 /* transmit&receive | LCT complete */
-#define PL_TRACE_PROP 0x0008 /* master l.s. while PCM ACTIV|TRACE */
-#define PL_SELF_TEST 0x0010 /* QUIET|HALT while PCM in TRACE st. */
-#define PL_PCM_BREAK 0x0020 /* PCM has entered the BREAK state */
-#define PL_PCM_ENABLED 0x0040 /* asserted SC_JOIN, scrub. & ACTIV */
-#define PL_TPC_EXPIRED 0x0080 /* TPC timer reached zero */
-#define PL_TNE_EXPIRED 0x0100 /* TNE timer reached zero */
-#define PL_EBUF_ERR 0x0200 /* elastic buff. det. over-|underflow*/
-#define PL_PHYINV 0x0400 /* physical layer invalid signal */
-#define PL_VSYM_CTR 0x0800 /* violation symbol counter has incr.*/
-#define PL_MINI_CTR 0x1000 /* dep. on PLC_CNTRL_A's MINI_CTR_INT*/
-#define PL_LE_CTR 0x2000 /* link error event counter */
-#define PL_LSDO 0x4000 /* SDO input pin changed to a 1 */
-#define PL_NP_ERR 0x8000 /* NP has requested to r/w an inv. r.*/
-
-/*
- * The PLC interrupt mask register (PL_INTR_MASK: log. addr. 0x02) constr. is
- * equal PL_INTR_EVENT register.
- * For each set bit, the setting of corresponding bit generate an int to NP.
- */
-
-#ifdef MOT_ELM
-/*
- * Quad ELM Crosbar Control register values (QELM_XBAR_?)
- */
-#define QELM_XOUT_IDLE 0x0000 /* Idles/Passthrough */
-#define QELM_XOUT_P 0x0001 /* Output to: Bus P */
-#define QELM_XOUT_S 0x0002 /* Output to: Bus S */
-#define QELM_XOUT_R 0x0003 /* Output to: Bus R */
-#define QELM_XOUT_W 0x0004 /* Output to: ELM W */
-#define QELM_XOUT_X 0x0005 /* Output to: ELM X */
-#define QELM_XOUT_Y 0x0006 /* Output to: ELM Y */
-#define QELM_XOUT_Z 0x0007 /* Output to: ELM Z */
-
-/*
- * Quad ELM Interrupt data and event registers.
- */
-#define QELM_NP_ERR (1<<15) /* Node Processor Error */
-#define QELM_COUNT_Z (1<<7) /* Counter Z Interrupt */
-#define QELM_COUNT_Y (1<<6) /* Counter Y Interrupt */
-#define QELM_COUNT_X (1<<5) /* Counter X Interrupt */
-#define QELM_COUNT_W (1<<4) /* Counter W Interrupt */
-#define QELM_ELM_Z (1<<3) /* ELM Z Interrupt */
-#define QELM_ELM_Y (1<<2) /* ELM Y Interrupt */
-#define QELM_ELM_X (1<<1) /* ELM X Interrupt */
-#define QELM_ELM_W (1<<0) /* ELM W Interrupt */
-#endif /* MOT_ELM */
-/*
- * PLC Timing Parameters
- */
-#define TP_C_MIN 0xff9c /* 2 ms */
-#define TP_TL_MIN 0xfff0 /* 0.3 ms */
-#define TP_TB_MIN 0xff10 /* 5 ms */
-#define TP_T_OUT 0xd9db /* 200 ms */
-#define TP_LC_LENGTH 0xf676 /* 50 ms */
-#define TP_LC_LONGLN 0xa0a2 /* 500 ms */
-#define TP_T_SCRUB 0xff6d /* 3.5 ms */
-#define TP_NS_MAX 0xf021 /* 1.3 ms */
-
-/*
- * BIST values
- */
-#define PLC_BIST 0x6ecd /* BIST signature for PLC */
-#define PLCS_BIST 0x5b6b /* BIST signature for PLC-S */
-#define PLC_ELM_B_BIST 0x6ecd /* BIST signature of ELM Rev. B */
-#define PLC_ELM_D_BIST 0x5b6b /* BIST signature of ELM Rev. D */
-#define PLC_CAM_A_BIST 0x9e75 /* BIST signature of CAMEL Rev. A */
-#define PLC_CAM_B_BIST 0x5b6b /* BIST signature of CAMEL Rev. B */
-#define PLC_IFD_A_BIST 0x9e75 /* BIST signature of IFDDI Rev. A */
-#define PLC_IFD_B_BIST 0x5b6b /* BIST signature of IFDDI Rev. B */
-#define PLC_QELM_A_BIST 0x5b6b /* BIST signature of QELM Rev. A */
-
-/*
- FDDI board recources
- */
-
-/*
- * request register array (log. addr: RQA_A + a<<1 {a=0..7}) write only.
- * It specifies to FORMAC+ the type of buffer memory access the host requires.
- */
-#define RQ_NOT 0 /* not request */
-#define RQ_RES 1 /* reserved */
-#define RQ_SFW 2 /* special frame write */
-#define RQ_RRQ 3 /* read request: receive queue */
-#define RQ_WSQ 4 /* write request: synchronous queue */
-#define RQ_WA0 5 /* write requ.: asynchronous queue 0 */
-#define RQ_WA1 6 /* write requ.: asynchronous queue 1 */
-#define RQ_WA2 7 /* write requ.: asynchronous queue 2 */
-
-#define SZ_LONG (sizeof(long))
-
-/*
- * FDDI defaults
- * NOTE : In the ANSI docs, times are specified in units of "symbol time".
- * AMD chips use BCLK as unit. 1 BCKL == 2 symbols
- */
-#define COMPLREF ((u_long)32*256*256) /* two's complement 21 bit */
-#define MSTOBCLK(x) ((u_long)(x)*12500L)
-#define MSTOTVX(x) (((u_long)(x)*1000L)/80/255)
-
-#endif /* _SUPERNET_ */
diff --git a/drivers/net/skfp/h/targethw.h b/drivers/net/skfp/h/targethw.h
deleted file mode 100644
index 626dc7263591..000000000000
--- a/drivers/net/skfp/h/targethw.h
+++ /dev/null
@@ -1,138 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#ifndef _TARGETHW_
-#define _TARGETHW_
-
- /*
- * PCI Watermark definition
- */
-#ifdef PCI
-#define RX_WATERMARK 24
-#define TX_WATERMARK 24
-#define SK_ML_ID_1 0x20
-#define SK_ML_ID_2 0x30
-#endif
-
-#include "h/skfbi.h"
-#ifndef TAG_MODE
-#include "h/fplus.h"
-#else
-#include "h/fplustm.h"
-#endif
-
-#ifndef HW_PTR
-#define HW_PTR void __iomem *
-#endif
-
-#ifdef MULT_OEM
-#define OI_STAT_LAST 0 /* end of OEM data base */
-#define OI_STAT_PRESENT 1 /* entry present but not empty */
-#define OI_STAT_VALID 2 /* holds valid ID, but is not active */
-#define OI_STAT_ACTIVE 3 /* holds valid ID, entry is active */
- /* active = adapter is supported */
-
-/* Memory representation of IDs must match representation in adapter. */
-struct s_oem_ids {
- u_char oi_status ; /* Stat: last, present, valid, active */
- u_char oi_mark[5] ; /* "PID00" .. "PID07" .. */
- u_char oi_id[4] ; /* id bytes, representation as */
- /* defined by hardware, */
-#ifdef PCI
- u_char oi_sub_id[4] ; /* sub id bytes, representation as */
- /* defined by hardware, */
-#endif
-} ;
-#endif /* MULT_OEM */
-
-
-struct s_smt_hw {
- /*
- * global
- */
- HW_PTR iop ; /* IO base address */
- short dma ; /* DMA channel */
- short irq ; /* IRQ level */
- short eprom ; /* FLASH prom */
-
-#ifndef SYNC
- u_short n_a_send ; /* pending send requests */
-#endif
-
-#if defined(PCI)
- short slot ; /* slot number */
- short max_slots ; /* maximum number of slots */
- short wdog_used ; /* TRUE if the watch dog is used */
-#endif
-
-#ifdef PCI
- u_short pci_handle ; /* handle to access the BIOS func */
- u_long is_imask ; /* int maske for the int source reg */
- u_long phys_mem_addr ; /* physical memory address */
- u_short mc_dummy ; /* work around for MC compiler bug */
- /*
- * state of the hardware
- */
- u_short hw_state ; /* started or stopped */
-
-#define STARTED 1
-#define STOPPED 0
-
- int hw_is_64bit ; /* does we have a 64 bit adapter */
-#endif
-
-#ifdef TAG_MODE
- u_long pci_fix_value ; /* value parsed by PCIFIX */
-#endif
-
- /*
- * hwt.c
- */
- u_long t_start ; /* HWT start */
- u_long t_stop ; /* HWT stop */
- u_short timer_activ ; /* HWT timer active */
-
- /*
- * PIC
- */
- u_char pic_a1 ;
- u_char pic_21 ;
-
- /*
- * GENERIC ; do not modify beyond this line
- */
-
- /*
- * physical and canonical address
- */
- struct fddi_addr fddi_home_addr ;
- struct fddi_addr fddi_canon_addr ;
- struct fddi_addr fddi_phys_addr ;
-
- /*
- * mac variables
- */
- struct mac_parameter mac_pa ; /* tmin, tmax, tvx, treq .. */
- struct mac_counter mac_ct ; /* recv., lost, error */
- u_short mac_ring_is_up ; /* ring is up flag */
-
- struct s_smt_fp fp ; /* formac+ */
-
-#ifdef MULT_OEM
- struct s_oem_ids *oem_id ; /* pointer to selected id */
- int oem_min_status ; /* IDs to take care of */
-#endif /* MULT_OEM */
-
-} ;
-#endif
diff --git a/drivers/net/skfp/h/targetos.h b/drivers/net/skfp/h/targetos.h
deleted file mode 100644
index 5d940e7b8ea0..000000000000
--- a/drivers/net/skfp/h/targetos.h
+++ /dev/null
@@ -1,165 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-/*
- * Operating system specific definitions for driver and
- * hardware module.
- */
-
-#ifndef TARGETOS_H
-#define TARGETOS_H
-
-
-//-------- those should go into include/linux/pci.h
-#define PCI_VENDOR_ID_SK 0x1148
-#define PCI_DEVICE_ID_SK_FP 0x4000
-//--------
-
-
-
-//-------- those should go into include/linux/if_fddi.h
-#define FDDI_MAC_HDR_LEN 13
-
-#define FDDI_RII 0x01 /* routing information bit */
-#define FDDI_RCF_DIR_BIT 0x80
-#define FDDI_RCF_LEN_MASK 0x1f
-#define FDDI_RCF_BROADCAST 0x8000
-#define FDDI_RCF_LIMITED_BROADCAST 0xA000
-#define FDDI_RCF_FRAME2K 0x20
-#define FDDI_RCF_FRAME4K 0x30
-//--------
-
-
-#undef ADDR
-
-#include <asm/io.h>
-#include <linux/netdevice.h>
-#include <linux/fddidevice.h>
-#include <linux/skbuff.h>
-#include <linux/pci.h>
-#include <linux/init.h>
-
-// is redefined by linux, but we need our definition
-#undef ADDR
-#ifdef MEM_MAPPED_IO
-#define ADDR(a) (smc->hw.iop+(a))
-#else
-#define ADDR(a) (((a)>>7) ? (outp(smc->hw.iop+B0_RAP,(a)>>7), (smc->hw.iop+( ((a)&0x7F) | ((a)>>7 ? 0x80:0)) )) : (smc->hw.iop+(((a)&0x7F)|((a)>>7 ? 0x80:0))))
-#endif
-
-#include "h/hwmtm.h"
-
-#define TRUE 1
-#define FALSE 0
-
-// HWM Definitions
-// -----------------------
-#define FDDI_TRACE(string, arg1, arg2, arg3) // Performance analysis.
-#ifdef PCI
-#define NDD_TRACE(string, arg1, arg2, arg3) // Performance analysis.
-#endif // PCI
-#define SMT_PAGESIZE PAGE_SIZE // Size of a memory page (power of 2).
-// -----------------------
-
-
-// SMT Definitions
-// -----------------------
-#define TICKS_PER_SECOND HZ
-#define SMC_VERSION 1
-// -----------------------
-
-
-// OS-Driver Definitions
-// -----------------------
-#define NO_ADDRESS 0xffe0 /* No Device (I/O) Address */
-#define SKFP_MAX_NUM_BOARDS 8 /* maximum number of PCI boards */
-
-#define SK_BUS_TYPE_PCI 0
-#define SK_BUS_TYPE_EISA 1
-
-#define FP_IO_LEN 256 /* length of IO area used */
-
-#define u8 unsigned char
-#define u16 unsigned short
-#define u32 unsigned int
-
-#define MAX_TX_QUEUE_LEN 20 // number of packets queued by driver
-#define MAX_FRAME_SIZE 4550
-
-#define RX_LOW_WATERMARK NUM_RECEIVE_BUFFERS / 2
-#define TX_LOW_WATERMARK NUM_TRANSMIT_BUFFERS - 2
-
-/*
-** Include the IOCTL stuff
-*/
-#include <linux/sockios.h>
-
-#define SKFPIOCTL SIOCDEVPRIVATE
-
-struct s_skfp_ioctl {
- unsigned short cmd; /* Command to run */
- unsigned short len; /* Length of the data buffer */
- unsigned char __user *data; /* Pointer to the data buffer */
-};
-
-/*
-** Recognised ioctl commands for the driver
-*/
-#define SKFP_GET_STATS 0x05 /* Get the driver statistics */
-#define SKFP_CLR_STATS 0x06 /* Zero out the driver statistics */
-
-// The per-adapter driver structure
-struct s_smt_os {
- struct net_device *dev;
- struct net_device *next_module;
- u32 bus_type; /* bus type (0 == PCI, 1 == EISA) */
- struct pci_dev pdev; /* PCI device structure */
-
- unsigned long base_addr;
- unsigned char factory_mac_addr[8];
- ulong SharedMemSize;
- ulong SharedMemHeap;
- void* SharedMemAddr;
- dma_addr_t SharedMemDMA;
-
- ulong QueueSkb;
- struct sk_buff_head SendSkbQueue;
-
- ulong MaxFrameSize;
- u8 ResetRequested;
-
- // MAC statistics structure
- struct fddi_statistics MacStat;
-
- // receive into this local buffer if no skb available
- // data will be not valid, because multiple RxDs can
- // point here at the same time, it must be at least
- // MAX_FRAME_SIZE bytes in size
- unsigned char *LocalRxBuffer;
- dma_addr_t LocalRxBufferDMA;
-
- // Version (required by SMT module).
- u_long smc_version ;
-
- // Required by Hardware Module (HWM).
- struct hw_modul hwm ;
-
- // For SMP-savety
- spinlock_t DriverLock;
-
-};
-
-typedef struct s_smt_os skfddi_priv;
-
-#endif // _TARGETOS_
diff --git a/drivers/net/skfp/h/types.h b/drivers/net/skfp/h/types.h
deleted file mode 100644
index 5a3bf8378f9e..000000000000
--- a/drivers/net/skfp/h/types.h
+++ /dev/null
@@ -1,39 +0,0 @@
-/******************************************************************************
- *
- * (C)Copyright 1998,1999 SysKonnect,
- * a business unit of Schneider & Koch & Co. Datensysteme GmbH.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- *
- * The information in this file is provided "AS IS" without warranty.
- *
- ******************************************************************************/
-
-#include <linux/types.h>
-/*
- ----------------------
- Basic SMT system types
- ----------------------
-*/
-#ifndef _TYPES_
-#define _TYPES_
-
-#define _packed
-#ifndef far
-#define far
-#endif
-#ifndef _far
-#define _far
-#endif
-
-#define inp(p) ioread8(p)
-#define inpw(p) ioread16(p)
-#define inpd(p) ioread32(p)
-#define outp(p,c) iowrite8(c,p)
-#define outpw(p,s) iowrite16(s,p)
-#define outpd(p,l) iowrite32(l,p)
-
-#endif /* _TYPES_ */