blob: cb4236e98a0f429f55e21b776561c229befebd8b [file] [log] [blame]
Daniel Mack4e4fc052008-01-23 14:54:50 +01001#ifndef _COLIBRI_H_
2#define _COLIBRI_H_
Daniel Mack8a28b102009-04-02 08:33:15 +02003
4#include <net/ax88796.h>
Jakob Viketoftccb8d8d2010-05-05 18:25:27 +08005#include <mach/mfp.h>
Daniel Mack8a28b102009-04-02 08:33:15 +02006
Daniel Mack5fc9f9a2009-03-13 16:37:09 +01007/*
Daniel Mack4c243c82010-05-22 00:29:38 +02008 * base board glue for PXA270 module
9 */
10
11enum {
Marek Vasuta3172e52010-08-12 01:45:05 +020012 COLIBRI_EVALBOARD = 0,
Marek Vasut403d2972010-05-22 00:29:39 +020013 COLIBRI_PXA270_INCOME,
Daniel Mack4c243c82010-05-22 00:29:38 +020014};
15
Marek Vasuta3172e52010-08-12 01:45:05 +020016#if defined(CONFIG_MACH_COLIBRI_EVALBOARD)
17extern void colibri_evalboard_init(void);
Daniel Mack4c243c82010-05-22 00:29:38 +020018#else
Marek Vasuta3172e52010-08-12 01:45:05 +020019static inline void colibri_evalboard_init(void) {}
Daniel Mack4c243c82010-05-22 00:29:38 +020020#endif
21
Marek Vasut403d2972010-05-22 00:29:39 +020022#if defined(CONFIG_MACH_COLIBRI_PXA270_INCOME)
23extern void colibri_pxa270_income_boardinit(void);
24#else
25static inline void colibri_pxa270_income_boardinit(void) {}
26#endif
27
Daniel Mack4c243c82010-05-22 00:29:38 +020028/*
Daniel Mack5fc9f9a2009-03-13 16:37:09 +010029 * common settings for all modules
30 */
Daniel Mack4e4fc052008-01-23 14:54:50 +010031
Daniel Mackacb36552009-03-23 02:04:17 +010032#if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE)
33extern void colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin);
34#else
Eric Miao0e983d32009-04-09 14:05:02 +080035static inline void colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin) {}
Daniel Mackacb36552009-03-23 02:04:17 +010036#endif
37
Daniel Mack91fcfb92009-03-23 02:04:19 +010038#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE)
39extern void colibri_pxa3xx_init_lcd(int bl_pin);
40#else
Eric Miao0e983d32009-04-09 14:05:02 +080041static inline void colibri_pxa3xx_init_lcd(int bl_pin) {}
Daniel Mack91fcfb92009-03-23 02:04:19 +010042#endif
43
Daniel Mack22a02002009-04-02 08:33:14 +020044#if defined(CONFIG_AX88796)
45extern void colibri_pxa3xx_init_eth(struct ax_plat_data *plat_data);
46#endif
47
Daniel Mack53740df2009-06-17 10:32:54 +020048#if defined(CONFIG_MTD_NAND_PXA3xx) || defined(CONFIG_MTD_NAND_PXA3xx_MODULE)
49extern void colibri_pxa3xx_init_nand(void);
50#else
51static inline void colibri_pxa3xx_init_nand(void) {}
52#endif
53
Daniel Mack4e4fc052008-01-23 14:54:50 +010054/* physical memory regions */
Daniel Mack4e4fc052008-01-23 14:54:50 +010055#define COLIBRI_SDRAM_BASE 0xa0000000 /* SDRAM region */
56
Marek Vasutf95bb542010-05-22 00:29:33 +020057/* GPIO definitions for Colibri PXA270 */
58#define GPIO114_COLIBRI_PXA270_ETH_IRQ 114
Marek Vasutd01b8d62010-05-22 00:29:34 +020059#define GPIO0_COLIBRI_PXA270_SD_DETECT 0
Marek Vasut7cca84a2010-05-22 00:29:37 +020060#define GPIO113_COLIBRI_PXA270_TS_IRQ 113
Daniel Mack4e4fc052008-01-23 14:54:50 +010061
Marek Vasut9b6956f2010-08-12 01:18:38 +020062/* GPIO definitions for Colibri PXA300/310 */
Bjørn Forsman57834a72010-12-23 16:01:02 +010063#define GPIO13_COLIBRI_PXA300_SD_DETECT 13
Marek Vasut9b6956f2010-08-12 01:18:38 +020064
65/* GPIO definitions for Colibri PXA320 */
66#define GPIO28_COLIBRI_PXA320_SD_DETECT 28
67
Daniel Mack4e4fc052008-01-23 14:54:50 +010068#endif /* _COLIBRI_H_ */
Daniel Mack5c0dbb82009-03-13 16:37:08 +010069