Home | History | Annotate | Line # | Download | only in pcmcia
if_xireg.h revision 1.1.8.2
      1  1.1.8.2   nathanw /*	$NetBSD: if_xireg.h,v 1.1.8.2 2001/08/24 00:10:29 nathanw Exp $	*/
      2      1.1  gmcgarry /*	OpenBSD: if_xereg.h,v 1.1 1999/05/18 19:18:21 niklas Exp	*/
      3      1.1  gmcgarry 
      4      1.1  gmcgarry /*
      5      1.1  gmcgarry  * Copyright (c) 1999 Niklas Hallqvist, Brandon Creighton, Job de Haas
      6      1.1  gmcgarry  * All rights reserved.
      7      1.1  gmcgarry  *
      8      1.1  gmcgarry  * Redistribution and use in source and binary forms, with or without
      9      1.1  gmcgarry  * modification, are permitted provided that the following conditions
     10      1.1  gmcgarry  * are met:
     11      1.1  gmcgarry  * 1. Redistributions of source code must retain the above copyright
     12      1.1  gmcgarry  *    notice, this list of conditions and the following disclaimer.
     13      1.1  gmcgarry  * 2. Redistributions in binary form must reproduce the above copyright
     14      1.1  gmcgarry  *    notice, this list of conditions and the following disclaimer in the
     15      1.1  gmcgarry  *    documentation and/or other materials provided with the distribution.
     16      1.1  gmcgarry  * 3. All advertising materials mentioning features or use of this software
     17      1.1  gmcgarry  *    must display the following acknowledgement:
     18      1.1  gmcgarry  *      This product includes software developed by Niklas Hallqvist,
     19      1.1  gmcgarry  *	Brandon Creighton and Job de Haas.
     20      1.1  gmcgarry  * 4. The name of the author may not be used to endorse or promote products
     21      1.1  gmcgarry  *    derived from this software without specific prior written permission
     22      1.1  gmcgarry  *
     23      1.1  gmcgarry  * THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
     24      1.1  gmcgarry  * IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
     25      1.1  gmcgarry  * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
     26      1.1  gmcgarry  * IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
     27      1.1  gmcgarry  * INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
     28      1.1  gmcgarry  * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
     29      1.1  gmcgarry  * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
     30      1.1  gmcgarry  * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
     31      1.1  gmcgarry  * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
     32      1.1  gmcgarry  * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
     33      1.1  gmcgarry  */
     34      1.1  gmcgarry 
     35  1.1.8.2   nathanw #define PCMCIA_CCR_ECOR
     36  1.1.8.2   nathanw 
     37  1.1.8.2   nathanw /* Additional Card Configuration Registers (CCR) on Dingo */
     38      1.1  gmcgarry 
     39      1.1  gmcgarry #define PCMCIA_CCR_DCOR0		0x20
     40      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_MRST_SFRST		0x80
     41      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_MRST_SFPWDN		0x40
     42      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_LED3_SFRST		0x20
     43      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_LED3_SFPWDN		0x10
     44      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_BUS			0x08
     45      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_DECODE			0x04
     46      1.1  gmcgarry #define PCMCIA_CCR_DCOR0_SFINT			0x01
     47      1.1  gmcgarry #define PCMCIA_CCR_DCOR1		0x22
     48      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_SFCSR_WAIT		0xC0
     49      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_SHADOW_SFIOB		0x20
     50      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_SHADOW_SFCSR		0x10
     51      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_FORCE_LEVIREQ		0x08
     52      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_D6			0x04
     53      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_SF_STSCHG		0x02
     54      1.1  gmcgarry #define PCMCIA_CCR_DCOR1_SF_IREQ		0x01
     55      1.1  gmcgarry #define PCMCIA_CCR_DCOR2		0x24
     56      1.1  gmcgarry #define PCMCIA_CCR_DCOR2_SHADOW_SFCOR		0x10
     57      1.1  gmcgarry #define PCMCIA_CCR_DCOR2_SMEM_BASE		0x0F
     58      1.1  gmcgarry #define PCMCIA_CCR_DCOR3		0x26
     59      1.1  gmcgarry #define PCMCIA_CCR_DCOR4		0x28
     60      1.1  gmcgarry #define PCMCIA_CCR_SFCOR		0x40
     61      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_SRESET			0x80
     62      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_LEVIREQ		0x40
     63      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_IRQ_STSCHG		0x20
     64      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_CFINDEX		0x18
     65      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_IREQ_ENABLE		0x04
     66      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_ADDR_DECODE		0x02
     67      1.1  gmcgarry #define PCMCIA_CCR_SFCOR_FUNC_ENABLE		0x01
     68      1.1  gmcgarry #define PCMCIA_CCR_SFCSR		0x42
     69      1.1  gmcgarry #define PCMCIA_CCR_SFCSR_IOIS8			0x20
     70      1.1  gmcgarry #define PCMCIA_CCR_SFCSR_AUDIO			0x08
     71      1.1  gmcgarry #define PCMCIA_CCR_SFCSR_PWRDWN			0x04
     72      1.1  gmcgarry #define PCMCIA_CCR_SFCSR_INTR			0x02
     73      1.1  gmcgarry #define PCMCIA_CCR_SFCSR_INTRACK		0x01
     74      1.1  gmcgarry #define PCMCIA_CCR_SFIOBASE0		0x4A
     75      1.1  gmcgarry #define PCMCIA_CCR_SFIOBASE1		0x4C
     76      1.1  gmcgarry #define PCMCIA_CCR_SFILR		0x52
     77      1.1  gmcgarry 
     78      1.1  gmcgarry #define PCMCIA_CCR_SIZE_DINGO		0x54
     79      1.1  gmcgarry 
     80  1.1.8.2   nathanw #define XI_IOSIZE 	16
     81  1.1.8.2   nathanw 
     82      1.1  gmcgarry /* All pages */
     83      1.1  gmcgarry #define CR	0x0	/* W  - Command register */
     84      1.1  gmcgarry #define ESR	0x0	/* R  - Ethernet status register */
     85      1.1  gmcgarry #define PR	0x1	/* RW - Page register select */
     86      1.1  gmcgarry #define EDP	0x2	/* RW - Ethernet data port, 4 registers */
     87      1.1  gmcgarry #define ISR0	0x6	/* R  - Etherenet interrupt status register */
     88  1.1.8.2   nathanw #define GIR	0x7	/* RW - Global interrupt register - dingo only */
     89      1.1  gmcgarry #define PTR	0xd	/* R  - Packets Transmitted register */
     90      1.1  gmcgarry 
     91      1.1  gmcgarry /* Page 0 */
     92      1.1  gmcgarry #define TSO0	0x8	/* R  - Transmit space open, 3 registers */
     93      1.1  gmcgarry #define TSO1	0x9
     94      1.1  gmcgarry #define TSO2	0xa
     95      1.1  gmcgarry #define DO0	0xc	/* W  - Data offset, 2 registers */
     96      1.1  gmcgarry #define DO1	0xd
     97      1.1  gmcgarry #define RSR	0xc	/* R  - Rx status register */
     98      1.1  gmcgarry #define TPR	0xd	/* R  - Tx packets register */
     99      1.1  gmcgarry #define RBC0	0xe	/* R  - Rx byte count, 2 registers */
    100      1.1  gmcgarry #define RBC1	0xf
    101      1.1  gmcgarry 
    102      1.1  gmcgarry /* Page 1 */
    103      1.1  gmcgarry #define IMR0	0xc	/* RW - Interrupt mask, 2 registers */
    104      1.1  gmcgarry #define IMR1	0xd
    105      1.1  gmcgarry #define ECR	0xe	/* RW - Ethernet config register */
    106      1.1  gmcgarry 
    107      1.1  gmcgarry /* Page 2 */
    108      1.1  gmcgarry #define RBS0	0x8	/* RW - Receive buffer start, 2 registers */
    109      1.1  gmcgarry #define RBS1	0x9
    110      1.1  gmcgarry #define LED	0xa	/* RW - LED control register */
    111      1.1  gmcgarry #define LED3	0xb	/* RW - LED3 control register */
    112      1.1  gmcgarry #define MSR	0xc	/* RW - Misc. setup register */
    113      1.1  gmcgarry #define GP2	0xd	/* RW - General purpose register 2 */
    114      1.1  gmcgarry 
    115      1.1  gmcgarry /* Page 3 */
    116      1.1  gmcgarry #define TPT0	0xa	/* RW - Tx packet threshold, 2 registers */
    117      1.1  gmcgarry #define TPT1	0xb
    118      1.1  gmcgarry 
    119      1.1  gmcgarry /* Page 4 */
    120      1.1  gmcgarry #define GP0	0x8	/* RW - General purpose register 0 */
    121      1.1  gmcgarry #define GP1	0x9	/* RW - General purpose register 1 */
    122      1.1  gmcgarry #define BV	0xa	/* R  - Bonding version register */
    123      1.1  gmcgarry #define EES	0xb	/* RW - EEPROM control register */
    124      1.1  gmcgarry 
    125      1.1  gmcgarry /* Page 5 */
    126      1.1  gmcgarry #define RHSA0	0xa	/* RX host start address */
    127      1.1  gmcgarry 
    128      1.1  gmcgarry /* Page 6 */
    129      1.1  gmcgarry 
    130      1.1  gmcgarry /* Page 7 */
    131      1.1  gmcgarry 
    132      1.1  gmcgarry /* Page 8 */
    133      1.1  gmcgarry 
    134      1.1  gmcgarry /* Page 16 */
    135      1.1  gmcgarry 
    136      1.1  gmcgarry /* Page 0x40 */
    137      1.1  gmcgarry #define CMD0	0x8	/* W  - Receive status register */
    138      1.1  gmcgarry #define RXST0	0x9	/* RW - Receive status register */
    139      1.1  gmcgarry #define TXST0	0xb	/* RW - Transmit status, 2 registers */
    140      1.1  gmcgarry #define TXST1	0xc
    141      1.1  gmcgarry #define RX0MSK	0xd	/* RW - Receive status mask register */
    142      1.1  gmcgarry #define TX0MSK	0xe	/* RW - Transmit status mask, 2 registers */
    143      1.1  gmcgarry #define TX1MSK	0xf	/* RW - Dingo does not define this register */
    144      1.1  gmcgarry 
    145      1.1  gmcgarry /* Page 0x42 */
    146      1.1  gmcgarry #define SWC0	0x8	/* RW - Software configuration, 2 registers */
    147      1.1  gmcgarry #define SWC1	0x9
    148      1.1  gmcgarry 
    149      1.1  gmcgarry /* Page 0x50-0x57 */
    150      1.1  gmcgarry #define	IA	0x8	/* RW - Individual address */
    151      1.1  gmcgarry 
    152      1.1  gmcgarry /* CR register bits */
    153      1.1  gmcgarry #define TX_PKT		0x01	/* Transmit packet. */
    154      1.1  gmcgarry #define SOFT_RESET	0x02	/* Software reset. */
    155      1.1  gmcgarry #define ENABLE_INT	0x04	/* Enable interrupt. */
    156      1.1  gmcgarry #define FORCE_INT	0x08	/* Force interrupt. */
    157      1.1  gmcgarry #define CLR_TX_FIFO	0x10	/* Clear transmit FIFO. */
    158      1.1  gmcgarry #define CLR_RX_OVERRUN	0x20	/* Clear receive overrun. */
    159      1.1  gmcgarry #define RESTART_TX	0x40	/* Restart transmit process. */
    160      1.1  gmcgarry 
    161      1.1  gmcgarry /* ESR register bits */
    162      1.1  gmcgarry #define FULL_PKT_RCV	0x01	/* Full packet received. */
    163      1.1  gmcgarry #define PKT_REJECTED	0x04	/* A packet was rejected. */
    164      1.1  gmcgarry #define TX_PKT_PEND	0x08	/* TX Packet Pending. */
    165      1.1  gmcgarry #define INCOR_POLARITY	0x10	/* XXX from linux driver, but not used there */
    166      1.1  gmcgarry #define MEDIA_SELECT	0x20	/* set if TP, clear if AUI */
    167      1.1  gmcgarry 
    168      1.1  gmcgarry /* DO register bits */
    169      1.1  gmcgarry #define DO_OFF_MASK	0x1fff	/* Mask for offset value. */
    170      1.1  gmcgarry #define DO_CHG_OFFSET	0x2000	/* Change offset command. */
    171      1.1  gmcgarry #define DO_SHM_MODE	0x4000	/* Shared memory mode. */
    172      1.1  gmcgarry #define DO_SKIP_RX_PKT	0x8000	/* Skip Rx packet. */
    173      1.1  gmcgarry 
    174      1.1  gmcgarry /* RBC register bits */
    175      1.1  gmcgarry #define RBC_COUNT_MASK	0x1fff	/* Mask for byte count. */
    176      1.1  gmcgarry #define RBC_RX_FULL	0x2000	/* Receive full packet. */
    177      1.1  gmcgarry #define RBC_RX_PARTIAL	0x4000	/* Receive partial packet. */
    178      1.1  gmcgarry #define RBC_RX_PKT_REJ	0x8000	/* Receive packet rejected. */
    179      1.1  gmcgarry 
    180      1.1  gmcgarry /* ISR0(/IMR0) register bits */
    181      1.1  gmcgarry #define ISR_TX_OFLOW	0x01	/* Transmit buffer overflow. */
    182      1.1  gmcgarry #define ISR_PKT_TX	0x02	/* Packet transmitted. */
    183      1.1  gmcgarry #define ISR_MAC_INT	0x04	/* MAC interrupt. */
    184      1.1  gmcgarry #define ISR_RX_EARLY	0x10	/* Receive early packet. */
    185      1.1  gmcgarry #define ISR_RX_FULL	0x20	/* Receive full packet. */
    186      1.1  gmcgarry #define ISR_RX_PKT_REJ	0x40	/* Receive packet rejected. */
    187      1.1  gmcgarry #define ISR_FORCED_INT	0x80	/* Forced interrupt. */
    188      1.1  gmcgarry 
    189      1.1  gmcgarry /* ECR register bits */
    190      1.1  gmcgarry #define ECR_EARLY_TX	0x01	/* Early transmit mode. */
    191      1.1  gmcgarry #define ECR_EARLY_RX	0x02	/* Early receive mode. */
    192      1.1  gmcgarry #define ECR_FULL_DUPLEX	0x04	/* Full duplex select. */
    193      1.1  gmcgarry #define ECR_LNK_PLS_DIS	0x20	/* Link pulse disable. */
    194      1.1  gmcgarry #define ECR_SW_COMPAT	0x80	/* Software compatibility switch. */
    195      1.1  gmcgarry 
    196      1.1  gmcgarry /* GP0 register bits */
    197      1.1  gmcgarry #define GP1_WR		0x01	/* GP1 pin output value. */
    198      1.1  gmcgarry #define GP2_WR		0x02	/* GP2 pin output value. */
    199      1.1  gmcgarry #define GP1_OUT		0x04	/* GP1 pin output select. */
    200      1.1  gmcgarry #define GP2_OUT		0x08	/* GP2 pin output select. */
    201      1.1  gmcgarry #define GP1_RD		0x10	/* GP1 pin input value. */
    202      1.1  gmcgarry #define GP2_RD		0x20	/* GP2 pin input value. */
    203      1.1  gmcgarry 
    204      1.1  gmcgarry /* GP1 register bits */
    205      1.1  gmcgarry #define POWER_UP	0x01	/* When 0, power down analogue part of chip. */
    206      1.1  gmcgarry 
    207      1.1  gmcgarry /* LED register bits */
    208      1.1  gmcgarry #define LED0_SHIFT	0	/* LED0 Output shift & mask */
    209      1.1  gmcgarry #define LED0_MASK	0x7
    210      1.1  gmcgarry #define LED1_SHIFT	3	/* LED1 Output shift & mask */
    211      1.1  gmcgarry #define LED1_MASK	0x38
    212      1.1  gmcgarry #define LED0_RX_ENA	0x40	/* LED0 - receive enable */
    213      1.1  gmcgarry #define LED1_RX_ENA	0x80	/* LED1 - receive enable */
    214      1.1  gmcgarry 
    215      1.1  gmcgarry /* LED3 register bits */
    216      1.1  gmcgarry #define LED3_SHIFT	0	/* LED0 output shift & mask */
    217      1.1  gmcgarry #define LED3_MASK	0x7
    218      1.1  gmcgarry #define LED3_RX_ENA	0x40	/* LED0 - receive enable */
    219      1.1  gmcgarry 
    220      1.1  gmcgarry /* LED output values */
    221      1.1  gmcgarry #define LED_DISABLE	0	/* LED disabled */
    222      1.1  gmcgarry #define LED_COLL_ACT	1	/* Collision activity */
    223      1.1  gmcgarry #define LED_COLL_INACT	2	/* (NOT) Collision activity */
    224      1.1  gmcgarry #define LED_10MB_LINK	3	/* 10 Mb link detected */
    225      1.1  gmcgarry #define LED_100MB_LINK	4	/* 100 Mb link detected */
    226      1.1  gmcgarry #define LED_LINK	5	/* 10 Mb or 100 Mb link detected */
    227      1.1  gmcgarry #define LED_AUTO	6	/* Automatic assertion */
    228      1.1  gmcgarry #define LED_TX_ACT	7	/* Transmit activity */
    229      1.1  gmcgarry 
    230      1.1  gmcgarry /* MSR register bits */
    231      1.1  gmcgarry #define SRAM_128K_EXT	0x01	/* 128K SRAM extension */
    232      1.1  gmcgarry #define RBS_BIT16	0x02	/* RBS bit 16 */
    233      1.1  gmcgarry #define SELECT_MII	0x08	/* Select MII */
    234      1.1  gmcgarry #define HASH_TBL_ENA	0x20	/* Hash table enable */
    235      1.1  gmcgarry 
    236      1.1  gmcgarry /* GP2 register bits */
    237      1.1  gmcgarry #define GP3_WR		0x01	/* GP3 pin output value. */
    238      1.1  gmcgarry #define GP4_WR		0x02	/* GP4 pin output value. */
    239      1.1  gmcgarry #define GP3_OUT		0x04	/* GP3 pin output select. */
    240      1.1  gmcgarry #define GP4_OUT		0x08	/* GP4 pin output select. */
    241      1.1  gmcgarry #define GP3_RD		0x10	/* GP3 pin input value. */
    242      1.1  gmcgarry #define GP4_RD		0x20	/* GP4 pin input value. */
    243      1.1  gmcgarry 
    244      1.1  gmcgarry /* RSR register bits */
    245      1.1  gmcgarry #define RSR_NOTMCAST	0x01	/* clear when multicast packet */
    246      1.1  gmcgarry #define RSR_BCAST	0x02	/* set when broadcast packet */
    247      1.1  gmcgarry #define RSR_TOO_LONG	0x04	/* set if packet is longer than 1518 octets */
    248      1.1  gmcgarry #define RSR_ALIGNERR	0x10	/* incorrect CRC and last octet not complete */
    249      1.1  gmcgarry #define RSR_CRCERR	0x20	/* incorrect CRC and last octet complete */
    250      1.1  gmcgarry #define RSR_RX_OK	0x80	/* packet received okay */
    251      1.1  gmcgarry 
    252      1.1  gmcgarry /* CMD0 register bits */
    253      1.1  gmcgarry #define ONLINE		0x04	/* Online */
    254      1.1  gmcgarry #define OFFLINE		0x08	/* Online */
    255  1.1.8.2   nathanw #define ENABLE_RX	0x20	/* Enable reciever */
    256      1.1  gmcgarry #define DISABLE_RX	0x80	/* Disable receiver */
    257      1.1  gmcgarry 
    258      1.1  gmcgarry /* RX0Msk register bits */
    259      1.1  gmcgarry #define PKT_TOO_LONG	0x02	/* Packet too long mask. */
    260      1.1  gmcgarry #define CRC_ERR		0x08	/* CRC error mask. */
    261      1.1  gmcgarry #define RX_OVERRUN	0x10	/* Receive overrun mask. */
    262      1.1  gmcgarry #define RX_ABORT	0x40	/* Receive abort mask. */
    263      1.1  gmcgarry #define RX_OK		0x80	/* Receive OK mask. */
    264      1.1  gmcgarry 
    265      1.1  gmcgarry /* TX0Msk register bits */
    266      1.1  gmcgarry #define CARRIER_LOST	0x01	/* Carrier sense lost. */
    267      1.1  gmcgarry #define EXCESSIVE_COLL	0x02	/* Excessive collisions mask. */
    268      1.1  gmcgarry #define TX_UNDERRUN	0x08	/* Transmit underrun mask. */
    269      1.1  gmcgarry #define LATE_COLLISION	0x10	/* Late collision mask. */
    270      1.1  gmcgarry #define SQE		0x20	/* Signal quality error mask.. */
    271      1.1  gmcgarry #define TX_ABORT	0x40	/* Transmit abort mask. */
    272      1.1  gmcgarry #define TX_OK		0x80	/* Transmit OK mask. */
    273      1.1  gmcgarry 
    274      1.1  gmcgarry /* SWC1 register bits */
    275      1.1  gmcgarry #define SWC1_IND_ADDR	0x01	/* Individual address enable. */
    276      1.1  gmcgarry #define SWC1_MCAST_PROM	0x02	/* Multicast promiscuous enable. */
    277      1.1  gmcgarry #define SWC1_PROMISC	0x04	/* Promiscuous mode enable. */
    278      1.1  gmcgarry #define SWC1_BCAST_DIS	0x08	/* Broadcast disable. */
    279      1.1  gmcgarry #define SWC1_MEDIA_SEL	0x40	/* Media select (Mohawk). */
    280      1.1  gmcgarry #define SWC1_AUTO_MEDIA	0x80	/* Automatic media select (Mohawk). */
    281      1.1  gmcgarry 
    282      1.1  gmcgarry /* Misc. defines. */
    283      1.1  gmcgarry 
    284      1.1  gmcgarry #define PAGE(sc, page)	\
    285      1.1  gmcgarry     bus_space_write_1((sc->sc_bst), (sc->sc_bsh), (sc->sc_offset) + PR, (page))
    286      1.1  gmcgarry 
    287      1.1  gmcgarry /*
    288      1.1  gmcgarry  * GP3 is connected to the MDC pin of the NS DP83840A PHY, GP4 is
    289      1.1  gmcgarry  * connected to the MDIO pin.  These are utility macros to enhance
    290      1.1  gmcgarry  * readability of the code.
    291      1.1  gmcgarry  */
    292      1.1  gmcgarry #define MDC_LOW		GP3_OUT
    293      1.1  gmcgarry #define MDC_HIGH	(GP3_OUT | GP3_WR)
    294      1.1  gmcgarry #define MDIO_LOW	GP4_OUT
    295      1.1  gmcgarry #define MDIO_HIGH	(GP4_OUT | GP4_WR)
    296      1.1  gmcgarry #define MDIO		GP4_RD
    297      1.1  gmcgarry 
    298      1.1  gmcgarry /* Values found in MANFID. */
    299      1.1  gmcgarry #define XIMEDIA_ETHER		0x01
    300      1.1  gmcgarry #define XIMEDIA_TOKEN		0x02
    301      1.1  gmcgarry #define XIMEDIA_ARC		0x04
    302      1.1  gmcgarry #define XIMEDIA_WIRELESS	0x08
    303      1.1  gmcgarry #define XIMEDIA_MODEM		0x10
    304      1.1  gmcgarry #define XIMEDIA_GSM		0x20
    305      1.1  gmcgarry 
    306      1.1  gmcgarry #define XIPROD_IDMASK		0x0f
    307      1.1  gmcgarry #define XIPROD_POCKET		0x10
    308      1.1  gmcgarry #define XIPROD_EXTERNAL		0x20
    309      1.1  gmcgarry #define XIPROD_CREDITCARD	0x40
    310      1.1  gmcgarry #define XIPROD_CARDBUS		0x80
    311