Merge branch 'x86/setup' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux...
[linux-2.6] / arch / blackfin / include / asm / nand.h
1 /* linux/include/asm-blackfin/nand.h
2  *
3  * Copyright (c) 2007 Analog Devices, Inc.
4  *      Bryan Wu <bryan.wu@analog.com>
5  *
6  * BF5XX - NAND flash controller platfrom_device info
7  *
8  * This program is free software; you can redistribute it and/or modify
9  * it under the terms of the GNU General Public License version 2 as
10  * published by the Free Software Foundation.
11  */
12
13 /* struct bf5xx_nand_platform
14  *
15  * define a interface between platfrom board specific code and
16  * bf54x NFC driver.
17  *
18  * nr_partitions = number of partitions pointed to be partitoons (or zero)
19  * partitions    = mtd partition list
20  */
21
22 #define NFC_PG_SIZE_256         0
23 #define NFC_PG_SIZE_512         1
24 #define NFC_PG_SIZE_OFFSET      9
25
26 #define NFC_NWIDTH_8            0
27 #define NFC_NWIDTH_16           1
28 #define NFC_NWIDTH_OFFSET       8
29
30 #define NFC_RDDLY_OFFSET        4
31 #define NFC_WRDLY_OFFSET        0
32
33 #define NFC_STAT_NBUSY          1
34
35 struct bf5xx_nand_platform {
36         /* NAND chip information */
37         unsigned short          page_size;
38         unsigned short          data_width;
39
40         /* RD/WR strobe delay timing information, all times in SCLK cycles */
41         unsigned short          rd_dly;
42         unsigned short          wr_dly;
43
44         /* NAND MTD partition information */
45         int                     nr_partitions;
46         struct mtd_partition    *partitions;
47 };