• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* include/asm-arm/arch-goldfish/hardware.h
2 **
3 ** Copyright (C) 2007 Google, Inc.
4 **
5 ** This software is licensed under the terms of the GNU General Public
6 ** License version 2, as published by the Free Software Foundation, and
7 ** may be copied, distributed, and modified under those terms.
8 **
9 ** This program is distributed in the hope that it will be useful,
10 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
11 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
12 ** GNU General Public License for more details.
13 **
14 */
15 
16 #ifndef __ASM_ARCH_HARDWARE_H
17 #define __ASM_ARCH_HARDWARE_H
18 
19 #include <asm/sizes.h>
20 
21 /*
22  * Where in virtual memory the IO devices (timers, system controllers
23  * and so on)
24  */
25 #define IO_BASE			0xfe000000                 // VA of IO
26 #define IO_SIZE			0x00800000                 // How much?
27 #define IO_START		0xff000000                 // PA of IO
28 
29 #define GOLDFISH_INTERRUPT_BASE     (0x0)
30 #define GOLDFISH_INTERRUPT_STATUS       (0x00) // number of pending interrupts
31 #define GOLDFISH_INTERRUPT_NUMBER       (0x04)
32 #define GOLDFISH_INTERRUPT_DISABLE_ALL  (0x08)
33 #define GOLDFISH_INTERRUPT_DISABLE      (0x0c)
34 #define GOLDFISH_INTERRUPT_ENABLE       (0x10)
35 
36 #define GOLDFISH_PDEV_BUS_BASE      (0x1000)
37 #define GOLDFISH_PDEV_BUS_END       (0x100)
38 
39 #define GOLDFISH_TTY_BASE       (0x2000)
40 #define GOLDFISH_TIMER_BASE     (0x3000)
41 
42 /* macro to get at IO space when running virtually */
43 #define IO_ADDRESS(x) ((x) + IO_BASE)
44 
45 #endif
46