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