diff options
Diffstat (limited to 'arch/ppc/platforms/4xx/sycamore.h')
-rw-r--r-- | arch/ppc/platforms/4xx/sycamore.h | 67 |
1 files changed, 26 insertions, 41 deletions
diff --git a/arch/ppc/platforms/4xx/sycamore.h b/arch/ppc/platforms/4xx/sycamore.h index 3e7b4e2c8c5..1cd6c824fd6 100644 --- a/arch/ppc/platforms/4xx/sycamore.h +++ b/arch/ppc/platforms/4xx/sycamore.h | |||
@@ -1,67 +1,52 @@ | |||
1 | /* | 1 | /* |
2 | * arch/ppc/platforms/4xx/sycamore.h | 2 | * arch/ppc/platforms/4xx/sycamore.h |
3 | * | 3 | * |
4 | * Macros, definitions, and data structures specific to the IBM PowerPC | 4 | * Sycamore board definitions |
5 | * 405GPr "Sycamore" evaluation board. | ||
6 | * | 5 | * |
7 | * Author: Armin Kuster <akuster@mvista.com> | 6 | * Copyright (c) 2005 DENX Software Engineering |
7 | * Stefan Roese <sr@denx.de> | ||
8 | * | ||
9 | * Based on original work by | ||
10 | * Armin Kuster <akuster@mvista.com> | ||
11 | * 2000 (c) MontaVista, Software, Inc. | ||
12 | * | ||
13 | * This program is free software; you can redistribute it and/or modify it | ||
14 | * under the terms of the GNU General Public License as published by the | ||
15 | * Free Software Foundation; either version 2 of the License, or (at your | ||
16 | * option) any later version. | ||
8 | * | 17 | * |
9 | * 2000 (c) MontaVista, Software, Inc. This file is licensed under | ||
10 | * the terms of the GNU General Public License version 2. This program | ||
11 | * is licensed "as is" without any warranty of any kind, whether express | ||
12 | * or implied. | ||
13 | */ | 18 | */ |
14 | 19 | ||
15 | #ifdef __KERNEL__ | 20 | #ifdef __KERNEL__ |
16 | #ifndef __ASM_SYCAMORE_H__ | 21 | #ifndef __ASM_SYCAMORE_H__ |
17 | #define __ASM_SYCAMORE_H__ | 22 | #define __ASM_SYCAMORE_H__ |
18 | 23 | ||
24 | #include <linux/config.h> | ||
19 | #include <platforms/4xx/ibm405gpr.h> | 25 | #include <platforms/4xx/ibm405gpr.h> |
26 | #include <asm/ppcboot.h> | ||
20 | 27 | ||
21 | #ifndef __ASSEMBLY__ | 28 | /* Memory map for the IBM "Sycamore" 405GPr evaluation board. |
22 | /* | ||
23 | * Data structure defining board information maintained by the boot | ||
24 | * ROM on IBM's "Sycamore" evaluation board. An effort has been made to | ||
25 | * keep the field names consistent with the 8xx 'bd_t' board info | ||
26 | * structures. | ||
27 | */ | ||
28 | |||
29 | typedef struct board_info { | ||
30 | unsigned char bi_s_version[4]; /* Version of this structure */ | ||
31 | unsigned char bi_r_version[30]; /* Version of the IBM ROM */ | ||
32 | unsigned int bi_memsize; /* DRAM installed, in bytes */ | ||
33 | unsigned char bi_enetaddr[6]; /* Local Ethernet MAC address */ | ||
34 | unsigned char bi_pci_enetaddr[6]; /* PCI Ethernet MAC address */ | ||
35 | unsigned int bi_intfreq; /* Processor speed, in Hz */ | ||
36 | unsigned int bi_busfreq; /* PLB Bus speed, in Hz */ | ||
37 | unsigned int bi_pci_busfreq; /* PCI Bus speed, in Hz */ | ||
38 | } bd_t; | ||
39 | |||
40 | /* Some 4xx parts use a different timebase frequency from the internal clock. | ||
41 | */ | ||
42 | #define bi_tbfreq bi_intfreq | ||
43 | |||
44 | |||
45 | /* Memory map for the IBM "Sycamore" 405GP evaluation board. | ||
46 | * Generic 4xx plus RTC. | 29 | * Generic 4xx plus RTC. |
47 | */ | 30 | */ |
48 | 31 | ||
49 | extern void *sycamore_rtc_base; | ||
50 | #define SYCAMORE_RTC_PADDR ((uint)0xf0000000) | 32 | #define SYCAMORE_RTC_PADDR ((uint)0xf0000000) |
51 | #define SYCAMORE_RTC_VADDR SYCAMORE_RTC_PADDR | 33 | #define SYCAMORE_RTC_VADDR SYCAMORE_RTC_PADDR |
52 | #define SYCAMORE_RTC_SIZE ((uint)8*1024) | 34 | #define SYCAMORE_RTC_SIZE ((uint)8*1024) |
53 | 35 | ||
54 | #ifdef CONFIG_PPC405GP_INTERNAL_CLOCK | ||
55 | #define BASE_BAUD 201600 | ||
56 | #else | ||
57 | #define BASE_BAUD 691200 | 36 | #define BASE_BAUD 691200 |
58 | #endif | ||
59 | 37 | ||
60 | #define SYCAMORE_PS2_BASE 0xF0100000 | 38 | #define SYCAMORE_PS2_BASE 0xF0100000 |
61 | #define SYCAMORE_FPGA_BASE 0xF0300000 | 39 | |
40 | /* Flash */ | ||
41 | #define PPC40x_FPGA_BASE 0xF0300000 | ||
42 | #define PPC40x_FPGA_REG_OFFS 5 /* offset to flash map reg */ | ||
43 | #define PPC40x_FLASH_ONBD_N(x) (x & 0x02) | ||
44 | #define PPC40x_FLASH_SRAM_SEL(x) (x & 0x01) | ||
45 | #define PPC40x_FLASH_LOW 0xFFF00000 | ||
46 | #define PPC40x_FLASH_HIGH 0xFFF80000 | ||
47 | #define PPC40x_FLASH_SIZE 0x80000 | ||
62 | 48 | ||
63 | #define PPC4xx_MACHINE_NAME "IBM Sycamore" | 49 | #define PPC4xx_MACHINE_NAME "IBM Sycamore" |
64 | 50 | ||
65 | #endif /* !__ASSEMBLY__ */ | ||
66 | #endif /* __ASM_SYCAMORE_H__ */ | 51 | #endif /* __ASM_SYCAMORE_H__ */ |
67 | #endif /* __KERNEL__ */ | 52 | #endif /* __KERNEL__ */ |