mach-gt64120.h 2.4 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47
/*
 * This is a direct copy of the ev96100.h file, with a global
 * search and replace.  The numbers are the same.
 *
 * The reason I'm duplicating this is so that the 64120/96100
 * defines won't be confusing in the source code.
 */
#ifndef __ASM_MIPS_GT64120_H
#define __ASM_MIPS_GT64120_H

/*
 * This is the CPU physical memory map of PPMC Board:
 *
 *    0x00000000-0x03FFFFFF      - 64MB SDRAM (SCS[0]#)
 *    0x1C000000-0x1C000000      - LED (CS0)
 *    0x1C800000-0x1C800007      - UART 16550 port (CS1)
 *    0x1F000000-0x1F000000      - MailBox (CS3)
 *    0x1FC00000-0x20000000      - 4MB Flash (BOOT CS)
 */

#define WRPPMC_SDRAM_SCS0_BASE	0x00000000
#define WRPPMC_SDRAM_SCS0_SIZE	0x04000000

#define WRPPMC_UART16550_BASE	0x1C800000
#define WRPPMC_UART16550_CLOCK	3686400 /* 3.68MHZ */

#define WRPPMC_LED_BASE		0x1C000000
#define WRPPMC_MBOX_BASE	0x1F000000

#define WRPPMC_BOOTROM_BASE	0x1FC00000
#define WRPPMC_BOOTROM_SIZE	0x00400000 /* 4M Flash */

#define WRPPMC_MIPS_TIMER_IRQ	7 /* MIPS compare/count timer interrupt */
#define WRPPMC_UART16550_IRQ	6
#define WRPPMC_PCI_INTA_IRQ	3

/*
 * PCI Bus I/O and Memory resources allocation
 *
 * NOTE: We only have PCI_0 hose interface
 */
#define GT_PCI_MEM_BASE	0x13000000UL
#define GT_PCI_MEM_SIZE	0x02000000UL
#define GT_PCI_IO_BASE	0x11000000UL
#define GT_PCI_IO_SIZE	0x02000000UL

/*
48
 * PCI interrupts will come in on either the INTA or INTD interrupt lines,
49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83
 * which are mapped to the #2 and #5 interrupt pins of the MIPS.  On our
 * boards, they all either come in on IntD or they all come in on IntA, they
 * aren't mixed. There can be numerous PCI interrupts, so we keep a list of the
 * "requested" interrupt numbers and go through the list whenever we get an
 * IntA/D.
 *
 * Interrupts < 8 are directly wired to the processor; PCI INTA is 8 and
 * INTD is 11.
 */
#define GT_TIMER	4
#define GT_INTA		2
#define GT_INTD		5

#ifndef __ASSEMBLY__

/*
 * GT64120 internal register space base address
 */
extern unsigned long gt64120_base;

#define GT64120_BASE	(gt64120_base)

/* define WRPPMC_EARLY_DEBUG to enable early output something to UART */
#undef WRPPMC_EARLY_DEBUG

#ifdef WRPPMC_EARLY_DEBUG
extern void wrppmc_led_on(int mask);
extern void wrppmc_led_off(int mask);
extern void wrppmc_early_printk(const char *fmt, ...);
#else
#define wrppmc_early_printk(fmt, ...) do {} while (0)
#endif /* WRPPMC_EARLY_DEBUG */

#endif /* __ASSEMBLY__ */
#endif /* __ASM_MIPS_GT64120_H */
反馈
建议
客服 返回
顶部