⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 sunbmac.h

📁 Linux内核源代码 为压缩文件 是<<Linux内核>>一书中的源代码
💻 H
📖 第 1 页 / 共 2 页
字号:
/* $Id: sunbmac.h,v 1.7 2000/07/11 22:35:22 davem Exp $ * sunbmac.h: Defines for the Sun "Big MAC" 100baseT ethernet cards. * * Copyright (C) 1997 David S. Miller (davem@caip.rutgers.edu) */#ifndef _SUNBMAC_H#define _SUNBMAC_H/* QEC global registers. */#define GLOB_CTRL	0x00UL	/* Control                  */#define GLOB_STAT	0x04UL	/* Status                   */#define GLOB_PSIZE	0x08UL	/* Packet Size              */#define GLOB_MSIZE	0x0cUL	/* Local-mem size (64K)     */#define GLOB_RSIZE	0x10UL	/* Receive partition size   */#define GLOB_TSIZE	0x14UL	/* Transmit partition size  */#define GLOB_REG_SIZE	0x18UL#define GLOB_CTRL_MMODE       0x40000000 /* MACE qec mode            */#define GLOB_CTRL_BMODE       0x10000000 /* BigMAC qec mode          */#define GLOB_CTRL_EPAR        0x00000020 /* Enable parity            */#define GLOB_CTRL_ACNTRL      0x00000018 /* SBUS arbitration control */#define GLOB_CTRL_B64         0x00000004 /* 64 byte dvma bursts      */#define GLOB_CTRL_B32         0x00000002 /* 32 byte dvma bursts      */#define GLOB_CTRL_B16         0x00000000 /* 16 byte dvma bursts      */#define GLOB_CTRL_RESET       0x00000001 /* Reset the QEC            */#define GLOB_STAT_TX          0x00000008 /* BigMAC Transmit IRQ      */#define GLOB_STAT_RX          0x00000004 /* BigMAC Receive IRQ       */#define GLOB_STAT_BM          0x00000002 /* BigMAC Global IRQ        */#define GLOB_STAT_ER          0x00000001 /* BigMAC Error IRQ         */#define GLOB_PSIZE_2048       0x00       /* 2k packet size           */#define GLOB_PSIZE_4096       0x01       /* 4k packet size           */#define GLOB_PSIZE_6144       0x10       /* 6k packet size           */#define GLOB_PSIZE_8192       0x11       /* 8k packet size           *//* QEC BigMAC channel registers. */#define CREG_CTRL	0x00UL	/* Control                   */#define CREG_STAT	0x04UL	/* Status                    */#define CREG_RXDS	0x08UL	/* RX descriptor ring ptr    */#define CREG_TXDS	0x0cUL	/* TX descriptor ring ptr    */#define CREG_RIMASK	0x10UL	/* RX Interrupt Mask         */#define CREG_TIMASK	0x14UL	/* TX Interrupt Mask         */#define CREG_QMASK	0x18UL	/* QEC Error Interrupt Mask  */#define CREG_BMASK	0x1cUL	/* BigMAC Error Interrupt Mask*/#define CREG_RXWBUFPTR	0x20UL	/* Local memory rx write ptr */#define CREG_RXRBUFPTR	0x24UL	/* Local memory rx read ptr  */#define CREG_TXWBUFPTR	0x28UL	/* Local memory tx write ptr */#define CREG_TXRBUFPTR	0x2cUL	/* Local memory tx read ptr  */#define CREG_CCNT	0x30UL	/* Collision Counter         */#define CREG_REG_SIZE	0x34UL#define CREG_CTRL_TWAKEUP     0x00000001  /* Transmitter Wakeup, 'go'. */#define CREG_STAT_BERROR      0x80000000  /* BigMAC error              */#define CREG_STAT_TXIRQ       0x00200000  /* Transmit Interrupt        */#define CREG_STAT_TXDERROR    0x00080000  /* TX Descriptor is bogus    */#define CREG_STAT_TXLERR      0x00040000  /* Late Transmit Error       */#define CREG_STAT_TXPERR      0x00020000  /* Transmit Parity Error     */#define CREG_STAT_TXSERR      0x00010000  /* Transmit SBUS error ack   */#define CREG_STAT_RXIRQ       0x00000020  /* Receive Interrupt         */#define CREG_STAT_RXDROP      0x00000010  /* Dropped a RX'd packet     */#define CREG_STAT_RXSMALL     0x00000008  /* Receive buffer too small  */#define CREG_STAT_RXLERR      0x00000004  /* Receive Late Error        */#define CREG_STAT_RXPERR      0x00000002  /* Receive Parity Error      */#define CREG_STAT_RXSERR      0x00000001  /* Receive SBUS Error ACK    */#define CREG_STAT_ERRORS      (CREG_STAT_BERROR|CREG_STAT_TXDERROR|CREG_STAT_TXLERR|   \                               CREG_STAT_TXPERR|CREG_STAT_TXSERR|CREG_STAT_RXDROP|     \                               CREG_STAT_RXSMALL|CREG_STAT_RXLERR|CREG_STAT_RXPERR|    \                               CREG_STAT_RXSERR)#define CREG_QMASK_TXDERROR   0x00080000  /* TXD error                 */#define CREG_QMASK_TXLERR     0x00040000  /* TX late error             */#define CREG_QMASK_TXPERR     0x00020000  /* TX parity error           */#define CREG_QMASK_TXSERR     0x00010000  /* TX sbus error ack         */#define CREG_QMASK_RXDROP     0x00000010  /* RX drop                   */#define CREG_QMASK_RXBERROR   0x00000008  /* RX buffer error           */#define CREG_QMASK_RXLEERR    0x00000004  /* RX late error             */#define CREG_QMASK_RXPERR     0x00000002  /* RX parity error           */#define CREG_QMASK_RXSERR     0x00000001  /* RX sbus error ack         *//* BIGMAC core registers */#define BMAC_XIFCFG	0x000UL	/* XIF config register                */	/* 0x004-->0x0fc, reserved */#define BMAC_STATUS	0x100UL	/* Status register, clear on read     */#define BMAC_IMASK	0x104UL	/* Interrupt mask register            */	/* 0x108-->0x204, reserved */#define BMAC_TXSWRESET	0x208UL	/* Transmitter software reset         */#define BMAC_TXCFG	0x20cUL	/* Transmitter config register        */#define BMAC_IGAP1	0x210UL	/* Inter-packet gap 1                 */#define BMAC_IGAP2	0x214UL	/* Inter-packet gap 2                 */#define BMAC_ALIMIT	0x218UL	/* Transmit attempt limit             */#define BMAC_STIME	0x21cUL	/* Transmit slot time                 */#define BMAC_PLEN	0x220UL	/* Size of transmit preamble          */#define BMAC_PPAT	0x224UL	/* Pattern for transmit preamble      */#define BMAC_TXDELIM	0x228UL	/* Transmit delimiter                 */#define BMAC_JSIZE	0x22cUL	/* Toe jam...                         */#define BMAC_TXPMAX	0x230UL	/* Transmit max pkt size              */#define BMAC_TXPMIN	0x234UL	/* Transmit min pkt size              */#define BMAC_PATTEMPT	0x238UL	/* Count of transmit peak attempts    */#define BMAC_DTCTR	0x23cUL	/* Transmit defer timer               */#define BMAC_NCCTR	0x240UL	/* Transmit normal-collision counter  */#define BMAC_FCCTR	0x244UL	/* Transmit first-collision counter   */#define BMAC_EXCTR	0x248UL	/* Transmit excess-collision counter  */#define BMAC_LTCTR	0x24cUL	/* Transmit late-collision counter    */#define BMAC_RSEED	0x250UL	/* Transmit random number seed        */#define BMAC_TXSMACHINE	0x254UL /* Transmit state machine             */	/* 0x258-->0x304, reserved */#define BMAC_RXSWRESET	0x308UL	/* Receiver software reset            */#define BMAC_RXCFG	0x30cUL	/* Receiver config register           */#define BMAC_RXPMAX	0x310UL	/* Receive max pkt size               */#define BMAC_RXPMIN	0x314UL	/* Receive min pkt size               */#define BMAC_MACADDR2	0x318UL	/* Ether address register 2           */#define BMAC_MACADDR1	0x31cUL	/* Ether address register 1           */#define BMAC_MACADDR0	0x320UL	/* Ether address register 0           */#define BMAC_FRCTR	0x324UL	/* Receive frame receive counter      */#define BMAC_GLECTR	0x328UL	/* Receive giant-length error counter */#define BMAC_UNALECTR	0x32cUL	/* Receive unaligned error counter    */#define BMAC_RCRCECTR	0x330UL	/* Receive CRC error counter          */#define BMAC_RXSMACHINE	0x334UL	/* Receiver state machine             */#define BMAC_RXCVALID	0x338UL	/* Receiver code violation            */	/* 0x33c, reserved */#define BMAC_HTABLE3	0x340UL	/* Hash table 3                       */#define BMAC_HTABLE2	0x344UL	/* Hash table 2                       */#define BMAC_HTABLE1	0x348UL	/* Hash table 1                       */#define BMAC_HTABLE0	0x34cUL	/* Hash table 0                       */#define BMAC_AFILTER2	0x350UL	/* Address filter 2                   */#define BMAC_AFILTER1	0x354UL	/* Address filter 1                   */#define BMAC_AFILTER0	0x358UL	/* Address filter 0                   */#define BMAC_AFMASK	0x35cUL	/* Address filter mask                */#define BMAC_REG_SIZE	0x360UL/* BigMac XIF config register. */#define BIGMAC_XCFG_ODENABLE   0x00000001 /* Output driver enable                     */#define BIGMAC_XCFG_RESV       0x00000002 /* Reserved, write always as 1              */#define BIGMAC_XCFG_MLBACK     0x00000004 /* Loopback-mode MII enable                 */#define BIGMAC_XCFG_SMODE      0x00000008 /* Enable serial mode                       *//* BigMAC status register. */#define BIGMAC_STAT_GOTFRAME   0x00000001 /* Received a frame                         */#define BIGMAC_STAT_RCNTEXP    0x00000002 /* Receive frame counter expired            */#define BIGMAC_STAT_ACNTEXP    0x00000004 /* Align-error counter expired              */#define BIGMAC_STAT_CCNTEXP    0x00000008 /* CRC-error counter expired                */#define BIGMAC_STAT_LCNTEXP    0x00000010 /* Length-error counter expired             */#define BIGMAC_STAT_RFIFOVF    0x00000020 /* Receive FIFO overflow                    */#define BIGMAC_STAT_CVCNTEXP   0x00000040 /* Code-violation counter expired           */#define BIGMAC_STAT_SENTFRAME  0x00000100 /* Transmitted a frame                      */#define BIGMAC_STAT_TFIFO_UND  0x00000200 /* Transmit FIFO underrun                   */#define BIGMAC_STAT_MAXPKTERR  0x00000400 /* Max-packet size error                    */#define BIGMAC_STAT_NCNTEXP    0x00000800 /* Normal-collision counter expired         */#define BIGMAC_STAT_ECNTEXP    0x00001000 /* Excess-collision counter expired         */#define BIGMAC_STAT_LCCNTEXP   0x00002000 /* Late-collision counter expired           */#define BIGMAC_STAT_FCNTEXP    0x00004000 /* First-collision counter expired          */#define BIGMAC_STAT_DTIMEXP    0x00008000 /* Defer-timer expired                      *//* BigMAC interrupt mask register. */#define BIGMAC_IMASK_GOTFRAME  0x00000001 /* Received a frame                         */#define BIGMAC_IMASK_RCNTEXP   0x00000002 /* Receive frame counter expired            */#define BIGMAC_IMASK_ACNTEXP   0x00000004 /* Align-error counter expired              */#define BIGMAC_IMASK_CCNTEXP   0x00000008 /* CRC-error counter expired                */#define BIGMAC_IMASK_LCNTEXP   0x00000010 /* Length-error counter expired             */#define BIGMAC_IMASK_RFIFOVF   0x00000020 /* Receive FIFO overflow                    */#define BIGMAC_IMASK_CVCNTEXP  0x00000040 /* Code-violation counter expired           */#define BIGMAC_IMASK_SENTFRAME 0x00000100 /* Transmitted a frame                      */#define BIGMAC_IMASK_TFIFO_UND 0x00000200 /* Transmit FIFO underrun                   */#define BIGMAC_IMASK_MAXPKTERR 0x00000400 /* Max-packet size error                    */#define BIGMAC_IMASK_NCNTEXP   0x00000800 /* Normal-collision counter expired         */#define BIGMAC_IMASK_ECNTEXP   0x00001000 /* Excess-collision counter expired         */#define BIGMAC_IMASK_LCCNTEXP  0x00002000 /* Late-collision counter expired           */#define BIGMAC_IMASK_FCNTEXP   0x00004000 /* First-collision counter expired          */#define BIGMAC_IMASK_DTIMEXP   0x00008000 /* Defer-timer expired                      *//* BigMac transmit config register. */#define BIGMAC_TXCFG_ENABLE    0x00000001 /* Enable the transmitter                   */#define BIGMAC_TXCFG_FIFO      0x00000010 /* Default tx fthresh...                    */#define BIGMAC_TXCFG_SMODE     0x00000020 /* Enable slow transmit mode                */#define BIGMAC_TXCFG_CIGN      0x00000040 /* Ignore transmit collisions               */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -