summaryrefslogtreecommitdiff
path: root/sys/arch/powerpc/mac/if_bmreg.h
diff options
context:
space:
mode:
Diffstat (limited to 'sys/arch/powerpc/mac/if_bmreg.h')
-rw-r--r--sys/arch/powerpc/mac/if_bmreg.h140
1 files changed, 140 insertions, 0 deletions
diff --git a/sys/arch/powerpc/mac/if_bmreg.h b/sys/arch/powerpc/mac/if_bmreg.h
new file mode 100644
index 00000000000..9533263a043
--- /dev/null
+++ b/sys/arch/powerpc/mac/if_bmreg.h
@@ -0,0 +1,140 @@
+/* $NetBSD: if_bmreg.h,v 1.1 1999/01/01 01:27:52 tsubai Exp $ */
+
+/*
+ * Copyright 1991-1998 by Open Software Foundation, Inc.
+ * All Rights Reserved
+ *
+ * Permission to use, copy, modify, and distribute this software and
+ * its documentation for any purpose and without fee is hereby granted,
+ * provided that the above copyright notice appears in all copies and
+ * that both the copyright notice and this permission notice appear in
+ * supporting documentation.
+ *
+ * OSF DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE
+ * INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS
+ * FOR A PARTICULAR PURPOSE.
+ *
+ * IN NO EVENT SHALL OSF BE LIABLE FOR ANY SPECIAL, INDIRECT, OR
+ * CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
+ * LOSS OF USE, DATA OR PROFITS, WHETHER IN ACTION OF CONTRACT,
+ * NEGLIGENCE, OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
+ * WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
+ */
+
+/* -------------------------------------------------------------------- */
+/* Heathrow (F)eature (C)ontrol (R)egister Addresses */
+/* -------------------------------------------------------------------- */
+#define EnetEnable 0x60000000 /* enable Enet Xcvr/Controller */
+#define ResetEnetCell 0x80000000 /* reset Enet cell */
+
+/* -------------------------------------------------------------------- */
+/* BigMac Register Numbers & Bit Assignments */
+/* -------------------------------------------------------------------- */
+#define XIFC 0x0000
+#define TxOutputEnable 0x0001
+#define MIILoopbackBits 0x0006
+#define MIIBufferEnable 0x0008
+#define SQETestEnable 0x0010
+#define LinkStatus 0x0100
+#define TXFIFOCSR 0x0100
+#define TxFIFOEnable 0x0001
+#define TxFIFO128 0x0000
+#define TXTH 0x0110
+#define RXFIFOCSR 0x0120
+#define RxFIFOEnable TxFIFOEnable
+#define RxFIFO128 TxFIFO128
+#define MEMADD 0x0130
+#define MEMDATAHI 0x0140
+#define MEMDATALO 0x0150
+#define XCVRIF 0x0160
+#define COLActiveLow 0x0002
+#define SerialMode 0x0004
+#define ClkBit 0x0008
+#define CHIPID 0x0170
+#define MIFCSR 0x0180
+#define SROMCSR 0x0190
+#define TXPNTR 0x01A0
+#define RXPNTR 0x01B0
+#define STATUS 0x0200
+#define INTDISABLE 0x0210
+#define IntFrameReceived 0x0001
+#define IntRxFrameCntExp 0x0002
+#define IntRxAlignCntExp 0x0004
+#define IntRxCRCCntExp 0x0008
+#define IntRxLenCntExp 0x0010
+#define IntRxOverFlow 0x0020
+#define IntRxCodeViolation 0x0040
+#define IntSQETestError 0x0080
+#define IntFrameSent 0x0100
+#define IntTxUnderrun 0x0200
+#define IntTxMaxSizeError 0x0400
+#define IntTxNormalCollExp 0x0800
+#define IntTxExcessCollExp 0x1000
+#define IntTxLateCollExp 0x2000
+#define IntTxNetworkCollExp 0x4000
+#define IntTxDeferTimerExp 0x8000
+#define NormalIntEvents ~(IntFrameSent)
+#define NoEventsMask 0xFFFF
+
+#define TxNeverGiveUp 0x0400
+#define TXRST 0x0420
+#define TxResetBit 0x0001
+#define TXCFG 0x0430
+#define TxMACEnable 0x0001
+#define TxThreshold 0x0004
+#define IPG1 0x0440
+#define IPG2 0x0450
+#define ALIMIT 0x0460
+#define SLOT 0x0470
+#define PALEN 0x0480
+#define PAPAT 0x0490
+#define TXSFD 0x04A0
+#define JAM 0x04B0
+#define TXMAX 0x04C0
+#define TXMIN 0x04D0
+#define PAREG 0x04E0
+#define DCNT 0x04F0
+#define NCCNT 0x0500
+#define NTCNT 0x0510
+#define EXCNT 0x0520
+#define LTCNT 0x0530
+#define RSEED 0x0540
+#define TXSM 0x0550
+#define RXRST 0x0620
+#define RxResetValue 0x0000
+#define RXCFG 0x0630
+#define RxMACEnable 0x0001
+#define ReservedValue 0x0004
+#define RxPromiscEnable 0x0040
+#define RxCRCEnable 0x0100
+#define RxRejectOwnPackets 0x0200
+#define RxHashFilterEnable 0x0800
+#define RxAddrFilterEnable 0x1000
+#define RXMAX 0x0640
+#define RXMIN 0x0650
+#define MADD2 0x0660
+#define MADD1 0x0670
+#define MADD0 0x0680
+#define FRCNT 0x0690
+#define LECNT 0x06A0
+#define AECNT 0x06B0
+#define FECNT 0x06C0
+#define RXSM 0x06D0
+#define RXCV 0x06E0
+#define HASH3 0x0700
+#define HASH2 0x0710
+#define HASH1 0x0720
+#define HASH0 0x0730
+#define AFR2 0x0740
+#define AFR1 0x0750
+#define AFR0 0x0760
+#define AFCR 0x0770
+#define EnableAllCompares 0x0fff
+
+/* -------------------------------------------------------------------- */
+/* Misc. Bit definitions for BMac Status word */
+/* -------------------------------------------------------------------- */
+#define RxAbortBit 0x8000 /* status bit in BMac status for rx packets */
+#define RxLengthMask 0x3FFF /* bits that determine length of rx packets */
+
+#define NETWORK_BUFSIZE (ETHERMAXPACKET + ETHERCRC + 2)