1#ifndef _COLIBRI_H_
2#define _COLIBRI_H_
3
4#include <net/ax88796.h>
5#include <mach/mfp.h>
6
7/*
8 * base board glue for PXA270 module
9 */
10
11enum {
12	COLIBRI_EVALBOARD = 0,
13	COLIBRI_PXA270_INCOME,
14};
15
16#if defined(CONFIG_MACH_COLIBRI_EVALBOARD)
17extern void colibri_evalboard_init(void);
18#else
19static inline void colibri_evalboard_init(void) {}
20#endif
21
22#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
28/*
29 * common settings for all modules
30 */
31
32#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
35static inline void colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin) {}
36#endif
37
38#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE)
39extern void colibri_pxa3xx_init_lcd(int bl_pin);
40#else
41static inline void colibri_pxa3xx_init_lcd(int bl_pin) {}
42#endif
43
44#if defined(CONFIG_AX88796)
45extern void colibri_pxa3xx_init_eth(struct ax_plat_data *plat_data);
46#endif
47
48#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
54/* physical memory regions */
55#define COLIBRI_SDRAM_BASE	0xa0000000      /* SDRAM region */
56
57/* GPIO definitions for Colibri PXA270 */
58#define GPIO114_COLIBRI_PXA270_ETH_IRQ	114
59#define GPIO0_COLIBRI_PXA270_SD_DETECT	0
60#define GPIO113_COLIBRI_PXA270_TS_IRQ	113
61
62/* GPIO definitions for Colibri PXA300/310 */
63#define GPIO13_COLIBRI_PXA300_SD_DETECT	13
64
65/* GPIO definitions for Colibri PXA320 */
66#define GPIO28_COLIBRI_PXA320_SD_DETECT	28
67
68#endif /* _COLIBRI_H_ */
69
70