1 |
2 |
drasko |
/*
|
2 |
|
|
* Describes physical memory layout of realview platform.
|
3 |
|
|
* Right now this contains common offsets for
|
4 |
|
|
* pb11mpcore, pba9 and eb.
|
5 |
|
|
*
|
6 |
|
|
* This is internally included by respective platform's offsets.h
|
7 |
|
|
*
|
8 |
|
|
* Copyright (C) 2007 Bahadir Balban
|
9 |
|
|
*/
|
10 |
|
|
|
11 |
|
|
#ifndef __PLATFORM_REALVIEW_OFFSETS_H__
|
12 |
|
|
#define __PLATFORM_REALVIEW_OFFSETS_H__
|
13 |
|
|
|
14 |
|
|
/* Physical memory base */
|
15 |
|
|
#define PLATFORM_PHYS_MEM_START 0x00000000 /* inclusive */
|
16 |
|
|
#define PLATFORM_PHYS_MEM_END 0x10000000 /* 256 MB, exclusive */
|
17 |
|
|
|
18 |
|
|
/*
|
19 |
|
|
* Device offsets in physical memory
|
20 |
|
|
* Naming of devices done starting with 0 subscript,
|
21 |
|
|
* as we use these names for device capability
|
22 |
|
|
*/
|
23 |
|
|
#define PLATFORM_SYSTEM_REGISTERS 0x10000000 /* System registers */
|
24 |
|
|
#define PLATFORM_SYSCTRL_BASE 0x10001000 /* System controller0 */
|
25 |
|
|
#define PLATFORM_KEYBOARD0_BASE 0x10006000 /* Keyboard */
|
26 |
|
|
#define PLATFORM_MOUSE0_BASE 0x10007000 /* Mouse */
|
27 |
|
|
#define PLATFORM_UART0_BASE 0x10009000 /* Console port (UART0) */
|
28 |
|
|
#define PLATFORM_UART1_BASE 0x1000A000 /* Console port (UART1) */
|
29 |
|
|
#define PLATFORM_UART2_BASE 0x1000B000 /* Console port (UART2) */
|
30 |
|
|
#define PLATFORM_UART3_BASE 0x1000C000 /* Console port (UART3) */
|
31 |
|
|
#define PLATFORM_TIMER0_BASE 0x10011000 /* Timers 0 and 1 */
|
32 |
|
|
#define PLATFORM_TIMER1_BASE 0x10012000 /* Timers 2 and 3 */
|
33 |
|
|
|
34 |
|
|
/*
|
35 |
|
|
* Virtual Memory base address, where devices will be mapped.
|
36 |
|
|
* Each Device will take one page in virtual memory.
|
37 |
|
|
* Nice and smooth.
|
38 |
|
|
*/
|
39 |
|
|
#define DEVICE_PAGE 0x1000
|
40 |
|
|
|
41 |
|
|
#define PLATFORM_SYSREGS_VBASE (IO_AREA0_VADDR + (0 * DEVICE_PAGE))
|
42 |
|
|
#define PLATFORM_SYSCTRL_VBASE (IO_AREA0_VADDR + (1 * DEVICE_PAGE))
|
43 |
|
|
#define PLATFORM_SYSCTRL1_VBASE (IO_AREA0_VADDR + (2 * DEVICE_PAGE))
|
44 |
|
|
#define PLATFORM_CONSOLE_VBASE (IO_AREA0_VADDR + (3 * DEVICE_PAGE))
|
45 |
|
|
#define PLATFORM_TIMER0_VBASE (IO_AREA0_VADDR + (4 * DEVICE_PAGE))
|
46 |
|
|
#define PLATFORM_GIC0_VBASE (IO_AREA0_VADDR + (5 * DEVICE_PAGE))
|
47 |
|
|
#define PLATFORM_GIC1_VBASE (IO_AREA0_VADDR + (7 * DEVICE_PAGE))
|
48 |
|
|
#define PLATFORM_GIC2_VBASE (IO_AREA0_VADDR + (8 * DEVICE_PAGE))
|
49 |
|
|
#define PLATFORM_GIC3_VBASE (IO_AREA0_VADDR + (9 * DEVICE_PAGE))
|
50 |
|
|
|
51 |
|
|
|
52 |
|
|
/* Add size of various user space devices, to be used in capability generation */
|
53 |
|
|
#define PLATFORM_TIMER1_VBASE (IO_AREA0_VADDR + (10 * DEVICE_PAGE))
|
54 |
|
|
#define PLATFORM_KEYBOARD0_VBASE (IO_AREA0_VADDR + (11 * DEVICE_PAGE))
|
55 |
|
|
#define PLATFORM_MOUSE0_VBASE (IO_AREA0_VADDR + (12 * DEVICE_PAGE))
|
56 |
|
|
#define PLATFORM_CLCD0_VBASE (IO_AREA0_VADDR + (13 * DEVICE_PAGE))
|
57 |
|
|
|
58 |
|
|
/* The SP810 system controller offsets */
|
59 |
|
|
#define SP810_BASE PLATFORM_SYSCTRL_VBASE
|
60 |
|
|
#define SP810_SCCTRL (SP810_BASE + 0x0)
|
61 |
|
|
|
62 |
|
|
/* Add size of various user space devices, to be used in capability generation */
|
63 |
|
|
#define PLATFORM_UART1_SIZE DEVICE_PAGE
|
64 |
|
|
#define PLATFORM_UART2_SIZE DEVICE_PAGE
|
65 |
|
|
#define PLATFORM_UART3_SIZE DEVICE_PAGE
|
66 |
|
|
#define PLATFORM_TIMER1_SIZE DEVICE_PAGE
|
67 |
|
|
#define PLATFORM_KEYBOARD0_SIZE DEVICE_PAGE
|
68 |
|
|
#define PLATFORM_MOUSE0_SIZE DEVICE_PAGE
|
69 |
|
|
#define PLATFORM_CLCD0_SIZE DEVICE_PAGE
|
70 |
|
|
|
71 |
|
|
#endif /* __PLATFORM_REALVIEW_OFFSETS_H__ */
|
72 |
|
|
|