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