Merge branch 'l2x0-pull-rmk' of git://dev.omapzoom.org/pub/scm/santosh/kernel-omap4...
[pandora-kernel.git] / arch / arm / mach-davinci / include / mach / tnetv107x.h
1 /*
2  * Texas Instruments TNETV107X SoC Specific Defines
3  *
4  * Copyright (C) 2010 Texas Instruments
5  *
6  * This program is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU General Public License as
8  * published by the Free Software Foundation version 2.
9  *
10  * This program is distributed "as is" WITHOUT ANY WARRANTY of any
11  * kind, whether express or implied; without even the implied warranty
12  * of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13  * GNU General Public License for more details.
14  */
15 #ifndef __ASM_ARCH_DAVINCI_TNETV107X_H
16 #define __ASM_ARCH_DAVINCI_TNETV107X_H
17
18 #include <asm/sizes.h>
19
20 #define TNETV107X_DDR_BASE      0x80000000
21
22 /*
23  * Fixed mapping for early init starts here. If low-level debug is enabled,
24  * this area also gets mapped via io_pg_offset and io_phys by the boot code.
25  * To fit in with the io_pg_offset calculation, the io base address selected
26  * here _must_ be a multiple of 2^20.
27  */
28 #define TNETV107X_IO_BASE       0x08000000
29 #define TNETV107X_IO_VIRT       (IO_VIRT + SZ_1M)
30
31 #define TNETV107X_N_GPIO        65
32
33 #ifndef __ASSEMBLY__
34
35 #include <linux/serial_8250.h>
36 #include <linux/input/matrix_keypad.h>
37
38 #include <mach/mmc.h>
39 #include <mach/nand.h>
40 #include <mach/serial.h>
41
42 struct tnetv107x_device_info {
43         struct davinci_uart_config      *serial_config;
44         struct davinci_mmc_config       *mmc_config[2];  /* 2 controllers */
45         struct davinci_nand_pdata       *nand_config[4]; /* 4 chipsels */
46         struct matrix_keypad_platform_data *keypad_config;
47 };
48
49 extern struct platform_device tnetv107x_wdt_device;
50 extern struct platform_device tnetv107x_serial_device;
51
52 extern void __init tnetv107x_init(void);
53 extern void __init tnetv107x_devices_init(struct tnetv107x_device_info *);
54 extern void __init tnetv107x_irq_init(void);
55
56 #endif
57
58 #endif /* __ASM_ARCH_DAVINCI_TNETV107X_H */