blob: ea9aaebe11e7f1e0c85df5851f074a0de50d6d52 [file] [log] [blame]
Vimal Singhc2798e92010-02-15 10:03:33 -08001/*
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>
Sukumar Ghorai13d6b73c2010-07-09 14:27:47 +000015
16#define PDC_NOR 1
17#define PDC_NAND 2
18#define PDC_ONENAND 3
19#define DBG_MPDB 4
Vimal Singhc2798e92010-02-15 10:03:33 -080020
21struct flash_partitions {
22 struct mtd_partition *parts;
23 int nr_parts;
24};
25
Tony Lindgrenf8cf8e42011-09-20 15:57:39 -070026#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)
Sukumar Ghorai13d6b73c2010-07-09 14:27:47 +000030extern void board_flash_init(struct flash_partitions [],
Sukumar Ghoraid5ce2b62011-01-28 15:42:03 +053031 char chip_sel[][GPMC_CS_NUM], int nand_type);
Tony Lindgrenf8cf8e42011-09-20 15:57:39 -070032#else
33static 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)
Manjunath Kondaiah G04aeae72010-10-08 09:58:35 -070041extern void board_nand_init(struct mtd_partition *nand_parts,
Afzal Mohammed2e618262012-02-29 18:11:56 +053042 u8 nr_parts, u8 cs, int nand_type, struct gpmc_timings *gpmc_t);
43extern struct gpmc_timings nand_default_timings[];
Tony Lindgrenf8cf8e42011-09-20 15:57:39 -070044#else
45static inline void board_nand_init(struct mtd_partition *nand_parts,
Afzal Mohammed2e618262012-02-29 18:11:56 +053046 u8 nr_parts, u8 cs, int nand_type, struct gpmc_timings *gpmc_t)
Tony Lindgrenf8cf8e42011-09-20 15:57:39 -070047{
48}
Afzal Mohammed2e618262012-02-29 18:11:56 +053049#define nand_default_timings NULL
Tony Lindgrenf8cf8e42011-09-20 15:57:39 -070050#endif
Javier Martinez Canillas82595732012-05-09 14:19:14 -070051
52#if defined(CONFIG_MTD_ONENAND_OMAP2) || \
53 defined(CONFIG_MTD_ONENAND_OMAP2_MODULE)
54extern void board_onenand_init(struct mtd_partition *nand_parts,
55 u8 nr_parts, u8 cs);
56#else
57static inline void board_onenand_init(struct mtd_partition *nand_parts,
58 u8 nr_parts, u8 cs)
59{
60}
61#endif