if_aereg.h revision 1.11 1 1.11 briggs /* $NetBSD: if_aereg.h,v 1.11 1995/07/30 13:38:08 briggs Exp $ */
2 1.3 cgd
3 1.1 briggs /*
4 1.6 briggs * National Semiconductor DS8390 NIC register definitions.
5 1.4 briggs *
6 1.6 briggs * Copyright (C) 1993, David Greenman. This software may be used, modified,
7 1.6 briggs * copied, distributed, and sold, in both source and binary form provided that
8 1.6 briggs * the above copyright and these terms are retained. Under no circumstances is
9 1.6 briggs * the author responsible for the proper functioning of this software, nor does
10 1.6 briggs * the author assume any responsibility for damages incurred with its use.
11 1.1 briggs */
12 1.8 briggs
13 1.8 briggs /*
14 1.8 briggs * The following is a structure that we should be pulling from
15 1.10 cgd * dev/ic/dp8390reg.h, but since we have the card in x86 mode and
16 1.8 briggs * the std. include file assumes that big-endian processors will
17 1.8 briggs * have the card in m68k mode, we're hosed for the moment.
18 1.8 briggs * Fix this. -- XXX
19 1.8 briggs */
20 1.9 briggs struct ae_ring {
21 1.9 briggs u_char rsr; /* receiver status */
22 1.9 briggs u_char next_packet; /* pointer to next packet */
23 1.9 briggs u_short count; /* bytes in packet (length + 4) */
24 1.8 briggs };
25 1.1 briggs /*
26 1.1 briggs * Vendor types
27 1.1 briggs */
28 1.6 briggs #define AE_VENDOR_UNKNOWN 0xFF /* Unknown network card */
29 1.6 briggs #define AE_VENDOR_APPLE 0x00 /* Apple Ethernet card */
30 1.6 briggs #define AE_VENDOR_INTERLAN 0x01 /* Interlan A310 card (GatorCard) */
31 1.6 briggs #define AE_VENDOR_DAYNA 0x02 /* DaynaPORT E/30s (and others?) */
32 1.6 briggs #define AE_VENDOR_ASANTE 0x03 /* Asante MacCon II/E */
33 1.11 briggs #define AE_VENDOR_FARALLON 0x04 /* Farallon EtherMac II-TP */
34 1.1 briggs
35 1.1 briggs /*
36 1.1 briggs * Compile-time config flags
37 1.1 briggs */
38 1.1 briggs /*
39 1.6 briggs * This sets the default for enabling/disablng the tranceiver.
40 1.1 briggs */
41 1.6 briggs #define AE_FLAGS_DISABLE_TRANCEIVER 0x0001
42 1.1 briggs
43 1.1 briggs /*
44 1.1 briggs * This disables the use of double transmit buffers.
45 1.1 briggs */
46 1.6 briggs #define AE_FLAGS_NO_DOUBLE_BUFFERING 0x0008
47 1.1 briggs
48 1.1 briggs /* */
49 1.9 briggs #define GC_RESET_OFFSET 0x000c0000 /* writes here reset NIC */
50 1.9 briggs #define GC_ROM_OFFSET 0x000c0000 /* address prom */
51 1.9 briggs #define GC_DATA_OFFSET 0x000d0000 /* Offset to NIC memory */
52 1.9 briggs #define GC_NIC_OFFSET 0x000e0000 /* Offset to NIC registers */
53 1.2 briggs
54 1.2 briggs #define DP_ROM_OFFSET 0x000f0000
55 1.9 briggs #define DP_DATA_OFFSET 0x000d0000 /* Offset to SONIC memory */
56 1.9 briggs #define DP_NIC_OFFSET 0x000e0000 /* Offset to SONIC registers */
57 1.1 briggs
58 1.1 briggs #define AE_ROM_OFFSET 0x000f0000
59 1.9 briggs #define AE_DATA_OFFSET 0x000d0000 /* Offset to NIC memory */
60 1.9 briggs #define AE_NIC_OFFSET 0x000e0000 /* Offset to NIC registers */
61 1.11 briggs
62 1.11 briggs #define FE_ROM_OFFSET 0x000d0006 /* Determined empirically */
63