* Update for AT91RM9200DK and CMC_PU2 boards:
[platform/kernel/u-boot.git] / drivers / rtl8019.h
1 /*
2  * Realtek 8019AS Ethernet
3  * (C) Copyright 2002-2003
4  * Xue Ligong(lgxue@hotmail.com),Wang Kehao, ESLAB, whut.edu.cn
5  *
6  * See file CREDITS for list of people who contributed to this
7  * project.
8  *
9  * This program is free software; you can redistribute it and/or
10  * modify it under the terms of the GNU General Public License as
11  * published by the Free Software Foundation; either version 2 of
12  * the License, or (at your option) any later version.
13  *
14  * This program is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
17  * GNU General Public License for more details.
18  *
19  * You should have received a copy of the GNU General Public License
20  * along with this program; if not, write to the Free Software
21  * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
22  * MA 02111-1307 USA
23  */
24
25 /*
26  * This code works in 8bit mode.
27  * If you need to work in 16bit mode, PLS change it!
28  */
29
30 #include <asm/types.h>
31 #include <config.h>
32
33
34 #ifdef CONFIG_DRIVER_RTL8019
35
36 #define         RTL8019_REG_00                  (RTL8019_BASE + 0x00)
37 #define         RTL8019_REG_01                  (RTL8019_BASE + 0x01)
38 #define         RTL8019_REG_02                  (RTL8019_BASE + 0x02)
39 #define         RTL8019_REG_03                  (RTL8019_BASE + 0x03)
40 #define         RTL8019_REG_04                  (RTL8019_BASE + 0x04)
41 #define         RTL8019_REG_05                  (RTL8019_BASE + 0x05)
42 #define         RTL8019_REG_06                  (RTL8019_BASE + 0x06)
43 #define         RTL8019_REG_07                  (RTL8019_BASE + 0x07)
44 #define         RTL8019_REG_08                  (RTL8019_BASE + 0x08)
45 #define         RTL8019_REG_09                  (RTL8019_BASE + 0x09)
46 #define         RTL8019_REG_0a                  (RTL8019_BASE + 0x0a)
47 #define         RTL8019_REG_0b                  (RTL8019_BASE + 0x0b)
48 #define         RTL8019_REG_0c                  (RTL8019_BASE + 0x0c)
49 #define         RTL8019_REG_0d                  (RTL8019_BASE + 0x0d)
50 #define         RTL8019_REG_0e                  (RTL8019_BASE + 0x0e)
51 #define         RTL8019_REG_0f                  (RTL8019_BASE + 0x0f)
52 #define         RTL8019_REG_10                  (RTL8019_BASE + 0x10)
53 #define         RTL8019_REG_1f                  (RTL8019_BASE + 0x1f)
54
55 #define         RTL8019_COMMAND                 RTL8019_REG_00
56 #define         RTL8019_PAGESTART               RTL8019_REG_01
57 #define         RTL8019_PAGESTOP                RTL8019_REG_02
58 #define         RTL8019_BOUNDARY                RTL8019_REG_03
59 #define         RTL8019_TRANSMITSTATUS          RTL8019_REG_04
60 #define         RTL8019_TRANSMITPAGE            RTL8019_REG_04
61 #define         RTL8019_TRANSMITBYTECOUNT0      RTL8019_REG_05
62 #define         RTL8019_NCR                     RTL8019_REG_05
63 #define         RTL8019_TRANSMITBYTECOUNT1      RTL8019_REG_06
64 #define         RTL8019_INTERRUPTSTATUS         RTL8019_REG_07
65 #define         RTL8019_CURRENT                 RTL8019_REG_07
66 #define         RTL8019_REMOTESTARTADDRESS0     RTL8019_REG_08
67 #define         RTL8019_CRDMA0                  RTL8019_REG_08
68 #define         RTL8019_REMOTESTARTADDRESS1     RTL8019_REG_09
69 #define         RTL8019_CRDMA1                  RTL8019_REG_09
70 #define         RTL8019_REMOTEBYTECOUNT0        RTL8019_REG_0a
71 #define         RTL8019_REMOTEBYTECOUNT1        RTL8019_REG_0b
72 #define         RTL8019_RECEIVESTATUS           RTL8019_REG_0c
73 #define         RTL8019_RECEIVECONFIGURATION    RTL8019_REG_0c
74 #define         RTL8019_TRANSMITCONFIGURATION   RTL8019_REG_0d
75 #define         RTL8019_FAE_TALLY               RTL8019_REG_0d
76 #define         RTL8019_DATACONFIGURATION       RTL8019_REG_0e
77 #define         RTL8019_CRC_TALLY               RTL8019_REG_0e
78 #define         RTL8019_INTERRUPTMASK           RTL8019_REG_0f
79 #define         RTL8019_MISS_PKT_TALLY          RTL8019_REG_0f
80 #define         RTL8019_PHYSICALADDRESS0        RTL8019_REG_01
81 #define         RTL8019_PHYSICALADDRESS1        RTL8019_REG_02
82 #define         RTL8019_PHYSICALADDRESS2        RTL8019_REG_03
83 #define         RTL8019_PHYSICALADDRESS3        RTL8019_REG_04
84 #define         RTL8019_PHYSICALADDRESS4        RTL8019_REG_05
85 #define         RTL8019_PHYSICALADDRESS5        RTL8019_REG_06
86 #define         RTL8019_MULTIADDRESS0           RTL8019_REG_08
87 #define         RTL8019_MULTIADDRESS1           RTL8019_REG_09
88 #define         RTL8019_MULTIADDRESS2           RTL8019_REG_0a
89 #define         RTL8019_MULTIADDRESS3           RTL8019_REG_0b
90 #define         RTL8019_MULTIADDRESS4           RTL8019_REG_0c
91 #define         RTL8019_MULTIADDRESS5           RTL8019_REG_0d
92 #define         RTL8019_MULTIADDRESS6           RTL8019_REG_0e
93 #define         RTL8019_MULTIADDRESS7           RTL8019_REG_0f
94 #define         RTL8019_DMA_DATA                RTL8019_REG_10
95 #define         RTL8019_RESET                   RTL8019_REG_1f
96
97
98 #define         RTL8019_PAGE0                   0x22
99 #define         RTL8019_PAGE1                   0x62
100 #define         RTL8019_PAGE0DMAWRITE           0x12
101 #define         RTL8019_PAGE2DMAWRITE           0x92
102 #define         RTL8019_REMOTEDMAWR             0x12
103 #define         RTL8019_REMOTEDMARD             0x0A
104 #define         RTL8019_ABORTDMAWR              0x32
105 #define         RTL8019_ABORTDMARD              0x2A
106 #define         RTL8019_PAGE0STOP               0x21
107 #define         RTL8019_PAGE1STOP               0x61
108 #define         RTL8019_TRANSMIT                0x26
109 #define         RTL8019_TXINPROGRESS            0x04
110 #define         RTL8019_SEND                    0x1A
111
112 #define         RTL8019_PSTART                  0x4c
113 #define         RTL8019_PSTOP                   0x80
114 #define         RTL8019_TPSTART                 0x40
115
116
117 #endif /*end of CONFIG_DRIVER_RTL8019*/