Merge branch 'processor-procfs-2.6.32' into release
[sfrench/cifs-2.6.git] / arch / arm / mach-bcmring / include / mach / memory_settings.h
1 /*****************************************************************************
2 * Copyright 2004 - 2008 Broadcom Corporation.  All rights reserved.
3 *
4 * Unless you and Broadcom execute a separate written software license
5 * agreement governing use of this software, this software is licensed to you
6 * under the terms of the GNU General Public License version 2, available at
7 * http://www.broadcom.com/licenses/GPLv2.php (the "GPL").
8 *
9 * Notwithstanding the above, under no circumstances may you combine this
10 * software in any way with any other Broadcom software provided under a
11 * license other than the GPL, without Broadcom's express prior written
12 * consent.
13 *****************************************************************************/
14
15 #ifndef MEMORY_SETTINGS_H
16 #define MEMORY_SETTINGS_H
17
18 /* ---- Include Files ---------------------------------------- */
19 /* ---- Constants and Types ---------------------------------- */
20
21 /* Memory devices */
22 /* NAND Flash timing for 166 MHz setting */
23 #define HW_CFG_NAND_tBTA  (5 << 16)     /* Bus turnaround cycle (n)        0-7  (30 ns) */
24 #define HW_CFG_NAND_tWP   (4 << 11)     /* Write pulse width cycle (n+1)   0-31 (25 ns) */
25 #define HW_CFG_NAND_tWR   (1 << 9)      /* Write recovery cycle (n+1)      0-3  (10 ns) */
26 #define HW_CFG_NAND_tAS   (0 << 7)      /* Write address setup cycle (n+1) 0-3  ( 0 ns) */
27 #define HW_CFG_NAND_tOE   (3 << 5)      /* Output enable delay cycle (n)   0-3  (15 ns) */
28 #define HW_CFG_NAND_tRC   (7 << 0)      /* Read access cycle (n+2)         0-31 (50 ns) */
29
30 #define HW_CFG_NAND_TCR (HW_CFG_NAND_tBTA \
31         | HW_CFG_NAND_tWP  \
32         | HW_CFG_NAND_tWR  \
33         | HW_CFG_NAND_tAS  \
34         | HW_CFG_NAND_tOE  \
35         | HW_CFG_NAND_tRC)
36
37 /* NOR Flash timing for 166 MHz setting */
38 #define HW_CFG_NOR_TPRC_TWLC (0 << 19)  /* Page read access cycle / Burst write latency (n+2 / n+1) (max 25ns) */
39 #define HW_CFG_NOR_TBTA      (0 << 16)  /* Bus turnaround cycle (n)                                 (DNA)      */
40 #define HW_CFG_NOR_TWP       (6 << 11)  /* Write pulse width cycle (n+1)                            (35ns)     */
41 #define HW_CFG_NOR_TWR       (0 << 9)   /* Write recovery cycle (n+1)                               (0ns)      */
42 #define HW_CFG_NOR_TAS       (0 << 7)   /* Write address setup cycle (n+1)                          (0ns)      */
43 #define HW_CFG_NOR_TOE       (0 << 5)   /* Output enable delay cycle (n)                            (max 25ns) */
44 #define HW_CFG_NOR_TRC_TLC   (0x10 << 0)        /* Read access cycle / Burst read latency (n+2 / n+1)       (100ns)    */
45
46 #define HW_CFG_FLASH0_TCR (HW_CFG_NOR_TPRC_TWLC \
47         | HW_CFG_NOR_TBTA      \
48         | HW_CFG_NOR_TWP       \
49         | HW_CFG_NOR_TWR       \
50         | HW_CFG_NOR_TAS       \
51         | HW_CFG_NOR_TOE       \
52         | HW_CFG_NOR_TRC_TLC)
53
54 #define HW_CFG_FLASH1_TCR    HW_CFG_FLASH0_TCR
55 #define HW_CFG_FLASH2_TCR    HW_CFG_FLASH0_TCR
56
57 /* SDRAM Settings */
58 /* #define HW_CFG_SDRAM_CAS_LATENCY        5    Default 5, Values [3..6] */
59 /* #define HW_CFG_SDRAM_CHIP_SELECT_CNT    1    Default 1, Vaules [1..2] */
60 /* #define HW_CFG_SDRAM_SPEED_GRADE        667  Default 667, Values [400,533,667,800] */
61 /* #define HW_CFG_SDRAM_WIDTH_BITS         16   Default 16, Vaules [8,16] */
62 #define HW_CFG_SDRAM_SIZE_BYTES         0x10000000      /* Total memory, not per device size */
63
64 /* ---- Variable Externs ------------------------------------- */
65 /* ---- Function Prototypes ---------------------------------- */
66
67 #endif /* MEMORY_SETTINGS_H */