xref: /openbmc/linux/arch/m68k/include/asm/mcf8390.h (revision e23feb16)
1 /****************************************************************************/
2 
3 /*
4  *	mcf8390.h -- NS8390 support for ColdFire eval boards.
5  *
6  *	(C) Copyright 1999-2000, Greg Ungerer (gerg@snapgear.com)
7  *	(C) Copyright 2000,      Lineo (www.lineo.com)
8  *	(C) Copyright 2001,      SnapGear (www.snapgear.com)
9  *
10  *      19990409 David W. Miller  Converted from m5206ne.h for 5307 eval board
11  *
12  *      Hacked support for m5206e Cadre III evaluation board
13  *      Fred Stevens (fred.stevens@pemstar.com) 13 April 1999
14  */
15 
16 /****************************************************************************/
17 #ifndef	mcf8390_h
18 #define	mcf8390_h
19 /****************************************************************************/
20 
21 
22 /*
23  *	Support for NE2000 clones devices in ColdFire based boards.
24  *	Not all boards address these parts the same way, some use a
25  *	direct addressing method, others use a side-band address space
26  *	to access odd address registers, some require byte swapping
27  *	others do not.
28  */
29 #define	BSWAP(w)	(((w) << 8) | ((w) >> 8))
30 #define	RSWAP(w)	(w)
31 
32 
33 /*
34  *	Define the basic hardware resources of NE2000 boards.
35  */
36 
37 #if defined(CONFIG_ARN5206)
38 #define NE2000_ADDR		0x40000300
39 #define NE2000_ODDOFFSET	0x00010000
40 #define NE2000_ADDRSIZE		0x00020000
41 #define	NE2000_IRQ_VECTOR	0xf0
42 #define	NE2000_IRQ_PRIORITY	2
43 #define	NE2000_IRQ_LEVEL	4
44 #define	NE2000_BYTE		volatile unsigned short
45 #endif
46 
47 #if defined(CONFIG_M5206eC3)
48 #define	NE2000_ADDR		0x40000300
49 #define	NE2000_ODDOFFSET	0x00010000
50 #define	NE2000_ADDRSIZE		0x00020000
51 #define	NE2000_IRQ_VECTOR	0x1c
52 #define	NE2000_IRQ_PRIORITY	2
53 #define	NE2000_IRQ_LEVEL	4
54 #define	NE2000_BYTE		volatile unsigned short
55 #endif
56 
57 #if defined(CONFIG_M5206e) && defined(CONFIG_NETtel)
58 #define NE2000_ADDR		0x30000300
59 #define NE2000_ADDRSIZE		0x00001000
60 #define NE2000_IRQ_VECTOR	25
61 #define NE2000_IRQ_PRIORITY	1
62 #define NE2000_IRQ_LEVEL	3
63 #define	NE2000_BYTE		volatile unsigned char
64 #endif
65 
66 #if defined(CONFIG_M5307C3)
67 #define NE2000_ADDR		0x40000300
68 #define NE2000_ODDOFFSET	0x00010000
69 #define NE2000_ADDRSIZE		0x00020000
70 #define NE2000_IRQ_VECTOR	0x1b
71 #define	NE2000_BYTE		volatile unsigned short
72 #endif
73 
74 #if defined(CONFIG_M5272) && defined(CONFIG_NETtel)
75 #define NE2000_ADDR		0x30600300
76 #define NE2000_ODDOFFSET	0x00008000
77 #define NE2000_ADDRSIZE		0x00010000
78 #define NE2000_IRQ_VECTOR	67
79 #undef	BSWAP
80 #define	BSWAP(w)		(w)
81 #define	NE2000_BYTE		volatile unsigned short
82 #undef	RSWAP
83 #define	RSWAP(w)		(((w) << 8) | ((w) >> 8))
84 #endif
85 
86 #if defined(CONFIG_M5307) && defined(CONFIG_NETtel)
87 #define NE2000_ADDR0		0x30600300
88 #define NE2000_ADDR1		0x30800300
89 #define NE2000_ODDOFFSET	0x00008000
90 #define NE2000_ADDRSIZE		0x00010000
91 #define NE2000_IRQ_VECTOR0	27
92 #define NE2000_IRQ_VECTOR1	29
93 #undef	BSWAP
94 #define	BSWAP(w)		(w)
95 #define	NE2000_BYTE		volatile unsigned short
96 #undef	RSWAP
97 #define	RSWAP(w)		(((w) << 8) | ((w) >> 8))
98 #endif
99 
100 #if defined(CONFIG_M5307) && defined(CONFIG_SECUREEDGEMP3)
101 #define NE2000_ADDR		0x30600300
102 #define NE2000_ODDOFFSET	0x00008000
103 #define NE2000_ADDRSIZE		0x00010000
104 #define NE2000_IRQ_VECTOR	27
105 #undef	BSWAP
106 #define	BSWAP(w)		(w)
107 #define	NE2000_BYTE		volatile unsigned short
108 #undef	RSWAP
109 #define	RSWAP(w)		(((w) << 8) | ((w) >> 8))
110 #endif
111 
112 #if defined(CONFIG_ARN5307)
113 #define NE2000_ADDR		0xfe600300
114 #define NE2000_ODDOFFSET	0x00010000
115 #define NE2000_ADDRSIZE		0x00020000
116 #define NE2000_IRQ_VECTOR	0x1b
117 #define NE2000_IRQ_PRIORITY	2
118 #define NE2000_IRQ_LEVEL	3
119 #define	NE2000_BYTE		volatile unsigned short
120 #endif
121 
122 #if defined(CONFIG_M5407C3)
123 #define NE2000_ADDR		0x40000300
124 #define NE2000_ODDOFFSET	0x00010000
125 #define NE2000_ADDRSIZE		0x00020000
126 #define NE2000_IRQ_VECTOR	0x1b
127 #define	NE2000_BYTE		volatile unsigned short
128 #endif
129 
130 /****************************************************************************/
131 #endif	/* mcf8390_h */
132