1 /*
2  *
3  *    Copyright (c) 1999 Grant Erickson <grant@lcse.umn.edu>
4  *
5  *    Module name: oak.h
6  *
7  *    Description:
8  *	Macros, definitions, and data structures specific to the IBM PowerPC
9  *      403G{A,B,C,CX} "Oak" evaluation board. Anything specific to the pro-
10  *      cessor itself is defined elsewhere.
11  *
12  */
13 
14 #ifdef __KERNEL__
15 #ifndef	__OAK_H__
16 #define	__OAK_H__
17 
18 #define _IO_BASE	0
19 #define _ISA_MEM_BASE	0
20 #define PCI_DRAM_OFFSET	0
21 
22 /* Memory map for the "Oak" evaluation board */
23 
24 #define	PPC403SPU_IO_BASE      	0x40000000	/* 403 On-chip serial port */
25 #define	PPC403SPU_IO_SIZE      	0x00000008
26 #define	OAKSERIAL_IO_BASE	0x7E000000	/* NS16550DV serial port */
27 #define	OAKSERIAL_IO_SIZE	0x00000008
28 #define	OAKNET_IO_BASE		0xF4000000	/* NS83902AV Ethernet */
29 #define	OAKNET_IO_SIZE		0x00000040
30 #define	OAKPROM_IO_BASE		0xFFFE0000	/* AMD 29F010 Flash ROM */
31 #define	OAKPROM_IO_SIZE		0x00020000
32 
33 
34 /* Interrupt assignments fixed by the hardware implementation */
35 
36 /* This is annoying kbuild-2.4 problem. -- Tom */
37 
38 #define	PPC403SPU_RX_INT	4	/* AIC_INT4 */
39 #define	PPC403SPU_TX_INT	5	/* AIC_INT5 */
40 #define	OAKNET_INT		27	/* AIC_INT27 */
41 #define	OAKSERIAL_INT		28	/* AIC_INT28 */
42 
43 #ifndef __ASSEMBLY__
44 /*
45  * Data structure defining board information maintained by the boot
46  * ROM on IBM's "Oak" evaluation board. An effort has been made to
47  * keep the field names consistent with the 8xx 'bd_t' board info
48  * structures.
49  */
50 
51 typedef struct board_info {
52 	unsigned char	 bi_s_version[4];	/* Version of this structure */
53 	unsigned char	 bi_r_version[30];	/* Version of the IBM ROM */
54 	unsigned int	 bi_memsize;		/* DRAM installed, in bytes */
55 	unsigned char	 bi_enetaddr[6];	/* Ethernet MAC address */
56 	unsigned int	 bi_intfreq;		/* Processor speed, in Hz */
57 	unsigned int	 bi_busfreq;		/* Bus speed, in Hz */
58 } bd_t;
59 
60 #endif /* !__ASSEMBLY__ */
61 #endif /* __OAK_H__ */
62 #endif /* __KERNEL__ */
63