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