Home | History | Annotate | Line # | Download | only in imx
      1  1.1  jkunz /* $Id: imx23_emireg.h,v 1.1 2012/11/20 19:06:13 jkunz Exp $ */
      2  1.1  jkunz 
      3  1.1  jkunz /*
      4  1.1  jkunz  * Copyright (c) 2012 The NetBSD Foundation, Inc.
      5  1.1  jkunz  * All rights reserved.
      6  1.1  jkunz  *
      7  1.1  jkunz  * This code is derived from software contributed to The NetBSD Foundation
      8  1.1  jkunz  * by Petri Laakso.
      9  1.1  jkunz  *
     10  1.1  jkunz  * Redistribution and use in source and binary forms, with or without
     11  1.1  jkunz  * modification, are permitted provided that the following conditions
     12  1.1  jkunz  * are met:
     13  1.1  jkunz  * 1. Redistributions of source code must retain the above copyright
     14  1.1  jkunz  *    notice, this list of conditions and the following disclaimer.
     15  1.1  jkunz  * 2. Redistributions in binary form must reproduce the above copyright
     16  1.1  jkunz  *    notice, this list of conditions and the following disclaimer in the
     17  1.1  jkunz  *    documentation and/or other materials provided with the distribution.
     18  1.1  jkunz  *
     19  1.1  jkunz  * THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
     20  1.1  jkunz  * ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
     21  1.1  jkunz  * TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
     22  1.1  jkunz  * PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
     23  1.1  jkunz  * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
     24  1.1  jkunz  * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
     25  1.1  jkunz  * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
     26  1.1  jkunz  * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
     27  1.1  jkunz  * CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
     28  1.1  jkunz  * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
     29  1.1  jkunz  * POSSIBILITY OF SUCH DAMAGE.
     30  1.1  jkunz  */
     31  1.1  jkunz 
     32  1.1  jkunz #ifndef _ARM_IMX_IMX23_EMIREG_H_
     33  1.1  jkunz #define _ARM_IMX_IMX23_EMIREG_H_
     34  1.1  jkunz 
     35  1.1  jkunz #include <sys/cdefs.h>
     36  1.1  jkunz 
     37  1.1  jkunz #define HW_EMI_CTRL_BASE 0x80020000
     38  1.1  jkunz #define HW_DRAM_BASE 0x800E0000
     39  1.1  jkunz 
     40  1.1  jkunz /*
     41  1.1  jkunz  * EMI Control Register.
     42  1.1  jkunz  */
     43  1.1  jkunz #define HW_EMI_CTRL	0x000
     44  1.1  jkunz #define HW_EMI_CTRL_SET	0x004
     45  1.1  jkunz #define HW_EMI_CTRL_CLR	0x008
     46  1.1  jkunz #define HW_EMI_CTRL_TOG	0x00C
     47  1.1  jkunz 
     48  1.1  jkunz #define HW_EMI_CTRL_SFTRST		__BIT(31)
     49  1.1  jkunz #define HW_EMI_CTRL_RSVD6		__BIT(30)
     50  1.1  jkunz #define HW_EMI_CTRL_TRAP_SR		__BIT(29)
     51  1.1  jkunz #define HW_EMI_CTRL_TRAP_INIT		__BIT(28)
     52  1.1  jkunz #define HW_EMI_CTRL_AXI_DEPTH		__BITS(27, 26)
     53  1.1  jkunz #define HW_EMI_CTRL_DLL_SHIFT_RESET	__BIT(25)
     54  1.1  jkunz #define HW_EMI_CTRL_DLL_RESET		__BIT(24)
     55  1.1  jkunz #define HW_EMI_CTRL_ARB_MODE		__BITS(23, 22)
     56  1.1  jkunz #define HW_EMI_CTRL_RSVD5		__BIT(21)
     57  1.1  jkunz #define HW_EMI_CTRL_PORT_PRIORITY_ORDER	__BITS(20, 16)
     58  1.1  jkunz #define HW_EMI_CTRL_RSVD4		__BIT(15)
     59  1.1  jkunz #define HW_EMI_CTRL_PRIORITY_WRITE_ITER	__BITS(14, 12)
     60  1.1  jkunz #define HW_EMI_CTRL_RSVD3		__BIT(11)
     61  1.1  jkunz #define HW_EMI_CTRL_HIGH_PRIORITY_WRITE	__BITS(10, 8)
     62  1.1  jkunz #define HW_EMI_CTRL_RSVD2		__BIT(7)
     63  1.1  jkunz #define HW_EMI_CTRL_MEM_WIDTH		__BIT(6)
     64  1.1  jkunz #define HW_EMI_CTRL_RSVD1		__BIT(5)
     65  1.1  jkunz #define HW_EMI_CTRL_RESET_OUT		__BIT(4)
     66  1.1  jkunz #define HW_EMI_CTRL_RSVD0		__BITS(3, 0)
     67  1.1  jkunz 
     68  1.1  jkunz /*
     69  1.1  jkunz  * EMI Version Register.
     70  1.1  jkunz  */
     71  1.1  jkunz #define HW_EMI_VERSION	0x0F0
     72  1.1  jkunz 
     73  1.1  jkunz #define HW_EMI_VERSION_MAJOR	__BITS(31, 24)
     74  1.1  jkunz #define HW_EMI_VERSION_MINOR	__BITS(23, 16)
     75  1.1  jkunz #define HW_EMI_VERSION_STEP	__BITS(15, 0)
     76  1.1  jkunz 
     77  1.1  jkunz /*
     78  1.1  jkunz  * DRAM Control Register 0.
     79  1.1  jkunz  */
     80  1.1  jkunz #define HW_DRAM_CTL00	0x000
     81  1.1  jkunz 
     82  1.1  jkunz #define HW_DRAM_CTL00_RSVD4			__BITS(31, 25)
     83  1.1  jkunz #define HW_DRAM_CTL00_AHB0_W_PRIORITY		__BIT(24)
     84  1.1  jkunz #define HW_DRAM_CTL00_RSVD3			__BITS(23, 17)
     85  1.1  jkunz #define HW_DRAM_CTL00_AHB0_R_PRIORITY		__BIT(16)
     86  1.1  jkunz #define HW_DRAM_CTL00_RSVD2			__BITS(15, 9)
     87  1.1  jkunz #define HW_DRAM_CTL00_AHB0_FIFO_TYPE_REG	__BIT(8)
     88  1.1  jkunz #define HW_DRAM_CTL00_RSVD1			__BITS(7, 1)
     89  1.1  jkunz #define HW_DRAM_CTL00_ADDR_CMP_EN		__BIT(0)
     90  1.1  jkunz 
     91  1.1  jkunz /*
     92  1.1  jkunz  * DRAM Control Register 1.
     93  1.1  jkunz  */
     94  1.1  jkunz #define HW_DRAM_CTL01	0x004
     95  1.1  jkunz 
     96  1.1  jkunz #define HW_DRAM_CTL01_RSVD4			__BITS(31, 25)
     97  1.1  jkunz #define HW_DRAM_CTL01_AHB2_FIFO_TYPE_REG	__BIT(24)
     98  1.1  jkunz #define HW_DRAM_CTL01_RSVD3			__BITS(23, 17)
     99  1.1  jkunz #define HW_DRAM_CTL01_AHB1_W_PRIORITY		__BIT(16)
    100  1.1  jkunz #define HW_DRAM_CTL01_RSVD2			__BITS(15, 9)
    101  1.1  jkunz #define HW_DRAM_CTL01_AHB1_R_PRIORITY		__BIT(8)
    102  1.1  jkunz #define HW_DRAM_CTL01_RSVD1			__BITS(7, 1)
    103  1.1  jkunz #define HW_DRAM_CTL01_AHB1_FIFO_TYPE_REG	__BIT(0)
    104  1.1  jkunz 
    105  1.1  jkunz /*
    106  1.1  jkunz  * DRAM Control Register 2.
    107  1.1  jkunz  */
    108  1.1  jkunz #define HW_DRAM_CTL02	0x008
    109  1.1  jkunz 
    110  1.1  jkunz #define HW_DRAM_CTL02_RSVD4			__BITS(31, 25)
    111  1.1  jkunz #define HW_DRAM_CTL02_AHB3_R_PRIORITY		__BIT(24)
    112  1.1  jkunz #define HW_DRAM_CTL02_RSVD3			__BITS(23, 17)
    113  1.1  jkunz #define HW_DRAM_CTL02_AHB3_FIFO_TYPE_REG	__BIT(16)
    114  1.1  jkunz #define HW_DRAM_CTL02_RSVD2			__BIT(15, 9)
    115  1.1  jkunz #define HW_DRAM_CTL02_AHB2_W_PRIORITY		__BIT(8)
    116  1.1  jkunz #define HW_DRAM_CTL02_RSVD1			__BITS(7, 1)
    117  1.1  jkunz #define HW_DRAM_CTL02_AHB2_R_PRIORITY		__BIT(0)
    118  1.1  jkunz 
    119  1.1  jkunz /*
    120  1.1  jkunz  * DRAM Control Register 3.
    121  1.1  jkunz  */
    122  1.1  jkunz #define HW_DRAM_CTL03	0x00c
    123  1.1  jkunz 
    124  1.1  jkunz #define HW_DRAM_CTL03_RSVD4		__BITS(31, 25)
    125  1.1  jkunz #define HW_DRAM_CTL03_AUTO_REFRESH_MODE	__BIT(24)
    126  1.1  jkunz #define HW_DRAM_CTL03_RSVD3		__BITS(23, 17)
    127  1.1  jkunz #define HW_DRAM_CTL03_AREFRESH		__BIT(16)
    128  1.1  jkunz #define HW_DRAM_CTL03_RSVD2		__BITS(15, 9)
    129  1.1  jkunz #define HW_DRAM_CTL03_AP		__BIT(8)
    130  1.1  jkunz #define HW_DRAM_CTL03_RSVD1		__BITS(7, 1)
    131  1.1  jkunz #define HW_DRAM_CTL03_AHB3_W_PRIORITY	__BIT(0)
    132  1.1  jkunz 
    133  1.1  jkunz /*
    134  1.1  jkunz  * DRAM Control Register 4.
    135  1.1  jkunz  */
    136  1.1  jkunz #define HW_DRAM_CTL04	0x010
    137  1.1  jkunz 
    138  1.1  jkunz #define HW_DRAM_CTL04_RSVD4		__BITS(31, 25)
    139  1.1  jkunz #define HW_DRAM_CTL04_DLL_BYPASS_MODE	__BIT(24)
    140  1.1  jkunz #define HW_DRAM_CTL04_RSVD3		__BITS(23, 17)
    141  1.1  jkunz #define HW_DRAM_CTL04_DLLLOCKREG	__BIT(16)
    142  1.1  jkunz #define HW_DRAM_CTL04_RSVD2		__BITS(15, 9)
    143  1.1  jkunz #define HW_DRAM_CTL04_CONCURRENTAP	__BIT(8)
    144  1.1  jkunz #define HW_DRAM_CTL04_RSVD1		__BITS(7, 1)
    145  1.1  jkunz #define HW_DRAM_CTL04_BANK_SPLIT_EN	__BIT(0)
    146  1.1  jkunz 
    147  1.1  jkunz /*
    148  1.1  jkunz  * DRAM Control Register 5.
    149  1.1  jkunz  */
    150  1.1  jkunz #define HW_DRAM_CTL05	0x014
    151  1.1  jkunz 
    152  1.1  jkunz #define HW_DRAM_CTL05_RSVD4		__BITS(31, 25)
    153  1.1  jkunz #define HW_DRAM_CTL05_INTRPTREADA	__BIT(24)
    154  1.1  jkunz #define HW_DRAM_CTL05_RSVD3		__BITS(23, 17)
    155  1.1  jkunz #define HW_DRAM_CTL05_INTRPTAPBURST	__BIT(16)
    156  1.1  jkunz #define HW_DRAM_CTL05_RSVD2		__BITS(15, 9)
    157  1.1  jkunz #define HW_DRAM_CTL05_FAST_WRITE	__BIT(8)
    158  1.1  jkunz #define HW_DRAM_CTL05_RSVD1		__BITS(7, 1)
    159  1.1  jkunz #define HW_DRAM_CTL05_EN_LOWPOWER_MODE	__BIT(0)
    160  1.1  jkunz 
    161  1.1  jkunz /*
    162  1.1  jkunz  * DRAM Control Register 6.
    163  1.1  jkunz  */
    164  1.1  jkunz #define HW_DRAM_CTL06	0x018
    165  1.1  jkunz 
    166  1.1  jkunz #define HW_DRAM_CTL06_RSVD4		__BITS(31, 25)
    167  1.1  jkunz #define HW_DRAM_CTL06_POWER_DOWN	__BIT(24)
    168  1.1  jkunz #define HW_DRAM_CTL06_RSVD3		__BITS(23, 17)
    169  1.1  jkunz #define HW_DRAM_CTL06_PLACEMENT_EN	__BIT(16)
    170  1.1  jkunz #define HW_DRAM_CTL06_RSVD2		__BITS(15, 9)
    171  1.1  jkunz #define HW_DRAM_CTL06_NO_CMD_INIT	__BIT(8)
    172  1.1  jkunz #define HW_DRAM_CTL06_RSVD1		__BITS(7, 1)
    173  1.1  jkunz #define HW_DRAM_CTL06_INTRPTWRITEA	__BIT(0)
    174  1.1  jkunz 
    175  1.1  jkunz /*
    176  1.1  jkunz  * DRAM Control Register 7.
    177  1.1  jkunz  */
    178  1.1  jkunz #define HW_DRAM_CTL07	0x01c
    179  1.1  jkunz 
    180  1.1  jkunz #define HW_DRAM_CTL07_RSVD4		__BITS(31, 25)
    181  1.1  jkunz #define HW_DRAM_CTL07_RW_SAME_EN	__BIT(24)
    182  1.1  jkunz #define HW_DRAM_CTL07_RSVD3		__BITS(23, 17)
    183  1.1  jkunz #define HW_DRAM_CTL07_REG_DIMM_ENABLE	__BIT(16)
    184  1.1  jkunz #define HW_DRAM_CTL07_RSVD2		__BITS(15, 9)
    185  1.1  jkunz #define HW_DRAM_CTL07_RD2RD_TURN	__BIT(8)
    186  1.1  jkunz #define HW_DRAM_CTL07_RSVD1		__BITS(7, 1)
    187  1.1  jkunz #define HW_DRAM_CTL07_PRIORITY_EN	__BIT(0)
    188  1.1  jkunz 
    189  1.1  jkunz /*
    190  1.1  jkunz  * DRAM Control Register 8.
    191  1.1  jkunz  */
    192  1.1  jkunz #define HW_DRAM_CTL08	0x020
    193  1.1  jkunz 
    194  1.1  jkunz #define HW_DRAM_CTL08_RSVD4		__BITS(31, 25)
    195  1.1  jkunz #define HW_DRAM_CTL08_TRAS_LOCKOUT	__BIT(24)
    196  1.1  jkunz #define HW_DRAM_CTL08_RSVD3		__BITS(23, 17)
    197  1.1  jkunz #define HW_DRAM_CTL08_START		__BIT(16)
    198  1.1  jkunz #define HW_DRAM_CTL08_RSVD2		__BITS(15, 9)
    199  1.1  jkunz #define HW_DRAM_CTL08_SREFRESH		__BIT(8)
    200  1.1  jkunz #define HW_DRAM_CTL08_RSVD1		__BITS(7, 1)
    201  1.1  jkunz #define HW_DRAM_CTL08_SDR_MODE		__BIT(0)
    202  1.1  jkunz 
    203  1.1  jkunz /*
    204  1.1  jkunz  * DRAM Control Register 9.
    205  1.1  jkunz  */
    206  1.1  jkunz #define HW_DRAM_CTL09	0x024
    207  1.1  jkunz 
    208  1.1  jkunz #define HW_DRAM_CTL09_RSVD4			__BITS(31, 26)
    209  1.1  jkunz #define HW_DRAM_CTL09_OUT_OF_RANGE_TYPE		__BITS(25, 24)
    210  1.1  jkunz #define HW_DRAM_CTL09_RSVD3			__BITS(23, 18)
    211  1.1  jkunz #define HW_DRAM_CTL09_OUT_OF_RANGE_SOURCE_ID	__BITS(17, 16)
    212  1.1  jkunz #define HW_DRAM_CTL09_RSVD2			__BITS(15, 9)
    213  1.1  jkunz #define HW_DRAM_CTL09_WRITE_MODEREG		__BIT(8)
    214  1.1  jkunz #define HW_DRAM_CTL09_RSVD1			__BITS(7, 1)
    215  1.1  jkunz #define HW_DRAM_CTL09_WRITEINTERP		__BIT(0)
    216  1.1  jkunz 
    217  1.1  jkunz /*
    218  1.1  jkunz  * DRAM Control Register 10.
    219  1.1  jkunz  */
    220  1.1  jkunz #define HW_DRAM_CTL10	0x028
    221  1.1  jkunz 
    222  1.1  jkunz #define HW_DRAM_CTL10_RSVD4		__BITS(31, 27)
    223  1.1  jkunz #define HW_DRAM_CTL10_AGE_COUNT		__BITS(26, 24)
    224  1.1  jkunz #define HW_DRAM_CTL10_RSVD3		__BITS(23, 19)
    225  1.1  jkunz #define HW_DRAM_CTL10_ADDR_PINS		__BITS(18, 16)
    226  1.1  jkunz #define HW_DRAM_CTL10_RSVD2		__BITS(15, 10)
    227  1.1  jkunz #define HW_DRAM_CTL10_TEMRS		__BITS(9, 8)
    228  1.1  jkunz #define HW_DRAM_CTL10_RSVD1		__BITS(7, 2)
    229  1.1  jkunz #define HW_DRAM_CTL10_Q_FULLNESS	__BITS(1, 0)
    230  1.1  jkunz 
    231  1.1  jkunz /*
    232  1.1  jkunz  * DRAM Control Register 11.
    233  1.1  jkunz  */
    234  1.1  jkunz #define HW_DRAM_CTL11	0x02c
    235  1.1  jkunz 
    236  1.1  jkunz #define HW_DRAM_CTL11_RSVD4		__BITS(31, 27)
    237  1.1  jkunz #define HW_DRAM_CTL11_MAX_CS_REG	__BITS(26, 24)
    238  1.1  jkunz #define HW_DRAM_CTL11_RSVD3		__BITS(23, 19)
    239  1.1  jkunz #define HW_DRAM_CTL11_COMMAND_AGE_COUNT	__BITS(18, 16)
    240  1.1  jkunz #define HW_DRAM_CTL11_RSVD2		__BITS(15, 11)
    241  1.1  jkunz #define HW_DRAM_CTL11_COLUMN_SIZE	__BITS(10, 8)
    242  1.1  jkunz #define HW_DRAM_CTL11_RSVD1		__BITS(7, 3)
    243  1.1  jkunz #define HW_DRAM_CTL11_CASLAT		__BITS(2, 0)
    244  1.1  jkunz 
    245  1.1  jkunz /*
    246  1.1  jkunz  * DRAM Control Register 12.
    247  1.1  jkunz  */
    248  1.1  jkunz #define HW_DRAM_CTL12	0x030
    249  1.1  jkunz 
    250  1.1  jkunz #define HW_DRAM_CTL12_RSVD3	__BITS(31, 27)
    251  1.1  jkunz #define HW_DRAM_CTL12_TWR_INT	__BITS(26, 24)
    252  1.1  jkunz #define HW_DRAM_CTL12_RSVD2	__BITS(23, 19)
    253  1.1  jkunz #define HW_DRAM_CTL12_TRRD	__BITS(18 ,16)
    254  1.1  jkunz #define HW_DRAM_CTL12_OBSOLETE	__BITS(15, 8)
    255  1.1  jkunz #define HW_DRAM_CTL12_RSVD1	__BITS(7, 3)
    256  1.1  jkunz #define HW_DRAM_CTL12_TCKE	__BITS(2, 0)
    257  1.1  jkunz 
    258  1.1  jkunz /*
    259  1.1  jkunz  * DRAM Control Register 13.
    260  1.1  jkunz  */
    261  1.1  jkunz #define HW_DRAM_CTL13	0x034
    262  1.1  jkunz 
    263  1.1  jkunz #define HW_DRAM_CTL13_RSVD4		__BITS(31, 28)
    264  1.1  jkunz #define HW_DRAM_CTL13_CASLAT_LIN_GATE	__BITS(27, 24)
    265  1.1  jkunz #define HW_DRAM_CTL13_RSVD3		__BITS(23, 20)
    266  1.1  jkunz #define HW_DRAM_CTL13_CASLAT_LIN	__BITS(19, 16)
    267  1.1  jkunz #define HW_DRAM_CTL13_RSVD2		__BITS(15, 12)
    268  1.1  jkunz #define HW_DRAM_CTL13_APREBIT		__BITS(11, 8)
    269  1.1  jkunz #define HW_DRAM_CTL13_RSVD1		__BITS(7, 3)
    270  1.1  jkunz #define HW_DRAM_CTL13_TWTR		__BITS(2, 0)
    271  1.1  jkunz 
    272  1.1  jkunz /*
    273  1.1  jkunz  * DRAM Control Register 14.
    274  1.1  jkunz  */
    275  1.1  jkunz #define HW_DRAM_CTL14	0x038
    276  1.1  jkunz 
    277  1.1  jkunz #define HW_DRAM_CTL14_RSVD4			__BITS(31, 28)
    278  1.1  jkunz #define HW_DRAM_CTL14_MAX_COL_REG		__BITS(27, 24)
    279  1.1  jkunz #define HW_DRAM_CTL14_RSVD3			__BITS(23, 20)
    280  1.1  jkunz #define HW_DRAM_CTL14_LOWPOWER_REFRESH_ENABLE	__BITS(19, 16)
    281  1.1  jkunz #define HW_DRAM_CTL14_RSVD2			__BITS(15, 12)
    282  1.1  jkunz #define HW_DRAM_CTL14_INITAREF			__BITS(11, 8)
    283  1.1  jkunz #define HW_DRAM_CTL14_RSVD1			__BITS(7, 4)
    284  1.1  jkunz #define HW_DRAM_CTL14_CS_MAP			__BITS(3, 0)
    285  1.1  jkunz 
    286  1.1  jkunz /*
    287  1.1  jkunz  * DRAM Control Register 15.
    288  1.1  jkunz  */
    289  1.1  jkunz #define HW_DRAM_CTL15	0x03c
    290  1.1  jkunz 
    291  1.1  jkunz #define HW_DRAM_CTL15_RSVD4		__BITS(31, 28)
    292  1.1  jkunz #define HW_DRAM_CTL15_TRP		__BITS(27, 24)
    293  1.1  jkunz #define HW_DRAM_CTL15_RSVD3		__BITS(23, 20)
    294  1.1  jkunz #define HW_DRAM_CTL15_TDAL		__BITS(19, 16)
    295  1.1  jkunz #define HW_DRAM_CTL15_RSVD2		__BITS(15, 12)
    296  1.1  jkunz #define HW_DRAM_CTL15_PORT_BUSY		__BITS(11, 8)
    297  1.1  jkunz #define HW_DRAM_CTL15_RSVD1		__BITS(7, 4)
    298  1.1  jkunz #define HW_DRAM_CTL15_MAX_ROW_REG	__BITS(3, 0)
    299  1.1  jkunz 
    300  1.1  jkunz /*
    301  1.1  jkunz  * DRAM Control Register 16.
    302  1.1  jkunz  */
    303  1.1  jkunz #define HW_DRAM_CTL16	0x040
    304  1.1  jkunz 
    305  1.1  jkunz #define HW_DRAM_CTL16_RSVD4			__BITS(31, 29)
    306  1.1  jkunz #define HW_DRAM_CTL16_TMRD			__BITS(28, 24)
    307  1.1  jkunz #define HW_DRAM_CTL16_RSVD3			__BITS(23, 21)
    308  1.1  jkunz #define HW_DRAM_CTL16_LOWPOWER_CONTROL		__BITS(20, 16)
    309  1.1  jkunz #define HW_DRAM_CTL16_RSVD2			__BITS(15, 13)
    310  1.1  jkunz #define HW_DRAM_CTL16_LOWPOWER_AUTO_ENABLE	__BITS(12, 8)
    311  1.1  jkunz #define HW_DRAM_CTL16_RSVD1			__BITS(7, 4)
    312  1.1  jkunz #define HW_DRAM_CTL16_INT_ACK			__BITS(3, 0)
    313  1.1  jkunz 
    314  1.1  jkunz /*
    315  1.1  jkunz  * DRAM Control Register 17.
    316  1.1  jkunz  */
    317  1.1  jkunz #define HW_DRAM_CTL17	0x044
    318  1.1  jkunz 
    319  1.1  jkunz #define HW_DRAM_CTL17_DLL_START_POINT	__BITS(31, 24)
    320  1.1  jkunz #define HW_DRAM_CTL17_DLL_LOCK		__BITS(23, 16)
    321  1.1  jkunz #define HW_DRAM_CTL17_DLL_INCREMENT	__BITS(15, 8)
    322  1.1  jkunz #define HW_DRAM_CTL17_RSVD1		__BITS(7, 5)
    323  1.1  jkunz #define HW_DRAM_CTL17_TRC		__BITS(4, 0)
    324  1.1  jkunz 
    325  1.1  jkunz /*
    326  1.1  jkunz  * DRAM Control Register 18.
    327  1.1  jkunz  */
    328  1.1  jkunz #define HW_DRAM_CTL18	0x048
    329  1.1  jkunz 
    330  1.1  jkunz #define HW_DRAM_CTL18_RSVD4			__BIT(31)
    331  1.1  jkunz #define HW_DRAM_CTL18_DLL_DQS_DELAY_1		__BITS(30, 24)
    332  1.1  jkunz #define HW_DRAM_CTL18_RSVD3			__BIT(23)
    333  1.1  jkunz #define HW_DRAM_CTL18_DLL_DQS_DELAY_0		__BITS(22, 16)
    334  1.1  jkunz #define HW_DRAM_CTL18_RSVD2			__BITS(15, 13)
    335  1.1  jkunz #define HW_DRAM_CTL18_INT_STATUS		__BITS(12, 8)
    336  1.1  jkunz #define HW_DRAM_CTL18_RSVD1			__BITS(7, 5)
    337  1.1  jkunz #define HW_DRAM_CTL18_INT_MASK			__BITS(4, 0)
    338  1.1  jkunz 
    339  1.1  jkunz /*
    340  1.1  jkunz  * DRAM Control Register 19.
    341  1.1  jkunz  */
    342  1.1  jkunz #define HW_DRAM_CTL19	0x04c
    343  1.1  jkunz 
    344  1.1  jkunz #define HW_DRAM_CTL19_DQS_OUT_SHIFT_BYPASS	__BITS(31, 24)
    345  1.1  jkunz #define HW_DRAM_CTL19_RSVD1			__BIT(23)
    346  1.1  jkunz #define HW_DRAM_CTL19_DQS_OUT_SHIFT		__BITS(22, 16)
    347  1.1  jkunz #define HW_DRAM_CTL19_DLL_DQS_DELAY_BYPASS_1	__BITS(15, 8)
    348  1.1  jkunz #define HW_DRAM_CTL19_DLL_DQS_DELAY_BYPASS_0	__BITS(7, 0)
    349  1.1  jkunz 
    350  1.1  jkunz /*
    351  1.1  jkunz  * DRAM Control Register 20.
    352  1.1  jkunz  */
    353  1.1  jkunz #define HW_DRAM_CTL20	0x050
    354  1.1  jkunz 
    355  1.1  jkunz #define HW_DRAM_CTL20_TRCD_INT			__BITS(31, 24)
    356  1.1  jkunz #define HW_DRAM_CTL20_TRAS_MIN			__BITS(23, 16)
    357  1.1  jkunz #define HW_DRAM_CTL20_WR_DQS_SHIFT_BYPASS	__BITS(15, 8)
    358  1.1  jkunz #define HW_DRAM_CTL20_RSVD1			__BIT(7)
    359  1.1  jkunz #define HW_DRAM_CTL20_WR_DQS_SHIFT		__BITS(6, 0)
    360  1.1  jkunz 
    361  1.1  jkunz /*
    362  1.1  jkunz  * DRAM Control Register 21.
    363  1.1  jkunz  */
    364  1.1  jkunz #define HW_DRAM_CTL21	0x054
    365  1.1  jkunz 
    366  1.1  jkunz #define HW_DRAM_CTL21_OBSOLETE			__BITS(31, 24)
    367  1.1  jkunz #define HW_DRAM_CTL21_RSVD1			__BITS(23, 18)
    368  1.1  jkunz #define HW_DRAM_CTL21_OUT_OF_RANGE_LENGTH	__BITS(17, 8)
    369  1.1  jkunz #define HW_DRAM_CTL21_TRFC			__BITS(7, 0)
    370  1.1  jkunz 
    371  1.1  jkunz /*
    372  1.1  jkunz  * DRAM Control Register 22.
    373  1.1  jkunz  */
    374  1.1  jkunz #define HW_DRAM_CTL22	0x058
    375  1.1  jkunz 
    376  1.1  jkunz #define HW_DRAM_CTL22_RSVD2		__BITS(31, 27)
    377  1.1  jkunz #define HW_DRAM_CTL22_AHB0_WRCNT	__BITS(26, 16)
    378  1.1  jkunz #define HW_DRAM_CTL22_RSVD1		__BITS(15, 11)
    379  1.1  jkunz #define HW_DRAM_CTL22_AHB0_RDCNT	__BITS(10, 0)
    380  1.1  jkunz 
    381  1.1  jkunz /*
    382  1.1  jkunz  * DRAM Control Register 23.
    383  1.1  jkunz  */
    384  1.1  jkunz #define HW_DRAM_CTL23	0x05c
    385  1.1  jkunz 
    386  1.1  jkunz #define HW_DRAM_CTL23_RSVD2		__BITS(31, 27)
    387  1.1  jkunz #define HW_DRAM_CTL23_AHB1_WRCNT	__BITS(26, 16)
    388  1.1  jkunz #define HW_DRAM_CTL23_RSVD1		__BITS(15, 11)
    389  1.1  jkunz #define HW_DRAM_CTL23_AHB1_RDCNT	__BITS(10, 0)
    390  1.1  jkunz 
    391  1.1  jkunz /*
    392  1.1  jkunz  * DRAM Control Register 24.
    393  1.1  jkunz  */
    394  1.1  jkunz #define HW_DRAM_CTL24	0x060
    395  1.1  jkunz 
    396  1.1  jkunz #define HW_DRAM_CTL24_RSVD2		__BITS(31, 27)
    397  1.1  jkunz #define HW_DRAM_CTL24_AHB2_WRCNT	__BITS(26, 16)
    398  1.1  jkunz #define HW_DRAM_CTL24_RSVD1		__BITS(15, 11)
    399  1.1  jkunz #define HW_DRAM_CTL24_AHB2_RDCNT	__BITS(10, 0)
    400  1.1  jkunz 
    401  1.1  jkunz /*
    402  1.1  jkunz  * DRAM Control Register 25.
    403  1.1  jkunz  */
    404  1.1  jkunz #define HW_DRAM_CTL25	0x064
    405  1.1  jkunz 
    406  1.1  jkunz #define HW_DRAM_CTL25_RSVD2		__BITS(31, 27)
    407  1.1  jkunz #define HW_DRAM_CTL25_AHB3_WRCNT	__BITS(26, 16)
    408  1.1  jkunz #define HW_DRAM_CTL25_RSVD1		__BITS(15, 11)
    409  1.1  jkunz #define HW_DRAM_CTL25_AHB3_RDCNT	__BITS(10, 0)
    410  1.1  jkunz 
    411  1.1  jkunz /*
    412  1.1  jkunz  * DRAM Control Register 26.
    413  1.1  jkunz  */
    414  1.1  jkunz #define HW_DRAM_CTL26	0x068
    415  1.1  jkunz 
    416  1.1  jkunz #define HW_DRAM_CTL26_OBSOLETE		__BITS(31, 16)
    417  1.1  jkunz #define HW_DRAM_CTL26_RSVD1		__BITS(15, 12)
    418  1.1  jkunz #define HW_DRAM_CTL26_TREF		__BITS(11, 0)
    419  1.1  jkunz 
    420  1.1  jkunz /*
    421  1.1  jkunz  * DRAM Control Register 27.
    422  1.1  jkunz  */
    423  1.1  jkunz #define HW_DRAM_CTL27	0x06c
    424  1.1  jkunz 
    425  1.1  jkunz #define HW_DRAM_CTL27_OBSOLETE	__BITS(31, 0)
    426  1.1  jkunz 
    427  1.1  jkunz /*
    428  1.1  jkunz  * DRAM Control Register 28.
    429  1.1  jkunz  */
    430  1.1  jkunz #define HW_DRAM_CTL28	0x070
    431  1.1  jkunz 
    432  1.1  jkunz #define HW_DRAM_CTL28_OBSOLETE	__BITS(31, 0)
    433  1.1  jkunz 
    434  1.1  jkunz /*
    435  1.1  jkunz  * DRAM Control Register 29.
    436  1.1  jkunz  */
    437  1.1  jkunz #define HW_DRAM_CTL29	0x074
    438  1.1  jkunz 
    439  1.1  jkunz #define HW_DRAM_CTL29_LOWPOWER_INTERNAL_CNT	__BITS(31, 16)
    440  1.1  jkunz #define HW_DRAM_CTL29_LOWPOWER_EXTERNAL_CNT	__BITS(15, 0)
    441  1.1  jkunz 
    442  1.1  jkunz /*
    443  1.1  jkunz  * DRAM Control Register 30.
    444  1.1  jkunz  */
    445  1.1  jkunz #define HW_DRAM_CTL30	0x078
    446  1.1  jkunz 
    447  1.1  jkunz #define HW_DRAM_CTL30_LOWPOWER_REFRESH_HOLD	__BITS(31, 16)
    448  1.1  jkunz #define HW_DRAM_CTL30_LOWPOWER_POWER_DOWN_CNT	__BITS(15, 0)
    449  1.1  jkunz 
    450  1.1  jkunz /*
    451  1.1  jkunz  * DRAM Control Register 31.
    452  1.1  jkunz  */
    453  1.1  jkunz #define HW_DRAM_CTL31	0x07c
    454  1.1  jkunz 
    455  1.1  jkunz #define HW_DRAM_CTL31_TDLL			__BITS(31, 16)
    456  1.1  jkunz #define HW_DRAM_CTL31_LOWPOWER_SELF_REFRESH_CNT	__BITS(15, 0)
    457  1.1  jkunz 
    458  1.1  jkunz /*
    459  1.1  jkunz  * DRAM Control Register 32.
    460  1.1  jkunz  */
    461  1.1  jkunz #define HW_DRAM_CTL32	0x080
    462  1.1  jkunz 
    463  1.1  jkunz #define HW_DRAM_CTL32_TXSNR	__BITS(31, 16)
    464  1.1  jkunz #define HW_DRAM_CTL32_TRAS_MAX	__BITS(15, 0)
    465  1.1  jkunz 
    466  1.1  jkunz /*
    467  1.1  jkunz  * DRAM Control Register 33.
    468  1.1  jkunz  */
    469  1.1  jkunz #define HW_DRAM_CTL33	0x084
    470  1.1  jkunz 
    471  1.1  jkunz #define HW_DRAM_CTL33_VERSION	__BITS(31, 16)
    472  1.1  jkunz #define HW_DRAM_CTL33_TXSR	__BITS(15, 0)
    473  1.1  jkunz 
    474  1.1  jkunz /*
    475  1.1  jkunz  * DRAM Control Register 34.
    476  1.1  jkunz  */
    477  1.1  jkunz #define HW_DRAM_CTL34	0x088
    478  1.1  jkunz 
    479  1.1  jkunz #define HW_DRAM_CTL34_RSVD1	__BITS(31, 24)
    480  1.1  jkunz #define HW_DRAM_CTL34_TINIT	__BITS(23, 0)
    481  1.1  jkunz 
    482  1.1  jkunz /*
    483  1.1  jkunz  * DRAM Control Register 35.
    484  1.1  jkunz  */
    485  1.1  jkunz #define HW_DRAM_CTL35	0x08c
    486  1.1  jkunz 
    487  1.1  jkunz #define HW_DRAM_CTL35_RSVD1		__BIT(31)
    488  1.1  jkunz #define HW_DRAM_CTL35_OUT_OF_RANGE_ADDR	__BITS(30, 0)
    489  1.1  jkunz 
    490  1.1  jkunz /*
    491  1.1  jkunz  * DRAM Control Register 36.
    492  1.1  jkunz  */
    493  1.1  jkunz #define HW_DRAM_CTL36	0x090
    494  1.1  jkunz 
    495  1.1  jkunz #define HW_DRAM_CTL36_RSVD5			__BITS(31, 25)
    496  1.1  jkunz #define HW_DRAM_CTL36_PWRUP_SREFRESH_EXIT	__BIT(24)
    497  1.1  jkunz #define HW_DRAM_CTL36_RSVD4			__BITS(23, 17)
    498  1.1  jkunz #define HW_DRAM_CTL36_ENABLE_QUICK_SREFRESH	__BIT(16)
    499  1.1  jkunz #define HW_DRAM_CTL36_RSVD3			__BITS(15, 9)
    500  1.1  jkunz #define HW_DRAM_CTL36_RSVD2			__BIT(8)
    501  1.1  jkunz #define HW_DRAM_CTL36_RSVD1			__BITS(7, 1)
    502  1.1  jkunz #define HW_DRAM_CTL36_ACTIVE_AGING		__BIT(0)
    503  1.1  jkunz 
    504  1.1  jkunz /*
    505  1.1  jkunz  * DRAM Control Register 37.
    506  1.1  jkunz  */
    507  1.1  jkunz #define HW_DRAM_CTL37	0x094
    508  1.1  jkunz 
    509  1.1  jkunz #define HW_DRAM_CTL37_OBSOLETE		__BITS(31, 24)
    510  1.1  jkunz #define HW_DRAM_CTL37_RSVD2		__BITS(23, 18)
    511  1.1  jkunz #define HW_DRAM_CTL37_BUS_SHARE_TIMEOUT	__BITS(17, 8)
    512  1.1  jkunz #define HW_DRAM_CTL37_RSVD1		__BITS(7, 1)
    513  1.1  jkunz #define HW_DRAM_CTL37_TREF_ENABLE	__BIT(0)
    514  1.1  jkunz 
    515  1.1  jkunz /*
    516  1.1  jkunz  * DRAM Control Register 38.
    517  1.1  jkunz  */
    518  1.1  jkunz #define HW_DRAM_CTL38	0x098
    519  1.1  jkunz 
    520  1.1  jkunz #define HW_DRAM_CTL38_RSVD2		__BITS(31, 29)
    521  1.1  jkunz #define HW_DRAM_CTL38_EMRS2_DATA_0	__BITS(28, 16)
    522  1.1  jkunz #define HW_DRAM_CTL38_RSVD1		__BITS(15, 13)
    523  1.1  jkunz #define HW_DRAM_CTL38_EMRS1_DATA	__BITS(12, 0)
    524  1.1  jkunz 
    525  1.1  jkunz /*
    526  1.1  jkunz  * DRAM Control Register 39.
    527  1.1  jkunz  */
    528  1.1  jkunz #define HW_DRAM_CTL39	0x09c
    529  1.1  jkunz 
    530  1.1  jkunz #define HW_DRAM_CTL39_RSVD2		__BITS(31, 29)
    531  1.1  jkunz #define HW_DRAM_CTL39_EMRS2_DATA_2	__BITS(28, 16)
    532  1.1  jkunz #define HW_DRAM_CTL39_RSVD1		__BITS(15, 13)
    533  1.1  jkunz #define HW_DRAM_CTL39_EMRS2_DATA_1	__BITS(12, 0)
    534  1.1  jkunz 
    535  1.1  jkunz /*
    536  1.1  jkunz  * DRAM Control Register 40.
    537  1.1  jkunz  */
    538  1.1  jkunz #define HW_DRAM_CTL40	0x0A0
    539  1.1  jkunz 
    540  1.1  jkunz #define HW_DRAM_CTL40_TPDEX		__BITS(31, 16)
    541  1.1  jkunz #define HW_DRAM_CTL40_RSVD1		__BITS(15, 13)
    542  1.1  jkunz #define HW_DRAM_CTL40_EMRS2_DATA_3	__BITS(12, 0)
    543  1.1  jkunz 
    544  1.1  jkunz #endif /* !_ARM_IMX_IMX23_EMIREG_H_ */
    545