blob: bf63f2631ba0519234ef6f1d0c94d0af92d2b548 [file] [log] [blame]
Srinidhi Kasagarffae4e02009-11-28 08:10:40 +01001/*
2 * Copyright (C) 2009 ST-Ericsson.
3 *
4 * U8500 hardware definitions
5 *
6 * This file is licensed under the terms of the GNU General Public
7 * License version 2. This program is licensed "as is" without any
8 * warranty of any kind, whether express or implied.
9 */
10#ifndef __MACH_HARDWARE_H
11#define __MACH_HARDWARE_H
12
13/* macros to get at IO space when running virtually
14 * We dont map all the peripherals, let ioremap do
15 * this for us. We map only very basic peripherals here.
16 */
17#define U8500_IO_VIRTUAL 0xf0000000
18#define U8500_IO_PHYSICAL 0xa0000000
19
20/* this macro is used in assembly, so no cast */
21#define IO_ADDRESS(x) \
22 (((x) & 0x0fffffff) + (((x) >> 4) & 0x0f000000) + U8500_IO_VIRTUAL)
23
24/* typesafe io address */
25#define __io_address(n) __io(IO_ADDRESS(n))
Rabin Vincent94bdc0e2010-03-03 04:54:37 +010026/* used by some plat-nomadik code */
27#define io_p2v(n) __io_address(n)
Srinidhi Kasagarffae4e02009-11-28 08:10:40 +010028
Rabin Vincentc9c09572010-05-03 07:34:53 +010029#include <mach/db8500-regs.h>
30#include <mach/db5500-regs.h>
Srinidhi Kasagarffae4e02009-11-28 08:10:40 +010031
Srinidhi Kasagarffae4e02009-11-28 08:10:40 +010032/* ST-Ericsson modified pl022 id */
33#define SSP_PER_ID 0x01080022
34
Rabin Vincent75a36ee2010-03-01 05:05:56 +010035#ifndef __ASSEMBLY__
36
Rabin Vincentabf12d72010-12-08 11:07:59 +053037#include <mach/id.h>
Rabin Vincent591d8dd2010-05-03 08:46:51 +010038
Rabin Vincent01afdd12010-12-08 11:07:55 +053039#define ARRAY_AND_SIZE(x) (x), ARRAY_SIZE(x)
40
Rabin Vincent75a36ee2010-03-01 05:05:56 +010041#endif
42
Srinidhi Kasagarffae4e02009-11-28 08:10:40 +010043#endif /* __MACH_HARDWARE_H */