1 /*
2  *  board-sdp.h
3  *
4  *  Information structures for SDP-specific board config data
5  *
6  *  Copyright (C) 2009 Nokia Corporation
7  *  Copyright (C) 2009 Texas Instruments
8  *
9  * This program is free software; you can redistribute it and/or modify
10  * it under the terms of the GNU General Public License version 2 as
11  * published by the Free Software Foundation.
12  */
13 #include <linux/mtd/mtd.h>
14 #include <linux/mtd/partitions.h>
15 
16 #define PDC_NOR		1
17 #define PDC_NAND	2
18 #define PDC_ONENAND	3
19 #define DBG_MPDB	4
20 
21 struct flash_partitions {
22 	struct mtd_partition *parts;
23 	int nr_parts;
24 };
25 
26 #if defined(CONFIG_MTD_NAND_OMAP2) || \
27 		defined(CONFIG_MTD_NAND_OMAP2_MODULE) || \
28 		defined(CONFIG_MTD_ONENAND_OMAP2) || \
29 		defined(CONFIG_MTD_ONENAND_OMAP2_MODULE)
30 extern void board_flash_init(struct flash_partitions [],
31 				char chip_sel[][GPMC_CS_NUM], int nand_type);
32 #else
board_flash_init(struct flash_partitions part[],char chip_sel[][GPMC_CS_NUM],int nand_type)33 static inline void board_flash_init(struct flash_partitions part[],
34 				char chip_sel[][GPMC_CS_NUM], int nand_type)
35 {
36 }
37 #endif
38 
39 #if defined(CONFIG_MTD_NAND_OMAP2) || \
40 		defined(CONFIG_MTD_NAND_OMAP2_MODULE)
41 extern void board_nand_init(struct mtd_partition *nand_parts,
42 		u8 nr_parts, u8 cs, int nand_type, struct gpmc_timings *gpmc_t);
43 extern struct gpmc_timings nand_default_timings[];
44 #else
board_nand_init(struct mtd_partition * nand_parts,u8 nr_parts,u8 cs,int nand_type,struct gpmc_timings * gpmc_t)45 static inline void board_nand_init(struct mtd_partition *nand_parts,
46 		u8 nr_parts, u8 cs, int nand_type, struct gpmc_timings *gpmc_t)
47 {
48 }
49 #define	nand_default_timings	NULL
50 #endif
51 
52 #if defined(CONFIG_MTD_ONENAND_OMAP2) || \
53 		defined(CONFIG_MTD_ONENAND_OMAP2_MODULE)
54 extern void board_onenand_init(struct mtd_partition *nand_parts,
55 					u8 nr_parts, u8 cs);
56 #else
board_onenand_init(struct mtd_partition * nand_parts,u8 nr_parts,u8 cs)57 static inline void board_onenand_init(struct mtd_partition *nand_parts,
58 					u8 nr_parts, u8 cs)
59 {
60 }
61 #endif
62