[BACK]Return to if_cnwreg.h CVS log [TXT][DIR] Up to [local] / sys / dev / pcmcia

Annotation of sys/dev/pcmcia/if_cnwreg.h, Revision 1.1.1.1

1.1       nbrk        1: /*     $OpenBSD: if_cnwreg.h,v 1.2 2000/02/01 17:21:48 fgsch Exp $     */
                      2:
                      3: /*-
                      4:  * Copyright (c) 1998 The NetBSD Foundation, Inc.
                      5:  * All rights reserved.
                      6:  *
                      7:  * This code is derived from software contributed to The NetBSD Foundation
                      8:  * by Michael Eriksson.
                      9:  *
                     10:  * Redistribution and use in source and binary forms, with or without
                     11:  * modification, are permitted provided that the following conditions
                     12:  * are met:
                     13:  * 1. Redistributions of source code must retain the above copyright
                     14:  *    notice, this list of conditions and the following disclaimer.
                     15:  * 2. Redistributions in binary form must reproduce the above copyright
                     16:  *    notice, this list of conditions and the following disclaimer in the
                     17:  *    documentation and/or other materials provided with the distribution.
                     18:  * 3. All advertising materials mentioning features or use of this software
                     19:  *    must display the following acknowledgement:
                     20:  *     This product includes software developed by the NetBSD
                     21:  *     Foundation, Inc. and its contributors.
                     22:  * 4. Neither the name of The NetBSD Foundation nor the names of its
                     23:  *    contributors may be used to endorse or promote products derived
                     24:  *    from this software without specific prior written permission.
                     25:  *
                     26:  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
                     27:  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
                     28:  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
                     29:  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
                     30:  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
                     31:  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
                     32:  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
                     33:  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
                     34:  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
                     35:  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
                     36:  * POSSIBILITY OF SUCH DAMAGE.
                     37:  */
                     38:
                     39:
                     40: /* I/O area */
                     41: #define CNW_IO_SIZE            0x10
                     42:
                     43: /* I/O registers */
                     44: #define CNW_REG_COR            0x0
                     45: #    define CNW_COR_IENA               0x01    /* Interrupt enable */
                     46: #    define CNW_COR_LVLREQ             0x40    /* Keep high */
                     47: #define CNW_REG_CCSR           0x2
                     48: #define CNW_REG_ASR            0x4
                     49: #    define CNW_ASR_TXBA               0x01    /* Trasmit buffer available */
                     50: #    define CNW_ASR_WOC                        0x08    /* Write Operation Complete */
                     51: #    define CNW_ASR_TXDN               0x20    /* Transmit done */
                     52: #    define CNW_ASR_RXERR              0x40    /* Receive error */
                     53: #    define CNW_ASR_RXRDY              0x80    /* Packet received */
                     54: #define CNW_REG_IOLOW          0x6
                     55: #define CNW_REG_IOHI           0x7
                     56: #define CNW_REG_IOCONTROL      0x8
                     57: #define CNW_REG_IMR            0xa
                     58: #    define CNW_IMR_IENA               0x02    /* Interrupt enable */
                     59: #    define CNW_IMR_RFU1               0x10    /* RFU intr mask, keep high */
                     60: #define CNW_REG_PMR            0xc
                     61: #    define CNW_PMR_RESET              0x80
                     62: #define CNW_REG_DATA           0xf
                     63:
                     64:
                     65: /* Mapped memory */
                     66: #define CNW_MEM_ADDR           0x20000
                     67: #define CNW_MEM_SIZE           0x8000
                     68:
                     69: /* Extended I/O registers (memory mapped) */
                     70: #define CNW_EREG_CB            0x100
                     71: #define CNW_EREG_ASCC          0x114
                     72: #define CNW_EREG_RSER          0x120
                     73: #    define CNW_RSER_RXBIG             0x02
                     74: #    define CNW_RSER_RXCRC             0x04
                     75: #    define CNW_RSER_RXOVERRUN         0x08
                     76: #    define CNW_RSER_RXOVERFLOW                0x10
                     77: #    define CNW_RSER_RXERR             0x40
                     78: #    define CNW_RSER_RXAVAIL           0x80
                     79: #define CNW_EREG_RSERW         0x124
                     80: #define CNW_EREG_TSER          0x130
                     81: #    define CNW_TSER_RTRY              0x0f
                     82: #    define CNW_TSER_TXERR             0x10
                     83: #    define CNW_TSER_TXOK              0x20
                     84: #    define CNW_TSER_TXNOAP            0x40
                     85: #    define CNW_TSER_TXGU              0x80
                     86: #    define CNW_TSER_ERROR             (CNW_TSER_TXERR | CNW_TSER_TXNOAP | \
                     87:                                         CNW_TSER_TXGU)
                     88: #define CNW_EREG_TSERW         0x134
                     89: #define CNW_EREG_TDP           0x140
                     90: #define CNW_EREG_LIF           0x14e
                     91: #define CNW_EREG_RDP           0x150
                     92: #define CNW_EREG_SPCQ          0x154
                     93: #define CNW_EREG_SPU           0x155
                     94: #define CNW_EREG_ISPLQ         0x156
                     95: #define CNW_EREG_HHC           0x158
                     96: #define CNW_EREG_PA            0x160
                     97: #define CNW_EREG_ARW           0x166
                     98: #define CNW_EREG_MHS           0x16b
                     99: #define CNW_EREG_NI            0x16e
                    100: #define CNW_EREG_CRBP          0x17a
                    101: #define CNW_EREG_EC            0x180
                    102: #define CNW_EREG_STAT_RXERR    0x184
                    103: #define CNW_EREG_STAT_FRAME    0x186
                    104: #define CNW_EREG_STAT_IBEAT    0x188
                    105: #define CNW_EREG_STAT_RXBUF    0x18e
                    106: #define CNW_EREG_STAT_RXMULTI  0x190
                    107: #define CNW_EREG_STAT_TXRETRY  0x192
                    108: #define CNW_EREG_STAT_TXABORT  0x194
                    109: #define CNW_EREG_STAT_OBEAT    0x198
                    110: #define CNW_EREG_STAT_TXOK     0x19a
                    111: #define CNW_EREG_STAT_TXSENT   0x19c
                    112:
                    113: /*
                    114:  * Commands used in the extended command buffer
                    115:  * CNW_EREG_CB (0x100-0x10f)
                    116:  */
                    117: #define CNW_CMD_NOP            0x00
                    118: #define CNW_CMD_SRC            0x01
                    119: #    define CNW_RXCONF_RXENA           0x80    /* Receive Enable */
                    120: #    define CNW_RXCONF_MAC             0x20    /* MAC host receive mode */
                    121: #    define CNW_RXCONF_PRO             0x10    /* Promiscuous */
                    122: #    define CNW_RXCONF_AMP             0x08    /* Accept Multicast Packets */
                    123: #    define CNW_RXCONF_BCAST           0x04    /* Accept Broadcast Packets */
                    124: #define CNW_CMD_STC            0x02
                    125: #    define CNW_TXCONF_TXENA           0x80    /* Transmit Enable */
                    126: #    define CNW_TXCONF_MAC             0x20    /* Host sends MAC mode */
                    127: #    define CNW_TXCONF_EUD             0x10    /* Enable Uni-Data packets */
                    128: #    define CNW_TXCONF_KEY             0x02    /* Scramble data packets */
                    129: #    define CNW_TXCONF_LOOP            0x01    /* Loopback mode */
                    130: #define CNW_CMD_AMA            0x03
                    131: #define CNW_CMD_DMA            0x04
                    132: #define CNW_CMD_SAMA           0x05
                    133: #define CNW_CMD_ER             0x06
                    134: #define CNW_CMD_DR             0x07
                    135: #define CNW_CMD_TL             0x08
                    136: #define CNW_CMD_SRP            0x09
                    137: #define CNW_CMD_SSK            0x0a
                    138: #define CNW_CMD_SMD            0x0b
                    139: #define CNW_CMD_SAPD           0x0c
                    140: #define CNW_CMD_SSS            0x11
                    141: #define CNW_CMD_EOC            0x00            /* End-of-command marker */
                    142:

CVSweb