Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/net/ethernet/apple/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 7 kB image not shown  

Quelle  bmac.h   Sprache: C

 
/* SPDX-License-Identifier: GPL-2.0-or-later */
/*
 * mace.h - definitions for the registers in the "Big Mac"
 *  Ethernet controller found in PowerMac G3 models.
 *
 * Copyright (C) 1998 Randy Gobbel.
 */


/* The "Big MAC" appears to have some parts in common with the Sun "Happy Meal"
 * (HME) controller.  See sunhme.h
 */



/* register offsets */

/* global status and control */
#define XIFC  0x000   /* low-level interface control */
define TxOutputEnable 0x0001 /* output driver enable */
define XIFLoopback 0x0002 /* Loopback-mode XIF enable */
define MIILoopback 0x0004 /* Loopback-mode MII enable */
define MIILoopbackBits 0x0006
define MIIBuffDisable 0x0008 /* MII receive buffer disable */
define SQETestEnable 0x0010 /* SQE test enable */
define SQETimeWindow 0x03e0 /* SQE time window */
define XIFLanceMode 0x0010 /* Lance mode enable */
define XIFLanceIPG0 0x03e0 /* Lance mode IPG0 */
#define TXFIFOCSR 0x100   /* transmit FIFO control */
define TxFIFOEnable 0x0001
#define TXTH  0x110   /* transmit threshold */
define TxThreshold 0x0004
#define RXFIFOCSR 0x120   /* receive FIFO control */
define RxFIFOEnable 0x0001
#define MEMADD  0x130   /* memory address, unknown function */
#define MEMDATAHI 0x140   /* memory data high, presently unused in driver */
#define MEMDATALO 0x150   /* memory data low, presently unused in driver */
#define XCVRIF  0x160   /* transceiver interface control */
define COLActiveLow 0x0002
define SerialMode 0x0004
define ClkBit  0x0008
define LinkStatus 0x0100
#define CHIPID          0x170   /* chip ID */
#define MIFCSR  0x180   /* ??? */
#define SROMCSR  0x190   /* SROM control */
define ChipSelect 0x0001
define Clk  0x0002
#define TXPNTR  0x1a0   /* transmit pointer */
#define RXPNTR  0x1b0   /* receive pointer */
#define STATUS  0x200   /* status--reading this clears it */
#define INTDISABLE 0x210   /* interrupt enable/disable control */
/* bits below are the same in both STATUS and INTDISABLE registers */
define FrameReceived 0x00000001 /* Received a frame */
define RxFrameCntExp 0x00000002 /* Receive frame counter expired */
define RxAlignCntExp 0x00000004 /* Align-error counter expired */
define RxCRCCntExp 0x00000008 /* CRC-error counter expired */
define RxLenCntExp 0x00000010 /* Length-error counter expired */
define RxOverFlow 0x00000020 /* Receive FIFO overflow */
define RxCodeViolation 0x00000040 /* Code-violation counter expired */
define SQETestError 0x00000080 /* Test error in XIF for SQE */
define FrameSent 0x00000100 /* Transmitted a frame */
define TxUnderrun 0x00000200 /* Transmit FIFO underrun */
define TxMaxSizeError 0x00000400 /* Max-packet size error */
define TxNormalCollExp 0x00000800 /* Normal-collision counter expired */
define TxExcessCollExp 0x00001000 /* Excess-collision counter expired */
define TxLateCollExp 0x00002000 /* Late-collision counter expired */
define TxNetworkCollExp 0x00004000 /* First-collision counter expired */
define TxDeferTimerExp 0x00008000 /* Defer-timer expired */
define RxFIFOToHost 0x00010000 /* Data moved from FIFO to host */
define RxNoDescriptors 0x00020000 /* No more receive descriptors */
define RxDMAError 0x00040000 /* Error during receive DMA */
define RxDMALateErr 0x00080000 /* Receive DMA, data late */
define RxParityErr 0x00100000 /* Parity error during receive DMA */
define RxTagError 0x00200000 /* Tag error during receive DMA */
define TxEOPError 0x00400000 /* Tx descriptor did not have EOP set */
define MIFIntrEvent 0x00800000 /* MIF is signaling an interrupt */
define TxHostToFIFO 0x01000000 /* Data moved from host to FIFO  */
define TxFIFOAllSent 0x02000000 /* Transmitted all packets in FIFO */
define TxDMAError 0x04000000 /* Error during transmit DMA */
define TxDMALateError 0x08000000 /* Late error during transmit DMA */
define TxParityError 0x10000000 /* Parity error during transmit DMA */
define TxTagError 0x20000000 /* Tag error during transmit DMA */
define PIOError 0x40000000 /* PIO access got an error */
define PIOParityError 0x80000000 /* PIO access got a parity error  */
define DisableAll 0xffffffff
define EnableAll 0x00000000
/* # define NormalIntEvents ~(FrameReceived | FrameSent | TxUnderrun) */
define EnableNormal ~(FrameReceived | FrameSent)
define EnableErrors (FrameReceived | FrameSent)
define RxErrorMask (RxFrameCntExp | RxAlignCntExp | RxCRCCntExp | \
     RxLenCntExp | RxOverFlow | RxCodeViolation)
define TxErrorMask (TxUnderrun | TxMaxSizeError | TxExcessCollExp | \
     TxLateCollExp | TxNetworkCollExp | TxDeferTimerExp)

/* transmit control */
#define TXRST  0x420   /* transmit reset */
define TxResetBit 0x0001
#define TXCFG  0x430   /* transmit configuration control*/
define TxMACEnable 0x0001 /* output driver enable */
define TxSlowMode 0x0020 /* enable slow mode */
define TxIgnoreColl 0x0040 /* ignore transmit collisions */
define TxNoFCS  0x0080 /* do not emit FCS */
define TxNoBackoff 0x0100 /* no backoff in case of collisions */
define TxFullDuplex 0x0200 /* enable full-duplex */
define TxNeverGiveUp 0x0400 /* don't give up on transmits */
#define IPG1  0x440   /* Inter-packet gap 1 */
#define IPG2  0x450   /* Inter-packet gap 2 */
#define ALIMIT  0x460   /* Transmit attempt limit */
#define SLOT  0x470   /* Transmit slot time */
#define PALEN  0x480   /* Size of transmit preamble */
#define PAPAT  0x490   /* Pattern for transmit preamble */
#define TXSFD  0x4a0   /* Transmit frame delimiter */
#define JAM  0x4b0   /* Jam size */
#define TXMAX  0x4c0   /* Transmit max pkt size */
#define TXMIN  0x4d0   /* Transmit min pkt size */
#define PAREG  0x4e0   /* Count of transmit peak attempts */
#define DCNT  0x4f0   /* Transmit defer timer */
#define NCCNT  0x500   /* Transmit normal-collision counter */
#define NTCNT  0x510   /* Transmit first-collision counter */
#define EXCNT  0x520   /* Transmit excess-collision counter */
#define LTCNT  0x530   /* Transmit late-collision counter */
#define RSEED  0x540   /* Transmit random number seed */
#define TXSM  0x550   /* Transmit state machine */

/* receive control */
#define RXRST  0x620   /* receive reset */
define RxResetValue 0x0000
#define RXCFG  0x630   /* receive configuration control */
define RxMACEnable 0x0001 /* receiver overall enable */
define RxCFGReserved 0x0004
define RxPadStripEnab 0x0020 /* enable pad byte stripping */
define RxPromiscEnable 0x0040 /* turn on promiscuous mode */
define RxNoErrCheck 0x0080 /* disable receive error checking */
define RxCRCNoStrip 0x0100 /* disable auto-CRC-stripping */
define RxRejectOwnPackets 0x0200 /* don't receive our own packets */
define RxGrpPromisck 0x0400 /* enable group promiscuous mode */
define RxHashFilterEnable 0x0800 /* enable hash filter */
define RxAddrFilterEnable 0x1000 /* enable address filter */
#define RXMAX  0x640   /* Max receive packet size */
#define RXMIN  0x650   /* Min receive packet size */
#define MADD2  0x660   /* our enet address, high part */
#define MADD1  0x670   /* our enet address, middle part */
#define MADD0  0x680   /* our enet address, low part */
#define FRCNT  0x690   /* receive frame counter */
#define LECNT  0x6a0   /* Receive excess length error counter */
#define AECNT  0x6b0   /* Receive misaligned error counter */
#define FECNT  0x6c0   /* Receive CRC error counter */
#define RXSM  0x6d0   /* Receive state machine */
#define RXCV  0x6e0   /* Receive code violation */

#define BHASH3  0x700   /* multicast hash register */
#define BHASH2  0x710   /* multicast hash register */
#define BHASH1  0x720   /* multicast hash register */
#define BHASH0  0x730   /* multicast hash register */

#define AFR2  0x740   /* address filtering setup? */
#define AFR1  0x750   /* address filtering setup? */
#define AFR0  0x760   /* address filtering setup? */
#define AFCR  0x770   /* address filter compare register? */
define EnableAllCompares 0x0fff

/* bits in XIFC */

Messung V0.5
C=93 H=98 G=95

¤ Dauer der Verarbeitung: 0.3 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.