mirror of
https://github.com/Stichting-MINIX-Research-Foundation/netbsd.git
synced 2025-08-09 22:20:19 -04:00
545 lines
15 KiB
C
545 lines
15 KiB
C
/* $Id: imx23_emireg.h,v 1.1 2012/11/20 19:06:13 jkunz Exp $ */
|
|
|
|
/*
|
|
* Copyright (c) 2012 The NetBSD Foundation, Inc.
|
|
* All rights reserved.
|
|
*
|
|
* This code is derived from software contributed to The NetBSD Foundation
|
|
* by Petri Laakso.
|
|
*
|
|
* Redistribution and use in source and binary forms, with or without
|
|
* modification, are permitted provided that the following conditions
|
|
* are met:
|
|
* 1. Redistributions of source code must retain the above copyright
|
|
* notice, this list of conditions and the following disclaimer.
|
|
* 2. Redistributions in binary form must reproduce the above copyright
|
|
* notice, this list of conditions and the following disclaimer in the
|
|
* documentation and/or other materials provided with the distribution.
|
|
*
|
|
* THIS SOFTWARE IS PROVIDED BY THE NETBSD FOUNDATION, INC. AND CONTRIBUTORS
|
|
* ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED
|
|
* TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR
|
|
* PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR CONTRIBUTORS
|
|
* BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
* CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
* INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
* CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
* ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
* POSSIBILITY OF SUCH DAMAGE.
|
|
*/
|
|
|
|
#ifndef _ARM_IMX_IMX23_EMIREG_H_
|
|
#define _ARM_IMX_IMX23_EMIREG_H_
|
|
|
|
#include <sys/cdefs.h>
|
|
|
|
#define HW_EMI_CTRL_BASE 0x80020000
|
|
#define HW_DRAM_BASE 0x800E0000
|
|
|
|
/*
|
|
* EMI Control Register.
|
|
*/
|
|
#define HW_EMI_CTRL 0x000
|
|
#define HW_EMI_CTRL_SET 0x004
|
|
#define HW_EMI_CTRL_CLR 0x008
|
|
#define HW_EMI_CTRL_TOG 0x00C
|
|
|
|
#define HW_EMI_CTRL_SFTRST __BIT(31)
|
|
#define HW_EMI_CTRL_RSVD6 __BIT(30)
|
|
#define HW_EMI_CTRL_TRAP_SR __BIT(29)
|
|
#define HW_EMI_CTRL_TRAP_INIT __BIT(28)
|
|
#define HW_EMI_CTRL_AXI_DEPTH __BITS(27, 26)
|
|
#define HW_EMI_CTRL_DLL_SHIFT_RESET __BIT(25)
|
|
#define HW_EMI_CTRL_DLL_RESET __BIT(24)
|
|
#define HW_EMI_CTRL_ARB_MODE __BITS(23, 22)
|
|
#define HW_EMI_CTRL_RSVD5 __BIT(21)
|
|
#define HW_EMI_CTRL_PORT_PRIORITY_ORDER __BITS(20, 16)
|
|
#define HW_EMI_CTRL_RSVD4 __BIT(15)
|
|
#define HW_EMI_CTRL_PRIORITY_WRITE_ITER __BITS(14, 12)
|
|
#define HW_EMI_CTRL_RSVD3 __BIT(11)
|
|
#define HW_EMI_CTRL_HIGH_PRIORITY_WRITE __BITS(10, 8)
|
|
#define HW_EMI_CTRL_RSVD2 __BIT(7)
|
|
#define HW_EMI_CTRL_MEM_WIDTH __BIT(6)
|
|
#define HW_EMI_CTRL_RSVD1 __BIT(5)
|
|
#define HW_EMI_CTRL_RESET_OUT __BIT(4)
|
|
#define HW_EMI_CTRL_RSVD0 __BITS(3, 0)
|
|
|
|
/*
|
|
* EMI Version Register.
|
|
*/
|
|
#define HW_EMI_VERSION 0x0F0
|
|
|
|
#define HW_EMI_VERSION_MAJOR __BITS(31, 24)
|
|
#define HW_EMI_VERSION_MINOR __BITS(23, 16)
|
|
#define HW_EMI_VERSION_STEP __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 0.
|
|
*/
|
|
#define HW_DRAM_CTL00 0x000
|
|
|
|
#define HW_DRAM_CTL00_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL00_AHB0_W_PRIORITY __BIT(24)
|
|
#define HW_DRAM_CTL00_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL00_AHB0_R_PRIORITY __BIT(16)
|
|
#define HW_DRAM_CTL00_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL00_AHB0_FIFO_TYPE_REG __BIT(8)
|
|
#define HW_DRAM_CTL00_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL00_ADDR_CMP_EN __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 1.
|
|
*/
|
|
#define HW_DRAM_CTL01 0x004
|
|
|
|
#define HW_DRAM_CTL01_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL01_AHB2_FIFO_TYPE_REG __BIT(24)
|
|
#define HW_DRAM_CTL01_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL01_AHB1_W_PRIORITY __BIT(16)
|
|
#define HW_DRAM_CTL01_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL01_AHB1_R_PRIORITY __BIT(8)
|
|
#define HW_DRAM_CTL01_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL01_AHB1_FIFO_TYPE_REG __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 2.
|
|
*/
|
|
#define HW_DRAM_CTL02 0x008
|
|
|
|
#define HW_DRAM_CTL02_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL02_AHB3_R_PRIORITY __BIT(24)
|
|
#define HW_DRAM_CTL02_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL02_AHB3_FIFO_TYPE_REG __BIT(16)
|
|
#define HW_DRAM_CTL02_RSVD2 __BIT(15, 9)
|
|
#define HW_DRAM_CTL02_AHB2_W_PRIORITY __BIT(8)
|
|
#define HW_DRAM_CTL02_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL02_AHB2_R_PRIORITY __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 3.
|
|
*/
|
|
#define HW_DRAM_CTL03 0x00c
|
|
|
|
#define HW_DRAM_CTL03_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL03_AUTO_REFRESH_MODE __BIT(24)
|
|
#define HW_DRAM_CTL03_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL03_AREFRESH __BIT(16)
|
|
#define HW_DRAM_CTL03_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL03_AP __BIT(8)
|
|
#define HW_DRAM_CTL03_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL03_AHB3_W_PRIORITY __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 4.
|
|
*/
|
|
#define HW_DRAM_CTL04 0x010
|
|
|
|
#define HW_DRAM_CTL04_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL04_DLL_BYPASS_MODE __BIT(24)
|
|
#define HW_DRAM_CTL04_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL04_DLLLOCKREG __BIT(16)
|
|
#define HW_DRAM_CTL04_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL04_CONCURRENTAP __BIT(8)
|
|
#define HW_DRAM_CTL04_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL04_BANK_SPLIT_EN __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 5.
|
|
*/
|
|
#define HW_DRAM_CTL05 0x014
|
|
|
|
#define HW_DRAM_CTL05_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL05_INTRPTREADA __BIT(24)
|
|
#define HW_DRAM_CTL05_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL05_INTRPTAPBURST __BIT(16)
|
|
#define HW_DRAM_CTL05_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL05_FAST_WRITE __BIT(8)
|
|
#define HW_DRAM_CTL05_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL05_EN_LOWPOWER_MODE __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 6.
|
|
*/
|
|
#define HW_DRAM_CTL06 0x018
|
|
|
|
#define HW_DRAM_CTL06_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL06_POWER_DOWN __BIT(24)
|
|
#define HW_DRAM_CTL06_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL06_PLACEMENT_EN __BIT(16)
|
|
#define HW_DRAM_CTL06_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL06_NO_CMD_INIT __BIT(8)
|
|
#define HW_DRAM_CTL06_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL06_INTRPTWRITEA __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 7.
|
|
*/
|
|
#define HW_DRAM_CTL07 0x01c
|
|
|
|
#define HW_DRAM_CTL07_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL07_RW_SAME_EN __BIT(24)
|
|
#define HW_DRAM_CTL07_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL07_REG_DIMM_ENABLE __BIT(16)
|
|
#define HW_DRAM_CTL07_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL07_RD2RD_TURN __BIT(8)
|
|
#define HW_DRAM_CTL07_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL07_PRIORITY_EN __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 8.
|
|
*/
|
|
#define HW_DRAM_CTL08 0x020
|
|
|
|
#define HW_DRAM_CTL08_RSVD4 __BITS(31, 25)
|
|
#define HW_DRAM_CTL08_TRAS_LOCKOUT __BIT(24)
|
|
#define HW_DRAM_CTL08_RSVD3 __BITS(23, 17)
|
|
#define HW_DRAM_CTL08_START __BIT(16)
|
|
#define HW_DRAM_CTL08_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL08_SREFRESH __BIT(8)
|
|
#define HW_DRAM_CTL08_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL08_SDR_MODE __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 9.
|
|
*/
|
|
#define HW_DRAM_CTL09 0x024
|
|
|
|
#define HW_DRAM_CTL09_RSVD4 __BITS(31, 26)
|
|
#define HW_DRAM_CTL09_OUT_OF_RANGE_TYPE __BITS(25, 24)
|
|
#define HW_DRAM_CTL09_RSVD3 __BITS(23, 18)
|
|
#define HW_DRAM_CTL09_OUT_OF_RANGE_SOURCE_ID __BITS(17, 16)
|
|
#define HW_DRAM_CTL09_RSVD2 __BITS(15, 9)
|
|
#define HW_DRAM_CTL09_WRITE_MODEREG __BIT(8)
|
|
#define HW_DRAM_CTL09_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL09_WRITEINTERP __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 10.
|
|
*/
|
|
#define HW_DRAM_CTL10 0x028
|
|
|
|
#define HW_DRAM_CTL10_RSVD4 __BITS(31, 27)
|
|
#define HW_DRAM_CTL10_AGE_COUNT __BITS(26, 24)
|
|
#define HW_DRAM_CTL10_RSVD3 __BITS(23, 19)
|
|
#define HW_DRAM_CTL10_ADDR_PINS __BITS(18, 16)
|
|
#define HW_DRAM_CTL10_RSVD2 __BITS(15, 10)
|
|
#define HW_DRAM_CTL10_TEMRS __BITS(9, 8)
|
|
#define HW_DRAM_CTL10_RSVD1 __BITS(7, 2)
|
|
#define HW_DRAM_CTL10_Q_FULLNESS __BITS(1, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 11.
|
|
*/
|
|
#define HW_DRAM_CTL11 0x02c
|
|
|
|
#define HW_DRAM_CTL11_RSVD4 __BITS(31, 27)
|
|
#define HW_DRAM_CTL11_MAX_CS_REG __BITS(26, 24)
|
|
#define HW_DRAM_CTL11_RSVD3 __BITS(23, 19)
|
|
#define HW_DRAM_CTL11_COMMAND_AGE_COUNT __BITS(18, 16)
|
|
#define HW_DRAM_CTL11_RSVD2 __BITS(15, 11)
|
|
#define HW_DRAM_CTL11_COLUMN_SIZE __BITS(10, 8)
|
|
#define HW_DRAM_CTL11_RSVD1 __BITS(7, 3)
|
|
#define HW_DRAM_CTL11_CASLAT __BITS(2, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 12.
|
|
*/
|
|
#define HW_DRAM_CTL12 0x030
|
|
|
|
#define HW_DRAM_CTL12_RSVD3 __BITS(31, 27)
|
|
#define HW_DRAM_CTL12_TWR_INT __BITS(26, 24)
|
|
#define HW_DRAM_CTL12_RSVD2 __BITS(23, 19)
|
|
#define HW_DRAM_CTL12_TRRD __BITS(18 ,16)
|
|
#define HW_DRAM_CTL12_OBSOLETE __BITS(15, 8)
|
|
#define HW_DRAM_CTL12_RSVD1 __BITS(7, 3)
|
|
#define HW_DRAM_CTL12_TCKE __BITS(2, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 13.
|
|
*/
|
|
#define HW_DRAM_CTL13 0x034
|
|
|
|
#define HW_DRAM_CTL13_RSVD4 __BITS(31, 28)
|
|
#define HW_DRAM_CTL13_CASLAT_LIN_GATE __BITS(27, 24)
|
|
#define HW_DRAM_CTL13_RSVD3 __BITS(23, 20)
|
|
#define HW_DRAM_CTL13_CASLAT_LIN __BITS(19, 16)
|
|
#define HW_DRAM_CTL13_RSVD2 __BITS(15, 12)
|
|
#define HW_DRAM_CTL13_APREBIT __BITS(11, 8)
|
|
#define HW_DRAM_CTL13_RSVD1 __BITS(7, 3)
|
|
#define HW_DRAM_CTL13_TWTR __BITS(2, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 14.
|
|
*/
|
|
#define HW_DRAM_CTL14 0x038
|
|
|
|
#define HW_DRAM_CTL14_RSVD4 __BITS(31, 28)
|
|
#define HW_DRAM_CTL14_MAX_COL_REG __BITS(27, 24)
|
|
#define HW_DRAM_CTL14_RSVD3 __BITS(23, 20)
|
|
#define HW_DRAM_CTL14_LOWPOWER_REFRESH_ENABLE __BITS(19, 16)
|
|
#define HW_DRAM_CTL14_RSVD2 __BITS(15, 12)
|
|
#define HW_DRAM_CTL14_INITAREF __BITS(11, 8)
|
|
#define HW_DRAM_CTL14_RSVD1 __BITS(7, 4)
|
|
#define HW_DRAM_CTL14_CS_MAP __BITS(3, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 15.
|
|
*/
|
|
#define HW_DRAM_CTL15 0x03c
|
|
|
|
#define HW_DRAM_CTL15_RSVD4 __BITS(31, 28)
|
|
#define HW_DRAM_CTL15_TRP __BITS(27, 24)
|
|
#define HW_DRAM_CTL15_RSVD3 __BITS(23, 20)
|
|
#define HW_DRAM_CTL15_TDAL __BITS(19, 16)
|
|
#define HW_DRAM_CTL15_RSVD2 __BITS(15, 12)
|
|
#define HW_DRAM_CTL15_PORT_BUSY __BITS(11, 8)
|
|
#define HW_DRAM_CTL15_RSVD1 __BITS(7, 4)
|
|
#define HW_DRAM_CTL15_MAX_ROW_REG __BITS(3, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 16.
|
|
*/
|
|
#define HW_DRAM_CTL16 0x040
|
|
|
|
#define HW_DRAM_CTL16_RSVD4 __BITS(31, 29)
|
|
#define HW_DRAM_CTL16_TMRD __BITS(28, 24)
|
|
#define HW_DRAM_CTL16_RSVD3 __BITS(23, 21)
|
|
#define HW_DRAM_CTL16_LOWPOWER_CONTROL __BITS(20, 16)
|
|
#define HW_DRAM_CTL16_RSVD2 __BITS(15, 13)
|
|
#define HW_DRAM_CTL16_LOWPOWER_AUTO_ENABLE __BITS(12, 8)
|
|
#define HW_DRAM_CTL16_RSVD1 __BITS(7, 4)
|
|
#define HW_DRAM_CTL16_INT_ACK __BITS(3, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 17.
|
|
*/
|
|
#define HW_DRAM_CTL17 0x044
|
|
|
|
#define HW_DRAM_CTL17_DLL_START_POINT __BITS(31, 24)
|
|
#define HW_DRAM_CTL17_DLL_LOCK __BITS(23, 16)
|
|
#define HW_DRAM_CTL17_DLL_INCREMENT __BITS(15, 8)
|
|
#define HW_DRAM_CTL17_RSVD1 __BITS(7, 5)
|
|
#define HW_DRAM_CTL17_TRC __BITS(4, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 18.
|
|
*/
|
|
#define HW_DRAM_CTL18 0x048
|
|
|
|
#define HW_DRAM_CTL18_RSVD4 __BIT(31)
|
|
#define HW_DRAM_CTL18_DLL_DQS_DELAY_1 __BITS(30, 24)
|
|
#define HW_DRAM_CTL18_RSVD3 __BIT(23)
|
|
#define HW_DRAM_CTL18_DLL_DQS_DELAY_0 __BITS(22, 16)
|
|
#define HW_DRAM_CTL18_RSVD2 __BITS(15, 13)
|
|
#define HW_DRAM_CTL18_INT_STATUS __BITS(12, 8)
|
|
#define HW_DRAM_CTL18_RSVD1 __BITS(7, 5)
|
|
#define HW_DRAM_CTL18_INT_MASK __BITS(4, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 19.
|
|
*/
|
|
#define HW_DRAM_CTL19 0x04c
|
|
|
|
#define HW_DRAM_CTL19_DQS_OUT_SHIFT_BYPASS __BITS(31, 24)
|
|
#define HW_DRAM_CTL19_RSVD1 __BIT(23)
|
|
#define HW_DRAM_CTL19_DQS_OUT_SHIFT __BITS(22, 16)
|
|
#define HW_DRAM_CTL19_DLL_DQS_DELAY_BYPASS_1 __BITS(15, 8)
|
|
#define HW_DRAM_CTL19_DLL_DQS_DELAY_BYPASS_0 __BITS(7, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 20.
|
|
*/
|
|
#define HW_DRAM_CTL20 0x050
|
|
|
|
#define HW_DRAM_CTL20_TRCD_INT __BITS(31, 24)
|
|
#define HW_DRAM_CTL20_TRAS_MIN __BITS(23, 16)
|
|
#define HW_DRAM_CTL20_WR_DQS_SHIFT_BYPASS __BITS(15, 8)
|
|
#define HW_DRAM_CTL20_RSVD1 __BIT(7)
|
|
#define HW_DRAM_CTL20_WR_DQS_SHIFT __BITS(6, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 21.
|
|
*/
|
|
#define HW_DRAM_CTL21 0x054
|
|
|
|
#define HW_DRAM_CTL21_OBSOLETE __BITS(31, 24)
|
|
#define HW_DRAM_CTL21_RSVD1 __BITS(23, 18)
|
|
#define HW_DRAM_CTL21_OUT_OF_RANGE_LENGTH __BITS(17, 8)
|
|
#define HW_DRAM_CTL21_TRFC __BITS(7, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 22.
|
|
*/
|
|
#define HW_DRAM_CTL22 0x058
|
|
|
|
#define HW_DRAM_CTL22_RSVD2 __BITS(31, 27)
|
|
#define HW_DRAM_CTL22_AHB0_WRCNT __BITS(26, 16)
|
|
#define HW_DRAM_CTL22_RSVD1 __BITS(15, 11)
|
|
#define HW_DRAM_CTL22_AHB0_RDCNT __BITS(10, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 23.
|
|
*/
|
|
#define HW_DRAM_CTL23 0x05c
|
|
|
|
#define HW_DRAM_CTL23_RSVD2 __BITS(31, 27)
|
|
#define HW_DRAM_CTL23_AHB1_WRCNT __BITS(26, 16)
|
|
#define HW_DRAM_CTL23_RSVD1 __BITS(15, 11)
|
|
#define HW_DRAM_CTL23_AHB1_RDCNT __BITS(10, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 24.
|
|
*/
|
|
#define HW_DRAM_CTL24 0x060
|
|
|
|
#define HW_DRAM_CTL24_RSVD2 __BITS(31, 27)
|
|
#define HW_DRAM_CTL24_AHB2_WRCNT __BITS(26, 16)
|
|
#define HW_DRAM_CTL24_RSVD1 __BITS(15, 11)
|
|
#define HW_DRAM_CTL24_AHB2_RDCNT __BITS(10, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 25.
|
|
*/
|
|
#define HW_DRAM_CTL25 0x064
|
|
|
|
#define HW_DRAM_CTL25_RSVD2 __BITS(31, 27)
|
|
#define HW_DRAM_CTL25_AHB3_WRCNT __BITS(26, 16)
|
|
#define HW_DRAM_CTL25_RSVD1 __BITS(15, 11)
|
|
#define HW_DRAM_CTL25_AHB3_RDCNT __BITS(10, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 26.
|
|
*/
|
|
#define HW_DRAM_CTL26 0x068
|
|
|
|
#define HW_DRAM_CTL26_OBSOLETE __BITS(31, 16)
|
|
#define HW_DRAM_CTL26_RSVD1 __BITS(15, 12)
|
|
#define HW_DRAM_CTL26_TREF __BITS(11, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 27.
|
|
*/
|
|
#define HW_DRAM_CTL27 0x06c
|
|
|
|
#define HW_DRAM_CTL27_OBSOLETE __BITS(31, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 28.
|
|
*/
|
|
#define HW_DRAM_CTL28 0x070
|
|
|
|
#define HW_DRAM_CTL28_OBSOLETE __BITS(31, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 29.
|
|
*/
|
|
#define HW_DRAM_CTL29 0x074
|
|
|
|
#define HW_DRAM_CTL29_LOWPOWER_INTERNAL_CNT __BITS(31, 16)
|
|
#define HW_DRAM_CTL29_LOWPOWER_EXTERNAL_CNT __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 30.
|
|
*/
|
|
#define HW_DRAM_CTL30 0x078
|
|
|
|
#define HW_DRAM_CTL30_LOWPOWER_REFRESH_HOLD __BITS(31, 16)
|
|
#define HW_DRAM_CTL30_LOWPOWER_POWER_DOWN_CNT __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 31.
|
|
*/
|
|
#define HW_DRAM_CTL31 0x07c
|
|
|
|
#define HW_DRAM_CTL31_TDLL __BITS(31, 16)
|
|
#define HW_DRAM_CTL31_LOWPOWER_SELF_REFRESH_CNT __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 32.
|
|
*/
|
|
#define HW_DRAM_CTL32 0x080
|
|
|
|
#define HW_DRAM_CTL32_TXSNR __BITS(31, 16)
|
|
#define HW_DRAM_CTL32_TRAS_MAX __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 33.
|
|
*/
|
|
#define HW_DRAM_CTL33 0x084
|
|
|
|
#define HW_DRAM_CTL33_VERSION __BITS(31, 16)
|
|
#define HW_DRAM_CTL33_TXSR __BITS(15, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 34.
|
|
*/
|
|
#define HW_DRAM_CTL34 0x088
|
|
|
|
#define HW_DRAM_CTL34_RSVD1 __BITS(31, 24)
|
|
#define HW_DRAM_CTL34_TINIT __BITS(23, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 35.
|
|
*/
|
|
#define HW_DRAM_CTL35 0x08c
|
|
|
|
#define HW_DRAM_CTL35_RSVD1 __BIT(31)
|
|
#define HW_DRAM_CTL35_OUT_OF_RANGE_ADDR __BITS(30, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 36.
|
|
*/
|
|
#define HW_DRAM_CTL36 0x090
|
|
|
|
#define HW_DRAM_CTL36_RSVD5 __BITS(31, 25)
|
|
#define HW_DRAM_CTL36_PWRUP_SREFRESH_EXIT __BIT(24)
|
|
#define HW_DRAM_CTL36_RSVD4 __BITS(23, 17)
|
|
#define HW_DRAM_CTL36_ENABLE_QUICK_SREFRESH __BIT(16)
|
|
#define HW_DRAM_CTL36_RSVD3 __BITS(15, 9)
|
|
#define HW_DRAM_CTL36_RSVD2 __BIT(8)
|
|
#define HW_DRAM_CTL36_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL36_ACTIVE_AGING __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 37.
|
|
*/
|
|
#define HW_DRAM_CTL37 0x094
|
|
|
|
#define HW_DRAM_CTL37_OBSOLETE __BITS(31, 24)
|
|
#define HW_DRAM_CTL37_RSVD2 __BITS(23, 18)
|
|
#define HW_DRAM_CTL37_BUS_SHARE_TIMEOUT __BITS(17, 8)
|
|
#define HW_DRAM_CTL37_RSVD1 __BITS(7, 1)
|
|
#define HW_DRAM_CTL37_TREF_ENABLE __BIT(0)
|
|
|
|
/*
|
|
* DRAM Control Register 38.
|
|
*/
|
|
#define HW_DRAM_CTL38 0x098
|
|
|
|
#define HW_DRAM_CTL38_RSVD2 __BITS(31, 29)
|
|
#define HW_DRAM_CTL38_EMRS2_DATA_0 __BITS(28, 16)
|
|
#define HW_DRAM_CTL38_RSVD1 __BITS(15, 13)
|
|
#define HW_DRAM_CTL38_EMRS1_DATA __BITS(12, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 39.
|
|
*/
|
|
#define HW_DRAM_CTL39 0x09c
|
|
|
|
#define HW_DRAM_CTL39_RSVD2 __BITS(31, 29)
|
|
#define HW_DRAM_CTL39_EMRS2_DATA_2 __BITS(28, 16)
|
|
#define HW_DRAM_CTL39_RSVD1 __BITS(15, 13)
|
|
#define HW_DRAM_CTL39_EMRS2_DATA_1 __BITS(12, 0)
|
|
|
|
/*
|
|
* DRAM Control Register 40.
|
|
*/
|
|
#define HW_DRAM_CTL40 0x0A0
|
|
|
|
#define HW_DRAM_CTL40_TPDEX __BITS(31, 16)
|
|
#define HW_DRAM_CTL40_RSVD1 __BITS(15, 13)
|
|
#define HW_DRAM_CTL40_EMRS2_DATA_3 __BITS(12, 0)
|
|
|
|
#endif /* !_ARM_IMX_IMX23_EMIREG_H_ */
|