blob: 673a131da875b1189c6a1a117322014284c215e9 [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Daniel Mack4e4fc052008-01-23 14:54:50 +01002#ifndef _COLIBRI_H_
3#define _COLIBRI_H_
Daniel Mack8a28b102009-04-02 08:33:15 +02004
5#include <net/ax88796.h>
Jakob Viketoftccb8d8d2010-05-05 18:25:27 +08006#include <mach/mfp.h>
Daniel Mack8a28b102009-04-02 08:33:15 +02007
Daniel Mack5fc9f9a2009-03-13 16:37:09 +01008/*
Daniel Mack4c243c82010-05-22 00:29:38 +02009 * base board glue for PXA270 module
10 */
11
12enum {
Marek Vasuta3172e52010-08-12 01:45:05 +020013 COLIBRI_EVALBOARD = 0,
Marek Vasut403d2972010-05-22 00:29:39 +020014 COLIBRI_PXA270_INCOME,
Daniel Mack4c243c82010-05-22 00:29:38 +020015};
16
Marek Vasuta3172e52010-08-12 01:45:05 +020017#if defined(CONFIG_MACH_COLIBRI_EVALBOARD)
18extern void colibri_evalboard_init(void);
Daniel Mack4c243c82010-05-22 00:29:38 +020019#else
Marek Vasuta3172e52010-08-12 01:45:05 +020020static inline void colibri_evalboard_init(void) {}
Daniel Mack4c243c82010-05-22 00:29:38 +020021#endif
22
Marek Vasut403d2972010-05-22 00:29:39 +020023#if defined(CONFIG_MACH_COLIBRI_PXA270_INCOME)
24extern void colibri_pxa270_income_boardinit(void);
25#else
26static inline void colibri_pxa270_income_boardinit(void) {}
27#endif
28
Daniel Mack4c243c82010-05-22 00:29:38 +020029/*
Daniel Mack5fc9f9a2009-03-13 16:37:09 +010030 * common settings for all modules
31 */
Daniel Mack4e4fc052008-01-23 14:54:50 +010032
Daniel Mackacb36552009-03-23 02:04:17 +010033#if defined(CONFIG_MMC_PXA) || defined(CONFIG_MMC_PXA_MODULE)
34extern void colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin);
35#else
Eric Miao0e983d32009-04-09 14:05:02 +080036static inline void colibri_pxa3xx_init_mmc(mfp_cfg_t *pins, int len, int detect_pin) {}
Daniel Mackacb36552009-03-23 02:04:17 +010037#endif
38
Daniel Mack91fcfb92009-03-23 02:04:19 +010039#if defined(CONFIG_FB_PXA) || defined(CONFIG_FB_PXA_MODULE)
40extern void colibri_pxa3xx_init_lcd(int bl_pin);
41#else
Eric Miao0e983d32009-04-09 14:05:02 +080042static inline void colibri_pxa3xx_init_lcd(int bl_pin) {}
Daniel Mack91fcfb92009-03-23 02:04:19 +010043#endif
44
Daniel Mack22a02002009-04-02 08:33:14 +020045#if defined(CONFIG_AX88796)
46extern void colibri_pxa3xx_init_eth(struct ax_plat_data *plat_data);
47#endif
48
Daniel Mack53740df2009-06-17 10:32:54 +020049#if defined(CONFIG_MTD_NAND_PXA3xx) || defined(CONFIG_MTD_NAND_PXA3xx_MODULE)
50extern void colibri_pxa3xx_init_nand(void);
51#else
52static inline void colibri_pxa3xx_init_nand(void) {}
53#endif
54
Daniel Mack4e4fc052008-01-23 14:54:50 +010055/* physical memory regions */
Daniel Mack4e4fc052008-01-23 14:54:50 +010056#define COLIBRI_SDRAM_BASE 0xa0000000 /* SDRAM region */
57
Marek Vasutf95bb542010-05-22 00:29:33 +020058/* GPIO definitions for Colibri PXA270 */
59#define GPIO114_COLIBRI_PXA270_ETH_IRQ 114
Marek Vasutd01b8d62010-05-22 00:29:34 +020060#define GPIO0_COLIBRI_PXA270_SD_DETECT 0
Marek Vasut7cca84a2010-05-22 00:29:37 +020061#define GPIO113_COLIBRI_PXA270_TS_IRQ 113
Daniel Mack4e4fc052008-01-23 14:54:50 +010062
Marek Vasut9b6956f2010-08-12 01:18:38 +020063/* GPIO definitions for Colibri PXA300/310 */
Bjørn Forsman57834a72010-12-23 16:01:02 +010064#define GPIO13_COLIBRI_PXA300_SD_DETECT 13
Marek Vasut9b6956f2010-08-12 01:18:38 +020065
66/* GPIO definitions for Colibri PXA320 */
67#define GPIO28_COLIBRI_PXA320_SD_DETECT 28
68
Daniel Mack4e4fc052008-01-23 14:54:50 +010069#endif /* _COLIBRI_H_ */
Daniel Mack5c0dbb82009-03-13 16:37:08 +010070