OpenCores
URL https://opencores.org/ocsvn/c0or1k/c0or1k/trunk

Subversion Repositories c0or1k

[/] [c0or1k/] [trunk/] [include/] [l4/] [platform/] [pb926/] [offsets.h] - Blame information for rev 2

Details | Compare with Previous | View Log

Line No. Rev Author Line
1 2 drasko
/*
2
 * Describes physical memory layout of pb926 platform.
3
 *
4
 * Copyright (C) 2007 Bahadir Balban
5
 */
6
 
7
#ifndef __PLATFORM_PB926_OFFSETS_H__
8
#define __PLATFORM_PB926_OFFSETS_H__
9
 
10
/* Physical memory base */
11
#define PLATFORM_PHYS_MEM_START                 0x00000000 /* inclusive */
12
#define PLATFORM_PHYS_MEM_END                   0x08000000 /* 128 MB, exclusive */
13
 
14
/*
15
 * Device offsets in physical memory
16
 * Naming of devices done starting with 0 subscript,
17
 * as we use these names for device capability
18
 */
19
#define PLATFORM_SYSTEM_REGISTERS               0x10000000 /* System registers */
20
#define PLATFORM_KEYBOARD0_BASE                 0x10006000 /* Keyboard */
21
#define PLATFORM_MOUSE0_BASE                    0x10007000 /* Mouse */
22
#define PLATFORM_SYSCTRL_BASE                   0x101E0000 /* System controller */
23
#define PLATFORM_WATCHDOG_BASE                  0x101E1000 /* Watchdog */
24
#define PLATFORM_TIMER0_BASE                    0x101E2000 /* Timers 0 and 1 */
25
#define PLATFORM_TIMER1_BASE                    0x101E3000 /* Timers 2 and 3 */
26
#define PLATFORM_RTC_BASE                       0x101E8000 /* Real Time Clock */
27
#define PLATFORM_VIC_BASE                       0x10140000 /* Primary Vectored IC */
28
#define PLATFORM_SIC_BASE                       0x10003000 /* Secondary IC */
29
#define PLATFORM_UART0_BASE                     0x101F1000 /* Console port (UART0) */
30
#define PLATFORM_UART1_BASE                     0x101F2000 /* Console port (UART1) */
31
#define PLATFORM_UART2_BASE                     0x101F3000 /* Console port (UART2) */
32
#define PLATFORM_UART3_BASE                     0x10009000 /* Console port (UART3) */
33
#define PLATFORM_CLCD0_BASE                     0x10120000 /* Color LCD */
34
 
35
/*
36
 * Device offsets in virtual memory. They offset to some virtual
37
 * device base address. Each page on this virtual base is consecutively
38
 * allocated to devices. Nice and smooth.
39
 */
40
#define DEVICE_PAGE             0x1000
41
 
42
#define PLATFORM_TIMER0_VBASE   (IO_AREA0_VADDR + (0 * DEVICE_PAGE))
43
#define PLATFORM_CONSOLE_VBASE  (IO_AREA0_VADDR + (1 * DEVICE_PAGE))
44
#define PLATFORM_IRQCTRL0_VBASE (IO_AREA0_VADDR + (2 * DEVICE_PAGE))
45
#define PLATFORM_IRQCTRL1_VBASE (IO_AREA0_VADDR + (3 * DEVICE_PAGE))
46
#define PLATFORM_SYSCTRL_VBASE  (IO_AREA0_VADDR + (4 * DEVICE_PAGE))
47
 
48
/* Add userspace devices here as they become necessary for irqs */
49
#define PLATFORM_TIMER1_VBASE           (IO_AREA0_VADDR + (6 * DEVICE_PAGE))
50
#define PLATFORM_KEYBOARD0_VBASE        (IO_AREA0_VADDR + (7 * DEVICE_PAGE))
51
#define PLATFORM_MOUSE0_VBASE           (IO_AREA0_VADDR + (8 * DEVICE_PAGE))
52
#define PLATFORM_CLCD0_VBASE            (IO_AREA0_VADDR + (9 * DEVICE_PAGE))
53
 
54
/* The SP810 system controller offsets */
55
#define SP810_BASE                      PLATFORM_SYSCTRL_VBASE
56
#define SP810_SCCTRL                    (SP810_BASE + 0x0)
57
 
58
/* Add size of various user space devices, to be used in capability generation */
59
#define PLATFORM_UART1_SIZE             0x1000
60
#define PLATFORM_UART2_SIZE             0x1000
61
#define PLATFORM_UART3_SIZE             0x1000
62
#define PLATFORM_TIMER1_SIZE            0x1000
63
#define PLATFORM_KEYBOARD0_SIZE         0x1000
64
#define PLATFORM_MOUSE0_SIZE            0x1000
65
#define PLATFORM_CLCD0_SIZE             0x1000
66
 
67
#endif /* __PLATFORM_PB926_OFFSETS_H__ */
68
 

powered by: WebSVN 2.1.0

© copyright 1999-2024 OpenCores.org, equivalent to Oliscience, all rights reserved. OpenCores®, registered trademark.