diff --git a/.github/scripts/core_checker.py b/.github/scripts/core_checker.py
index 763135e1c7c..5689930c5fa 100755
--- a/.github/scripts/core_checker.py
+++ b/.github/scripts/core_checker.py
@@ -265,7 +265,8 @@
r'.*/startup.*',
r'.*/trcConfig\.h.*',
r'.*/trcConfig\.c.*',
- r'.*/trcSnapshotConfig\.h.*'
+ r'.*/trcSnapshotConfig\.h.*',
+ r'.*/MicroZed_hw_platform.*'
]
FREERTOS_IGNORED_FILES = [
diff --git a/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/.project b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/.project
new file mode 100644
index 00000000000..8884f07c293
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/.project
@@ -0,0 +1,12 @@
+
+
+ MicroZed_hw_platform
+ Created by SDK v2014.3
+
+
+
+
+
+ com.xilinx.sdk.hw.HwProject
+
+
diff --git a/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.c b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.c
new file mode 100644
index 00000000000..3405994079d
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.c
@@ -0,0 +1,12987 @@
+/******************************************************************************
+*
+* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved.
+*
+* Permission is hereby granted, free of charge, to any person obtaining a copy of this
+* software and associated documentation files (the "Software"), to deal in the Software
+* without restriction, including without limitation the rights to use, copy, modify, merge,
+* publish, distribute, sublicense, and/or sell copies of the Software, and to permit
+* persons to whom the Software is furnished to do so, subject to the following conditions:
+*
+* The above copyright notice and this permission notice shall be included in all copies or
+* substantial portions of the Software.
+*
+* Use of the Software is limited solely to applications: (a) running on a Xilinx device, or
+* (b) that interact with a Xilinx device through a bus or interconnect.
+*
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+* NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*
+* Except as contained in this notice, the name of the Xilinx shall not be used in advertising or
+* otherwise to promote the sale, use or other dealings in this Software without prior written
+* authorization from Xilinx.
+*
+******************************************************************************/
+/****************************************************************************/
+/**
+*
+* @file ps7_init.c
+*
+* This file is automatically generated
+*
+*****************************************************************************/
+
+#include "ps7_init.h"
+
+unsigned long ps7_pll_init_data_3_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: PLL SLCR REGISTERS
+ // .. .. START: ARM PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000110[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000110[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0xfa
+ // .. .. ==> 0XF8000110[21:12] = 0x000000FAU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x000FA000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x000FA220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x28
+ // .. .. .. ==> 0XF8000100[18:12] = 0x00000028U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00028000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x00028000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. ARM_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000001U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. SRCSEL = 0x0
+ // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. .. .. DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U
+ // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U
+ // .. .. .. CPU_6OR4XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U
+ // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // .. .. .. CPU_3OR2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U
+ // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U
+ // .. .. .. CPU_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U
+ // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. .. CPU_1XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U
+ // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. .. CPU_PERI_CLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U
+ // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U),
+ // .. .. FINISH: ARM PLL INIT
+ // .. .. START: DDR PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000114[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000114[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x12c
+ // .. .. ==> 0XF8000114[21:12] = 0x0000012CU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x0012C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x0012C220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x20
+ // .. .. .. ==> 0XF8000104[18:12] = 0x00000020U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00020000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00020000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. DDR_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000002U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. DDR_3XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. .. DDR_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. .. DDR_3XCLK_DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U
+ // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U
+ // .. .. .. DDR_2XCLK_DIVISOR = 0x3
+ // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U
+ // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U),
+ // .. .. FINISH: DDR PLL INIT
+ // .. .. START: IO PLL INIT
+ // .. .. PLL_RES = 0xc
+ // .. .. ==> 0XF8000118[7:4] = 0x0000000CU
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000118[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x145
+ // .. .. ==> 0XF8000118[21:12] = 0x00000145U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00145000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001452C0U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x1e
+ // .. .. .. ==> 0XF8000108[18:12] = 0x0000001EU
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001E000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x0001E000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. IO_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000004U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. FINISH: IO PLL INIT
+ // .. FINISH: PLL SLCR REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_clock_init_data_3_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: CLOCK CONTROL SLCR REGISTERS
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000128[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. DIVISOR0 = 0x23
+ // .. ==> 0XF8000128[13:8] = 0x00000023U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00002300U
+ // .. DIVISOR1 = 0x3
+ // .. ==> 0XF8000128[25:20] = 0x00000003U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00300000U
+ // ..
+ EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00302301U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000138[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000138[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000140[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000140[6:4] = 0x00000000U
+ // .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. DIVISOR = 0x8
+ // .. ==> 0XF8000140[13:8] = 0x00000008U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000800U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000140[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF800014C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF800014C[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF800014C[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U),
+ // .. CLKACT0 = 0x1
+ // .. ==> 0XF8000150[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. CLKACT1 = 0x0
+ // .. ==> 0XF8000150[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000150[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000150[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U),
+ // .. CLKACT0 = 0x0
+ // .. ==> 0XF8000154[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. CLKACT1 = 0x1
+ // .. ==> 0XF8000154[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000154[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000154[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00001402U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000168[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000168[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF8000168[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000170[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000170[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000170[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000180[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000180[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000180[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000180, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000190[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x1e
+ // .. ==> 0XF8000190[13:8] = 0x0000001EU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001E00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000190[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000190, 0x03F03F30U ,0x00101E00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF80001A0[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x14
+ // .. ==> 0XF80001A0[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF80001A0[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF80001A0, 0x03F03F30U ,0x00101400U),
+ // .. CLK_621_TRUE = 0x1
+ // .. ==> 0XF80001C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U),
+ // .. DMA_CPU_2XCLKACT = 0x1
+ // .. ==> 0XF800012C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. USB0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. USB1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[3:3] = 0x00000001U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. GEM0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[6:6] = 0x00000001U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000040U
+ // .. GEM1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. SDI0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[10:10] = 0x00000001U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000400U
+ // .. SDI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. SPI0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. SPI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[15:15] = 0x00000000U
+ // .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. CAN0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. CAN1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. I2C0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[18:18] = 0x00000001U
+ // .. ==> MASK : 0x00040000U VAL : 0x00040000U
+ // .. I2C1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. UART0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. UART1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[21:21] = 0x00000001U
+ // .. ==> MASK : 0x00200000U VAL : 0x00200000U
+ // .. GPIO_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[22:22] = 0x00000001U
+ // .. ==> MASK : 0x00400000U VAL : 0x00400000U
+ // .. LQSPI_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[23:23] = 0x00000001U
+ // .. ==> MASK : 0x00800000U VAL : 0x00800000U
+ // .. SMC_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[24:24] = 0x00000001U
+ // .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // ..
+ EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01EC044DU),
+ // .. FINISH: CLOCK CONTROL SLCR REGISTERS
+ // .. START: THIS SHOULD BE BLANK
+ // .. FINISH: THIS SHOULD BE BLANK
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_ddr_init_data_3_0[] = {
+ // START: top
+ // .. START: DDR INITIALIZATION
+ // .. .. START: LOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0
+ // .. .. ==> 0XF8006000[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 0x1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U),
+ // .. .. FINISH: LOCK DDR
+ // .. .. reg_ddrc_t_rfc_nom_x32 = 0x81
+ // .. .. ==> 0XF8006004[11:0] = 0x00000081U
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000081U
+ // .. .. reserved_reg_ddrc_active_ranks = 0x1
+ // .. .. ==> 0XF8006004[13:12] = 0x00000001U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U
+ // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0
+ // .. .. ==> 0XF8006004[18:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006004, 0x0007FFFFU ,0x00001081U),
+ // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf
+ // .. .. ==> 0XF8006008[10:0] = 0x0000000FU
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU
+ // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf
+ // .. .. ==> 0XF8006008[21:11] = 0x0000000FU
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U
+ // .. .. reg_ddrc_hpr_xact_run_length = 0xf
+ // .. .. ==> 0XF8006008[25:22] = 0x0000000FU
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU),
+ // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF800600C[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2
+ // .. .. ==> 0XF800600C[21:11] = 0x00000002U
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U
+ // .. .. reg_ddrc_lpr_xact_run_length = 0x8
+ // .. .. ==> 0XF800600C[25:22] = 0x00000008U
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U),
+ // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF8006010[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_w_xact_run_length = 0x8
+ // .. .. ==> 0XF8006010[14:11] = 0x00000008U
+ // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U
+ // .. .. reg_ddrc_w_max_starve_x32 = 0x2
+ // .. .. ==> 0XF8006010[25:15] = 0x00000002U
+ // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U),
+ // .. .. reg_ddrc_t_rc = 0x1a
+ // .. .. ==> 0XF8006014[5:0] = 0x0000001AU
+ // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU
+ // .. .. reg_ddrc_t_rfc_min = 0xa0
+ // .. .. ==> 0XF8006014[13:6] = 0x000000A0U
+ // .. .. ==> MASK : 0x00003FC0U VAL : 0x00002800U
+ // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10
+ // .. .. ==> 0XF8006014[20:14] = 0x00000010U
+ // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004281AU),
+ // .. .. reg_ddrc_wr2pre = 0x12
+ // .. .. ==> 0XF8006018[4:0] = 0x00000012U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U
+ // .. .. reg_ddrc_powerdown_to_x32 = 0x6
+ // .. .. ==> 0XF8006018[9:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_t_faw = 0x16
+ // .. .. ==> 0XF8006018[15:10] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005800U
+ // .. .. reg_ddrc_t_ras_max = 0x24
+ // .. .. ==> 0XF8006018[21:16] = 0x00000024U
+ // .. .. ==> MASK : 0x003F0000U VAL : 0x00240000U
+ // .. .. reg_ddrc_t_ras_min = 0x13
+ // .. .. ==> 0XF8006018[26:22] = 0x00000013U
+ // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U
+ // .. .. reg_ddrc_t_cke = 0x4
+ // .. .. ==> 0XF8006018[31:28] = 0x00000004U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E458D2U),
+ // .. .. reg_ddrc_write_latency = 0x5
+ // .. .. ==> 0XF800601C[4:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U
+ // .. .. reg_ddrc_rd2wr = 0x7
+ // .. .. ==> 0XF800601C[9:5] = 0x00000007U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U
+ // .. .. reg_ddrc_wr2rd = 0xe
+ // .. .. ==> 0XF800601C[14:10] = 0x0000000EU
+ // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U
+ // .. .. reg_ddrc_t_xp = 0x4
+ // .. .. ==> 0XF800601C[19:15] = 0x00000004U
+ // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U
+ // .. .. reg_ddrc_pad_pd = 0x0
+ // .. .. ==> 0XF800601C[22:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd2pre = 0x4
+ // .. .. ==> 0XF800601C[27:23] = 0x00000004U
+ // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U
+ // .. .. reg_ddrc_t_rcd = 0x7
+ // .. .. ==> 0XF800601C[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U),
+ // .. .. reg_ddrc_t_ccd = 0x4
+ // .. .. ==> 0XF8006020[4:2] = 0x00000004U
+ // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U
+ // .. .. reg_ddrc_t_rrd = 0x6
+ // .. .. ==> 0XF8006020[7:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_refresh_margin = 0x2
+ // .. .. ==> 0XF8006020[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. reg_ddrc_t_rp = 0x7
+ // .. .. ==> 0XF8006020[15:12] = 0x00000007U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U
+ // .. .. reg_ddrc_refresh_to_x32 = 0x8
+ // .. .. ==> 0XF8006020[20:16] = 0x00000008U
+ // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U
+ // .. .. reg_ddrc_mobile = 0x0
+ // .. .. ==> 0XF8006020[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. reg_ddrc_en_dfi_dram_clk_disable = 0x0
+ // .. .. ==> 0XF8006020[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. reg_ddrc_read_latency = 0x7
+ // .. .. ==> 0XF8006020[28:24] = 0x00000007U
+ // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U
+ // .. .. reg_phy_mode_ddr1_ddr2 = 0x1
+ // .. .. ==> 0XF8006020[29:29] = 0x00000001U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U
+ // .. .. reg_ddrc_dis_pad_pd = 0x0
+ // .. .. ==> 0XF8006020[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006020, 0x7FDFFFFCU ,0x270872D0U),
+ // .. .. reg_ddrc_en_2t_timing_mode = 0x0
+ // .. .. ==> 0XF8006024[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_prefer_write = 0x0
+ // .. .. ==> 0XF8006024[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_wr = 0x0
+ // .. .. ==> 0XF8006024[6:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_addr = 0x0
+ // .. .. ==> 0XF8006024[8:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_data = 0x0
+ // .. .. ==> 0XF8006024[24:9] = 0x00000000U
+ // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U
+ // .. .. ddrc_reg_mr_wr_busy = 0x0
+ // .. .. ==> 0XF8006024[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_type = 0x0
+ // .. .. ==> 0XF8006024[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_rdata_valid = 0x0
+ // .. .. ==> 0XF8006024[27:27] = 0x00000000U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006024, 0x0FFFFFC3U ,0x00000000U),
+ // .. .. reg_ddrc_final_wait_x32 = 0x7
+ // .. .. ==> 0XF8006028[6:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U
+ // .. .. reg_ddrc_pre_ocd_x32 = 0x0
+ // .. .. ==> 0XF8006028[10:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U
+ // .. .. reg_ddrc_t_mrd = 0x4
+ // .. .. ==> 0XF8006028[13:11] = 0x00000004U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U),
+ // .. .. reg_ddrc_emr2 = 0x8
+ // .. .. ==> 0XF800602C[15:0] = 0x00000008U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U
+ // .. .. reg_ddrc_emr3 = 0x0
+ // .. .. ==> 0XF800602C[31:16] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U),
+ // .. .. reg_ddrc_mr = 0x930
+ // .. .. ==> 0XF8006030[15:0] = 0x00000930U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U
+ // .. .. reg_ddrc_emr = 0x4
+ // .. .. ==> 0XF8006030[31:16] = 0x00000004U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U),
+ // .. .. reg_ddrc_burst_rdwr = 0x4
+ // .. .. ==> 0XF8006034[3:0] = 0x00000004U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U
+ // .. .. reg_ddrc_pre_cke_x1024 = 0x105
+ // .. .. ==> 0XF8006034[13:4] = 0x00000105U
+ // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001050U
+ // .. .. reg_ddrc_post_cke_x1024 = 0x1
+ // .. .. ==> 0XF8006034[25:16] = 0x00000001U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U
+ // .. .. reg_ddrc_burstchop = 0x0
+ // .. .. ==> 0XF8006034[28:28] = 0x00000000U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011054U),
+ // .. .. reg_ddrc_force_low_pri_n = 0x0
+ // .. .. ==> 0XF8006038[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_dq = 0x0
+ // .. .. ==> 0XF8006038[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006038, 0x00000003U ,0x00000000U),
+ // .. .. reg_ddrc_addrmap_bank_b0 = 0x7
+ // .. .. ==> 0XF800603C[3:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U
+ // .. .. reg_ddrc_addrmap_bank_b1 = 0x7
+ // .. .. ==> 0XF800603C[7:4] = 0x00000007U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U
+ // .. .. reg_ddrc_addrmap_bank_b2 = 0x7
+ // .. .. ==> 0XF800603C[11:8] = 0x00000007U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U
+ // .. .. reg_ddrc_addrmap_col_b5 = 0x0
+ // .. .. ==> 0XF800603C[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b6 = 0x0
+ // .. .. ==> 0XF800603C[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U),
+ // .. .. reg_ddrc_addrmap_col_b2 = 0x0
+ // .. .. ==> 0XF8006040[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b3 = 0x0
+ // .. .. ==> 0XF8006040[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b4 = 0x0
+ // .. .. ==> 0XF8006040[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b7 = 0x0
+ // .. .. ==> 0XF8006040[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b8 = 0x0
+ // .. .. ==> 0XF8006040[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b9 = 0xf
+ // .. .. ==> 0XF8006040[23:20] = 0x0000000FU
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U
+ // .. .. reg_ddrc_addrmap_col_b10 = 0xf
+ // .. .. ==> 0XF8006040[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. .. reg_ddrc_addrmap_col_b11 = 0xf
+ // .. .. ==> 0XF8006040[31:28] = 0x0000000FU
+ // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U),
+ // .. .. reg_ddrc_addrmap_row_b0 = 0x6
+ // .. .. ==> 0XF8006044[3:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U
+ // .. .. reg_ddrc_addrmap_row_b1 = 0x6
+ // .. .. ==> 0XF8006044[7:4] = 0x00000006U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U
+ // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6
+ // .. .. ==> 0XF8006044[11:8] = 0x00000006U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U
+ // .. .. reg_ddrc_addrmap_row_b12 = 0x6
+ // .. .. ==> 0XF8006044[15:12] = 0x00000006U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U
+ // .. .. reg_ddrc_addrmap_row_b13 = 0x6
+ // .. .. ==> 0XF8006044[19:16] = 0x00000006U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U
+ // .. .. reg_ddrc_addrmap_row_b14 = 0x6
+ // .. .. ==> 0XF8006044[23:20] = 0x00000006U
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00600000U
+ // .. .. reg_ddrc_addrmap_row_b15 = 0xf
+ // .. .. ==> 0XF8006044[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0F666666U),
+ // .. .. reg_phy_rd_local_odt = 0x0
+ // .. .. ==> 0XF8006048[13:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U
+ // .. .. reg_phy_wr_local_odt = 0x3
+ // .. .. ==> 0XF8006048[15:14] = 0x00000003U
+ // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U
+ // .. .. reg_phy_idle_local_odt = 0x3
+ // .. .. ==> 0XF8006048[17:16] = 0x00000003U
+ // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006048, 0x0003F000U ,0x0003C000U),
+ // .. .. reg_phy_rd_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_wr_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_phy_rdc_we_to_re_delay = 0x8
+ // .. .. ==> 0XF8006050[11:8] = 0x00000008U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U
+ // .. .. reg_phy_rdc_fifo_rst_disable = 0x0
+ // .. .. ==> 0XF8006050[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_phy_use_fixed_re = 0x1
+ // .. .. ==> 0XF8006050[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0
+ // .. .. ==> 0XF8006050[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0
+ // .. .. ==> 0XF8006050[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_phy_clk_stall_level = 0x0
+ // .. .. ==> 0XF8006050[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[27:24] = 0x00000007U
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U
+ // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U),
+ // .. .. reg_ddrc_dis_dll_calib = 0x0
+ // .. .. ==> 0XF8006058[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006058, 0x00010000U ,0x00000000U),
+ // .. .. reg_ddrc_rd_odt_delay = 0x3
+ // .. .. ==> 0XF800605C[3:0] = 0x00000003U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U
+ // .. .. reg_ddrc_wr_odt_delay = 0x0
+ // .. .. ==> 0XF800605C[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd_odt_hold = 0x0
+ // .. .. ==> 0XF800605C[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_wr_odt_hold = 0x5
+ // .. .. ==> 0XF800605C[15:12] = 0x00000005U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U),
+ // .. .. reg_ddrc_pageclose = 0x0
+ // .. .. ==> 0XF8006060[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_lpr_num_entries = 0x1f
+ // .. .. ==> 0XF8006060[6:1] = 0x0000001FU
+ // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU
+ // .. .. reg_ddrc_auto_pre_en = 0x0
+ // .. .. ==> 0XF8006060[7:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. .. reg_ddrc_refresh_update_level = 0x0
+ // .. .. ==> 0XF8006060[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_wc = 0x0
+ // .. .. ==> 0XF8006060[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_collision_page_opt = 0x0
+ // .. .. ==> 0XF8006060[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_ddrc_selfref_en = 0x0
+ // .. .. ==> 0XF8006060[12:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU),
+ // .. .. reg_ddrc_go2critical_hysteresis = 0x0
+ // .. .. ==> 0XF8006064[12:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U
+ // .. .. reg_arb_go2critical_en = 0x1
+ // .. .. ==> 0XF8006064[17:17] = 0x00000001U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U),
+ // .. .. reg_ddrc_wrlvl_ww = 0x41
+ // .. .. ==> 0XF8006068[7:0] = 0x00000041U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U
+ // .. .. reg_ddrc_rdlvl_rr = 0x41
+ // .. .. ==> 0XF8006068[15:8] = 0x00000041U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U
+ // .. .. reg_ddrc_dfi_t_wlmrd = 0x28
+ // .. .. ==> 0XF8006068[25:16] = 0x00000028U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U),
+ // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10
+ // .. .. ==> 0XF800606C[7:0] = 0x00000010U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U
+ // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16
+ // .. .. ==> 0XF800606C[15:8] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U
+ // .. ..
+ EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U),
+ // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1
+ // .. .. ==> 0XF8006078[3:0] = 0x00000001U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U
+ // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1
+ // .. .. ==> 0XF8006078[7:4] = 0x00000001U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U
+ // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1
+ // .. .. ==> 0XF8006078[11:8] = 0x00000001U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U
+ // .. .. reg_ddrc_t_cksre = 0x6
+ // .. .. ==> 0XF8006078[15:12] = 0x00000006U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U
+ // .. .. reg_ddrc_t_cksrx = 0x6
+ // .. .. ==> 0XF8006078[19:16] = 0x00000006U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U
+ // .. .. reg_ddrc_t_ckesr = 0x4
+ // .. .. ==> 0XF8006078[25:20] = 0x00000004U
+ // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U),
+ // .. .. reg_ddrc_t_ckpde = 0x2
+ // .. .. ==> 0XF800607C[3:0] = 0x00000002U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U
+ // .. .. reg_ddrc_t_ckpdx = 0x2
+ // .. .. ==> 0XF800607C[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. reg_ddrc_t_ckdpde = 0x2
+ // .. .. ==> 0XF800607C[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. reg_ddrc_t_ckdpdx = 0x2
+ // .. .. ==> 0XF800607C[15:12] = 0x00000002U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U
+ // .. .. reg_ddrc_t_ckcsx = 0x3
+ // .. .. ==> 0XF800607C[19:16] = 0x00000003U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U),
+ // .. .. reg_ddrc_dis_auto_zq = 0x0
+ // .. .. ==> 0XF80060A4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_ddr3 = 0x1
+ // .. .. ==> 0XF80060A4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. reg_ddrc_t_mod = 0x200
+ // .. .. ==> 0XF80060A4[11:2] = 0x00000200U
+ // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U
+ // .. .. reg_ddrc_t_zq_long_nop = 0x200
+ // .. .. ==> 0XF80060A4[21:12] = 0x00000200U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U
+ // .. .. reg_ddrc_t_zq_short_nop = 0x40
+ // .. .. ==> 0XF80060A4[31:22] = 0x00000040U
+ // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U),
+ // .. .. t_zq_short_interval_x1024 = 0xcb73
+ // .. .. ==> 0XF80060A8[19:0] = 0x0000CB73U
+ // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000CB73U
+ // .. .. dram_rstn_x1024 = 0x69
+ // .. .. ==> 0XF80060A8[27:20] = 0x00000069U
+ // .. .. ==> MASK : 0x0FF00000U VAL : 0x06900000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0690CB73U),
+ // .. .. deeppowerdown_en = 0x0
+ // .. .. ==> 0XF80060AC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. deeppowerdown_to_x1024 = 0xff
+ // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU
+ // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU
+ // .. ..
+ EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU),
+ // .. .. dfi_wrlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU
+ // .. .. dfi_rdlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U
+ // .. .. ddrc_reg_twrlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. ddrc_reg_trdlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dfi_wr_level_en = 0x1
+ // .. .. ==> 0XF80060B0[26:26] = 0x00000001U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF80060B0[27:27] = 0x00000001U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1
+ // .. .. ==> 0XF80060B0[28:28] = 0x00000001U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU),
+ // .. .. reg_ddrc_skip_ocd = 0x1
+ // .. .. ==> 0XF80060B4[9:9] = 0x00000001U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B4, 0x00000200U ,0x00000200U),
+ // .. .. reg_ddrc_dfi_t_rddata_en = 0x6
+ // .. .. ==> 0XF80060B8[4:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U
+ // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3
+ // .. .. ==> 0XF80060B8[14:5] = 0x00000003U
+ // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U
+ // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40
+ // .. .. ==> 0XF80060B8[24:15] = 0x00000040U
+ // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U),
+ // .. .. START: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000003U),
+ // .. .. FINISH: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U),
+ // .. .. CORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060C8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ECC_CORRECTED_BIT_NUM = 0x0
+ // .. .. ==> 0XF80060C8[7:1] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U),
+ // .. .. UNCORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060DC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U),
+ // .. .. STAT_NUM_CORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[15:8] = 0x00000000U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U
+ // .. .. STAT_NUM_UNCORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[7:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U),
+ // .. .. reg_ddrc_ecc_mode = 0x0
+ // .. .. ==> 0XF80060F4[2:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_scrub = 0x1
+ // .. .. ==> 0XF80060F4[3:3] = 0x00000001U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U),
+ // .. .. reg_phy_dif_on = 0x0
+ // .. .. ==> 0XF8006114[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_dif_off = 0x0
+ // .. .. ==> 0XF8006114[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006118[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006118[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006118[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006118[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006118, 0x7FFFFFCFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF800611C[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF800611C[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF800611C[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF800611C[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800611C, 0x7FFFFFCFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006120[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006120[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006120[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006120[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006120, 0x7FFFFFCFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006124[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006124[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006124[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006124[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006124, 0x7FFFFFCFU ,0x40000001U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF800612C[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb0
+ // .. .. ==> 0XF800612C[19:10] = 0x000000B0U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x0002C000U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF8006130[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb1
+ // .. .. ==> 0XF8006130[19:10] = 0x000000B1U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C400U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x0002C400U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006134[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbc
+ // .. .. ==> 0XF8006134[19:10] = 0x000000BCU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002F000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x0002F003U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006138[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbb
+ // .. .. ==> 0XF8006138[19:10] = 0x000000BBU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002EC00U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x0002EC03U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006140[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006140[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006140[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006144[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006144[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006144[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006148[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006148[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006148[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF800614C[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800614C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800614C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006154[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006154[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006154[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006158[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006158[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006158[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF800615C[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800615C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800615C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF8006160[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006160[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006160[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x105
+ // .. .. ==> 0XF8006168[10:0] = 0x00000105U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000105U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006168[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006168[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x00000105U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x106
+ // .. .. ==> 0XF800616C[10:0] = 0x00000106U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000106U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF800616C[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF800616C[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x00000106U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x111
+ // .. .. ==> 0XF8006170[10:0] = 0x00000111U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000111U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006170[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006170[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x00000111U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x110
+ // .. .. ==> 0XF8006174[10:0] = 0x00000110U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000110U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006174[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006174[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x00000110U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF800617C[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF800617C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF800617C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF8006180[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006180[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006180[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006184[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006184[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006184[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006188[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006188[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006188[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_bl2 = 0x0
+ // .. .. ==> 0XF8006190[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_at_spd_atpg = 0x0
+ // .. .. ==> 0XF8006190[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_bist_enable = 0x0
+ // .. .. ==> 0XF8006190[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_force_err = 0x0
+ // .. .. ==> 0XF8006190[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_bist_mode = 0x0
+ // .. .. ==> 0XF8006190[6:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. .. reg_phy_invert_clkout = 0x1
+ // .. .. ==> 0XF8006190[7:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. .. reg_phy_sel_logic = 0x0
+ // .. .. ==> 0XF8006190[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_ratio = 0x100
+ // .. .. ==> 0XF8006190[19:10] = 0x00000100U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U
+ // .. .. reg_phy_ctrl_slave_force = 0x0
+ // .. .. ==> 0XF8006190[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006190[27:21] = 0x00000000U
+ // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U
+ // .. .. reg_phy_lpddr = 0x0
+ // .. .. ==> 0XF8006190[29:29] = 0x00000000U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // .. .. reg_phy_cmd_latency = 0x0
+ // .. .. ==> 0XF8006190[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006190, 0x6FFFFEFEU ,0x00040080U),
+ // .. .. reg_phy_wr_rl_delay = 0x2
+ // .. .. ==> 0XF8006194[4:0] = 0x00000002U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U
+ // .. .. reg_phy_rd_rl_delay = 0x4
+ // .. .. ==> 0XF8006194[9:5] = 0x00000004U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U
+ // .. .. reg_phy_dll_lock_diff = 0xf
+ // .. .. ==> 0XF8006194[13:10] = 0x0000000FU
+ // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U
+ // .. .. reg_phy_use_wr_level = 0x1
+ // .. .. ==> 0XF8006194[14:14] = 0x00000001U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U
+ // .. .. reg_phy_use_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF8006194[15:15] = 0x00000001U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U
+ // .. .. reg_phy_use_rd_data_eye_level = 0x1
+ // .. .. ==> 0XF8006194[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_dis_calib_rst = 0x0
+ // .. .. ==> 0XF8006194[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006194[19:18] = 0x00000000U
+ // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U),
+ // .. .. reg_arb_page_addr_mask = 0x0
+ // .. .. ==> 0XF8006204[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006208[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006208, 0x000703FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF800620C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800620C, 0x000703FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006210[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006210, 0x000703FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006214[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006214, 0x000703FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006218[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF800621C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006220[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006224[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_ddrc_lpddr2 = 0x0
+ // .. .. ==> 0XF80062A8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_derate_enable = 0x0
+ // .. .. ==> 0XF80062A8[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr4_margin = 0x0
+ // .. .. ==> 0XF80062A8[11:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062A8, 0x00000FF5U ,0x00000000U),
+ // .. .. reg_ddrc_mr4_read_interval = 0x0
+ // .. .. ==> 0XF80062AC[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_ddrc_min_stable_clock_x1 = 0x5
+ // .. .. ==> 0XF80062B0[3:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U
+ // .. .. reg_ddrc_idle_after_reset_x32 = 0x12
+ // .. .. ==> 0XF80062B0[11:4] = 0x00000012U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U
+ // .. .. reg_ddrc_t_mrw = 0x5
+ // .. .. ==> 0XF80062B0[21:12] = 0x00000005U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U),
+ // .. .. reg_ddrc_max_auto_init_x1024 = 0xa8
+ // .. .. ==> 0XF80062B4[7:0] = 0x000000A8U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A8U
+ // .. .. reg_ddrc_dev_zqinit_x32 = 0x12
+ // .. .. ==> 0XF80062B4[17:8] = 0x00000012U
+ // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A8U),
+ // .. .. START: POLL ON DCI STATUS
+ // .. .. DONE = 1
+ // .. .. ==> 0XF8000B74[13:13] = 0x00000001U
+ // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKPOLL(0XF8000B74, 0x00002000U),
+ // .. .. FINISH: POLL ON DCI STATUS
+ // .. .. START: UNLOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0x1
+ // .. .. ==> 0XF8006000[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U),
+ // .. .. FINISH: UNLOCK DDR
+ // .. .. START: CHECK DDR STATUS
+ // .. .. ddrc_reg_operating_mode = 1
+ // .. .. ==> 0XF8006054[2:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U
+ // .. ..
+ EMIT_MASKPOLL(0XF8006054, 0x00000007U),
+ // .. .. FINISH: CHECK DDR STATUS
+ // .. FINISH: DDR INITIALIZATION
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_mio_init_data_3_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: OCM REMAPPING
+ // .. FINISH: OCM REMAPPING
+ // .. START: DDRIOB SETTINGS
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B40[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B40[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B40[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B40[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCI_TYPE = 0x0
+ // .. ==> 0XF8000B40[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B40[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B40[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B44[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B44[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B44[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B44[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCI_TYPE = 0x0
+ // .. ==> 0XF8000B44[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B44[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B44[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B48[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B48[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B48[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B48[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCI_TYPE = 0x3
+ // .. ==> 0XF8000B48[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B48[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B48[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B4C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B4C[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B4C[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B4C[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCI_TYPE = 0x3
+ // .. ==> 0XF8000B4C[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B4C[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B4C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B50[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B50[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B50[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B50[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCI_TYPE = 0x3
+ // .. ==> 0XF8000B50[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B50[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B50[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B54[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B54[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B54[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B54[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCI_TYPE = 0x3
+ // .. ==> 0XF8000B54[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B54[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B54[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U),
+ // .. reserved_INP_POWER = 0x0
+ // .. ==> 0XF8000B58[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B58[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE_B = 0x0
+ // .. ==> 0XF8000B58[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B58[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCI_TYPE = 0x0
+ // .. ==> 0XF8000B58[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B58[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B58[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U),
+ // .. reserved_DRIVE_P = 0x1c
+ // .. ==> 0XF8000B5C[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. reserved_DRIVE_N = 0xc
+ // .. ==> 0XF8000B5C[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. reserved_SLEW_P = 0x3
+ // .. ==> 0XF8000B5C[18:14] = 0x00000003U
+ // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U
+ // .. reserved_SLEW_N = 0x3
+ // .. ==> 0XF8000B5C[23:19] = 0x00000003U
+ // .. ==> MASK : 0x00F80000U VAL : 0x00180000U
+ // .. reserved_GTL = 0x0
+ // .. ==> 0XF8000B5C[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. reserved_RTERM = 0x0
+ // .. ==> 0XF8000B5C[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU),
+ // .. reserved_DRIVE_P = 0x1c
+ // .. ==> 0XF8000B60[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. reserved_DRIVE_N = 0xc
+ // .. ==> 0XF8000B60[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. reserved_SLEW_P = 0x6
+ // .. ==> 0XF8000B60[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. reserved_SLEW_N = 0x1f
+ // .. ==> 0XF8000B60[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. reserved_GTL = 0x0
+ // .. ==> 0XF8000B60[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. reserved_RTERM = 0x0
+ // .. ==> 0XF8000B60[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. reserved_DRIVE_P = 0x1c
+ // .. ==> 0XF8000B64[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. reserved_DRIVE_N = 0xc
+ // .. ==> 0XF8000B64[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. reserved_SLEW_P = 0x6
+ // .. ==> 0XF8000B64[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. reserved_SLEW_N = 0x1f
+ // .. ==> 0XF8000B64[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. reserved_GTL = 0x0
+ // .. ==> 0XF8000B64[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. reserved_RTERM = 0x0
+ // .. ==> 0XF8000B64[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. reserved_DRIVE_P = 0x1c
+ // .. ==> 0XF8000B68[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. reserved_DRIVE_N = 0xc
+ // .. ==> 0XF8000B68[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. reserved_SLEW_P = 0x6
+ // .. ==> 0XF8000B68[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. reserved_SLEW_N = 0x1f
+ // .. ==> 0XF8000B68[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. reserved_GTL = 0x0
+ // .. ==> 0XF8000B68[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. reserved_RTERM = 0x0
+ // .. ==> 0XF8000B68[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. VREF_INT_EN = 0x1
+ // .. ==> 0XF8000B6C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. VREF_SEL = 0x4
+ // .. ==> 0XF8000B6C[4:1] = 0x00000004U
+ // .. ==> MASK : 0x0000001EU VAL : 0x00000008U
+ // .. VREF_EXT_EN = 0x0
+ // .. ==> 0XF8000B6C[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. reserved_VREF_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[8:7] = 0x00000000U
+ // .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. REFIO_EN = 0x1
+ // .. ==> 0XF8000B6C[9:9] = 0x00000001U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. reserved_REFIO_TEST = 0x3
+ // .. ==> 0XF8000B6C[11:10] = 0x00000003U
+ // .. ==> MASK : 0x00000C00U VAL : 0x00000C00U
+ // .. reserved_REFIO_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. reserved_DRST_B_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. reserved_CKE_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000E09U),
+ // .. .. START: ASSERT RESET
+ // .. .. RESET = 1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000001U ,0x00000001U),
+ // .. .. FINISH: ASSERT RESET
+ // .. .. START: DEASSERT RESET
+ // .. .. RESET = 0
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reserved_VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U),
+ // .. .. FINISH: DEASSERT RESET
+ // .. .. RESET = 0x1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ENABLE = 0x1
+ // .. .. ==> 0XF8000B70[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. reserved_VRP_TRI = 0x0
+ // .. .. ==> 0XF8000B70[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reserved_VRN_TRI = 0x0
+ // .. .. ==> 0XF8000B70[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reserved_VRP_OUT = 0x0
+ // .. .. ==> 0XF8000B70[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reserved_VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. .. NREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[7:6] = 0x00000000U
+ // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. .. NREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[10:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U
+ // .. .. NREF_OPT4 = 0x1
+ // .. .. ==> 0XF8000B70[13:11] = 0x00000001U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U
+ // .. .. PREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[15:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0000C000U VAL : 0x00000000U
+ // .. .. PREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[19:17] = 0x00000000U
+ // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U
+ // .. .. UPDATE_CONTROL = 0x0
+ // .. .. ==> 0XF8000B70[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. reserved_INIT_COMPLETE = 0x0
+ // .. .. ==> 0XF8000B70[21:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. .. reserved_TST_CLK = 0x0
+ // .. .. ==> 0XF8000B70[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. reserved_TST_HLN = 0x0
+ // .. .. ==> 0XF8000B70[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. reserved_TST_HLP = 0x0
+ // .. .. ==> 0XF8000B70[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. reserved_TST_RST = 0x0
+ // .. .. ==> 0XF8000B70[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reserved_INT_DCI_EN = 0x0
+ // .. .. ==> 0XF8000B70[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x07FEFFFFU ,0x00000823U),
+ // .. FINISH: DDRIOB SETTINGS
+ // .. START: MIO PROGRAMMING
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000700[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000700[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000700[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000700[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000700[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000700[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000700[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000700[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000700[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000704[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000704[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000704[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000704[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000704[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000704[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000704[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000704[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000704[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000708[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000708[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000708[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000708[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000708[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000708[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000708[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000708[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000708[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800070C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800070C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800070C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800070C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800070C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800070C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800070C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800070C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800070C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000710[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000710[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000710[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000710[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000710[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000710[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000710[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000710[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000710[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000714[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000714[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000714[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000714[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000714[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000714[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000714[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000714[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000714[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000718[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000718[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000718[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000718[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000718[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000718[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000718[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000718[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000718[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800071C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800071C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800071C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800071C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800071C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800071C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800071C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800071C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800071C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000720[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000720[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000720[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000720[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000720[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000720[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000720[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000720[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000720[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000724[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000724[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000724[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000724[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000724[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000724[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000724[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000724[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000724[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000728[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000728[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000728[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000728[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000728[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000728[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000728[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000728[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000728[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800072C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800072C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800072C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800072C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800072C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800072C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800072C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800072C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800072C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000730[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000730[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000730[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000730[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000730[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000730[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000730[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000730[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000730[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000734[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000734[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000734[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000734[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000734[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000734[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000734[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000734[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000734[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000738[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000738[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000738[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000738[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000738[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000738[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000738[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000738[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000738[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800073C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800073C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800073C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800073C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800073C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800073C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800073C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800073C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800073C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000740[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000740[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000740[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000740[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000740[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000740[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000740[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000740[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000740[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000744[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000744[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000744[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000744[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000744[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000744[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000744[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000744[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000744[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000748[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000748[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000748[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000748[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000748[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000748[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000748[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000748[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000748[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800074C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800074C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800074C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800074C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800074C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800074C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800074C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800074C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800074C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000750[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000750[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000750[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000750[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000750[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000750[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000750[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000750[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000750[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000754[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000754[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000754[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000754[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000754[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000754[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000754[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000754[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000754[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000758[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000758[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000758[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000758[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000758[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000758[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000758[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000758[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000758[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800075C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800075C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800075C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800075C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800075C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800075C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800075C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800075C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800075C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000760[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000760[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000760[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000760[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000760[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000760[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000760[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000760[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000760[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000764[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000764[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000764[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000764[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000764[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000764[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000764[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000764[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000764[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000768[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000768[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000768[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000768[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000768[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000768[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000768[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000768[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000768[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800076C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800076C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800076C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800076C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800076C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800076C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800076C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800076C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800076C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000770[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000770[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000770[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000770[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000770[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000770[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000770[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000770[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000770[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000774[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000774[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000774[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000774[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000774[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000774[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000774[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000774[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000774[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000778[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000778[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000778[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000778[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000778[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000778[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000778[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000778[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000778[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800077C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800077C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800077C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800077C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800077C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800077C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800077C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800077C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800077C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000780[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000780[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000780[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000780[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000780[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000780[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000780[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000780[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000780[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000784[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000784[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000784[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000784[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000784[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000784[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000784[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000784[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000784[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000788[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000788[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000788[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000788[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000788[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000788[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000788[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000788[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000788[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800078C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800078C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800078C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800078C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800078C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800078C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800078C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800078C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800078C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000790[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000790[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000790[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000790[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000790[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000790[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000790[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000790[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000790[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000794[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000794[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000794[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000794[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000794[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000794[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000794[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000794[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000794[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000798[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000798[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000798[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000798[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000798[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000798[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000798[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000798[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000798[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800079C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800079C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800079C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800079C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800079C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800079C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800079C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800079C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800079C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A8[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A8[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A8[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A8[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A8[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007AC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007AC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007AC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007AC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007AC[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007AC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007AC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007AC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007AC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007B8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007B8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007BC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007BC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007BC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007BC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007BC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007BC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007BC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007BC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007BC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007BC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007C0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C0[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C4[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007C8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007CC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007CC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007CC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007CC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007CC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007CC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007CC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007CC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007CC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000280U),
+ // .. SDIO0_WP_SEL = 50
+ // .. ==> 0XF8000830[5:0] = 0x00000032U
+ // .. ==> MASK : 0x0000003FU VAL : 0x00000032U
+ // .. SDIO0_CD_SEL = 46
+ // .. ==> 0XF8000830[21:16] = 0x0000002EU
+ // .. ==> MASK : 0x003F0000U VAL : 0x002E0000U
+ // ..
+ EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002E0032U),
+ // .. FINISH: MIO PROGRAMMING
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_peripherals_init_data_3_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U),
+ // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // .. START: SRAM/NOR SET OPMODE
+ // .. FINISH: SRAM/NOR SET OPMODE
+ // .. START: UART REGISTERS
+ // .. BDIV = 0x6
+ // .. ==> 0XE0001034[7:0] = 0x00000006U
+ // .. ==> MASK : 0x000000FFU VAL : 0x00000006U
+ // ..
+ EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U),
+ // .. CD = 0x3e
+ // .. ==> 0XE0001018[15:0] = 0x0000003EU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000003EU
+ // ..
+ EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000003EU),
+ // .. STPBRK = 0x0
+ // .. ==> 0XE0001000[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. STTBRK = 0x0
+ // .. ==> 0XE0001000[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. RSTTO = 0x0
+ // .. ==> 0XE0001000[6:6] = 0x00000000U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. TXDIS = 0x0
+ // .. ==> 0XE0001000[5:5] = 0x00000000U
+ // .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. TXEN = 0x1
+ // .. ==> 0XE0001000[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. RXDIS = 0x0
+ // .. ==> 0XE0001000[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. RXEN = 0x1
+ // .. ==> 0XE0001000[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. TXRES = 0x1
+ // .. ==> 0XE0001000[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. RXRES = 0x1
+ // .. ==> 0XE0001000[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U),
+ // .. CHMODE = 0x0
+ // .. ==> 0XE0001004[9:8] = 0x00000000U
+ // .. ==> MASK : 0x00000300U VAL : 0x00000000U
+ // .. NBSTOP = 0x0
+ // .. ==> 0XE0001004[7:6] = 0x00000000U
+ // .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. PAR = 0x4
+ // .. ==> 0XE0001004[5:3] = 0x00000004U
+ // .. ==> MASK : 0x00000038U VAL : 0x00000020U
+ // .. CHRL = 0x0
+ // .. ==> 0XE0001004[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. CLKS = 0x0
+ // .. ==> 0XE0001004[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XE0001004, 0x000003FFU ,0x00000020U),
+ // .. FINISH: UART REGISTERS
+ // .. START: QSPI REGISTERS
+ // .. Holdb_dr = 1
+ // .. ==> 0XE000D000[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // ..
+ EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U),
+ // .. FINISH: QSPI REGISTERS
+ // .. START: PL POWER ON RESET REGISTERS
+ // .. PCFG_POR_CNT_4K = 0
+ // .. ==> 0XF8007000[29:29] = 0x00000000U
+ // .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U),
+ // .. FINISH: PL POWER ON RESET REGISTERS
+ // .. START: SMC TIMING CALCULATION REGISTER UPDATE
+ // .. .. START: NAND SET CYCLE
+ // .. .. FINISH: NAND SET CYCLE
+ // .. .. START: OPMODE
+ // .. .. FINISH: OPMODE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: SRAM/NOR CS0 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS0 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS0 BASE ADDRESS
+ // .. .. FINISH: NOR CS0 BASE ADDRESS
+ // .. .. START: SRAM/NOR CS1 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS1 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS1 BASE ADDRESS
+ // .. .. FINISH: NOR CS1 BASE ADDRESS
+ // .. .. START: USB RESET
+ // .. .. .. START: USB0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. DIRECTION_0 = 0x80
+ // .. .. .. .. ==> 0XE000A204[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A204, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. OP_ENABLE_0 = 0x80
+ // .. .. .. .. ==> 0XE000A208[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A208, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x0
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000000U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0000U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB0 RESET
+ // .. .. .. START: USB1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB1 RESET
+ // .. .. FINISH: USB RESET
+ // .. .. START: ENET RESET
+ // .. .. .. START: ENET0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET0 RESET
+ // .. .. .. START: ENET1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET1 RESET
+ // .. .. FINISH: ENET RESET
+ // .. .. START: I2C RESET
+ // .. .. .. START: I2C0 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C0 RESET
+ // .. .. .. START: I2C1 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C1 RESET
+ // .. .. FINISH: I2C RESET
+ // .. .. START: NOR CHIP SELECT
+ // .. .. .. START: DIR MODE BANK 0
+ // .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. FINISH: NOR CHIP SELECT
+ // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_post_config_3_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: ENABLING LEVEL SHIFTER
+ // .. USER_LVL_INP_EN_0 = 1
+ // .. ==> 0XF8000900[3:3] = 0x00000001U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. USER_LVL_OUT_EN_0 = 1
+ // .. ==> 0XF8000900[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. USER_LVL_INP_EN_1 = 1
+ // .. ==> 0XF8000900[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. USER_LVL_OUT_EN_1 = 1
+ // .. ==> 0XF8000900[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU),
+ // .. FINISH: ENABLING LEVEL SHIFTER
+ // .. START: FPGA RESETS TO 0
+ // .. reserved_3 = 0
+ // .. ==> 0XF8000240[31:25] = 0x00000000U
+ // .. ==> MASK : 0xFE000000U VAL : 0x00000000U
+ // .. reserved_FPGA_ACP_RST = 0
+ // .. ==> 0XF8000240[24:24] = 0x00000000U
+ // .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. reserved_FPGA_AXDS3_RST = 0
+ // .. ==> 0XF8000240[23:23] = 0x00000000U
+ // .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. reserved_FPGA_AXDS2_RST = 0
+ // .. ==> 0XF8000240[22:22] = 0x00000000U
+ // .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. reserved_FPGA_AXDS1_RST = 0
+ // .. ==> 0XF8000240[21:21] = 0x00000000U
+ // .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. reserved_FPGA_AXDS0_RST = 0
+ // .. ==> 0XF8000240[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. reserved_2 = 0
+ // .. ==> 0XF8000240[19:18] = 0x00000000U
+ // .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. reserved_FSSW1_FPGA_RST = 0
+ // .. ==> 0XF8000240[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. reserved_FSSW0_FPGA_RST = 0
+ // .. ==> 0XF8000240[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. reserved_1 = 0
+ // .. ==> 0XF8000240[15:14] = 0x00000000U
+ // .. ==> MASK : 0x0000C000U VAL : 0x00000000U
+ // .. reserved_FPGA_FMSW1_RST = 0
+ // .. ==> 0XF8000240[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. reserved_FPGA_FMSW0_RST = 0
+ // .. ==> 0XF8000240[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. reserved_FPGA_DMA3_RST = 0
+ // .. ==> 0XF8000240[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. reserved_FPGA_DMA2_RST = 0
+ // .. ==> 0XF8000240[10:10] = 0x00000000U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. reserved_FPGA_DMA1_RST = 0
+ // .. ==> 0XF8000240[9:9] = 0x00000000U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. reserved_FPGA_DMA0_RST = 0
+ // .. ==> 0XF8000240[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. reserved = 0
+ // .. ==> 0XF8000240[7:4] = 0x00000000U
+ // .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. FPGA3_OUT_RST = 0
+ // .. ==> 0XF8000240[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. FPGA2_OUT_RST = 0
+ // .. ==> 0XF8000240[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. FPGA1_OUT_RST = 0
+ // .. ==> 0XF8000240[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. FPGA0_OUT_RST = 0
+ // .. ==> 0XF8000240[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U),
+ // .. FINISH: FPGA RESETS TO 0
+ // .. START: AFI REGISTERS
+ // .. .. START: AFI0 REGISTERS
+ // .. .. FINISH: AFI0 REGISTERS
+ // .. .. START: AFI1 REGISTERS
+ // .. .. FINISH: AFI1 REGISTERS
+ // .. .. START: AFI2 REGISTERS
+ // .. .. FINISH: AFI2 REGISTERS
+ // .. .. START: AFI3 REGISTERS
+ // .. .. FINISH: AFI3 REGISTERS
+ // .. FINISH: AFI REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_debug_3_0[] = {
+ // START: top
+ // .. START: CROSS TRIGGER CONFIGURATIONS
+ // .. .. START: UNLOCKING CTI REGISTERS
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8898FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8899FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8809FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. FINISH: UNLOCKING CTI REGISTERS
+ // .. .. START: ENABLING CTI MODULES AND CHANNELS
+ // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS
+ // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. FINISH: CROSS TRIGGER CONFIGURATIONS
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_pll_init_data_2_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: PLL SLCR REGISTERS
+ // .. .. START: ARM PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000110[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000110[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0xfa
+ // .. .. ==> 0XF8000110[21:12] = 0x000000FAU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x000FA000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x000FA220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x28
+ // .. .. .. ==> 0XF8000100[18:12] = 0x00000028U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00028000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x00028000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. ARM_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000001U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. SRCSEL = 0x0
+ // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. .. .. DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U
+ // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U
+ // .. .. .. CPU_6OR4XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U
+ // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // .. .. .. CPU_3OR2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U
+ // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U
+ // .. .. .. CPU_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U
+ // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. .. CPU_1XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U
+ // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. .. CPU_PERI_CLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U
+ // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U),
+ // .. .. FINISH: ARM PLL INIT
+ // .. .. START: DDR PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000114[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000114[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x12c
+ // .. .. ==> 0XF8000114[21:12] = 0x0000012CU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x0012C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x0012C220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x20
+ // .. .. .. ==> 0XF8000104[18:12] = 0x00000020U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00020000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00020000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. DDR_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000002U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. DDR_3XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. .. DDR_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. .. DDR_3XCLK_DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U
+ // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U
+ // .. .. .. DDR_2XCLK_DIVISOR = 0x3
+ // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U
+ // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U),
+ // .. .. FINISH: DDR PLL INIT
+ // .. .. START: IO PLL INIT
+ // .. .. PLL_RES = 0xc
+ // .. .. ==> 0XF8000118[7:4] = 0x0000000CU
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000118[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x145
+ // .. .. ==> 0XF8000118[21:12] = 0x00000145U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00145000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001452C0U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x1e
+ // .. .. .. ==> 0XF8000108[18:12] = 0x0000001EU
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001E000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x0001E000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. IO_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000004U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. FINISH: IO PLL INIT
+ // .. FINISH: PLL SLCR REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_clock_init_data_2_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: CLOCK CONTROL SLCR REGISTERS
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000128[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. DIVISOR0 = 0x23
+ // .. ==> 0XF8000128[13:8] = 0x00000023U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00002300U
+ // .. DIVISOR1 = 0x3
+ // .. ==> 0XF8000128[25:20] = 0x00000003U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00300000U
+ // ..
+ EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00302301U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000138[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000138[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000140[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000140[6:4] = 0x00000000U
+ // .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. DIVISOR = 0x8
+ // .. ==> 0XF8000140[13:8] = 0x00000008U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000800U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000140[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF800014C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF800014C[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF800014C[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U),
+ // .. CLKACT0 = 0x1
+ // .. ==> 0XF8000150[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. CLKACT1 = 0x0
+ // .. ==> 0XF8000150[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000150[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000150[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U),
+ // .. CLKACT0 = 0x0
+ // .. ==> 0XF8000154[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. CLKACT1 = 0x1
+ // .. ==> 0XF8000154[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000154[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000154[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00001402U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000168[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000168[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF8000168[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000170[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000170[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000170[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000180[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000180[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000180[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000180, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000190[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x1e
+ // .. ==> 0XF8000190[13:8] = 0x0000001EU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001E00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000190[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000190, 0x03F03F30U ,0x00101E00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF80001A0[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x14
+ // .. ==> 0XF80001A0[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF80001A0[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF80001A0, 0x03F03F30U ,0x00101400U),
+ // .. CLK_621_TRUE = 0x1
+ // .. ==> 0XF80001C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U),
+ // .. DMA_CPU_2XCLKACT = 0x1
+ // .. ==> 0XF800012C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. USB0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. USB1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[3:3] = 0x00000001U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. GEM0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[6:6] = 0x00000001U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000040U
+ // .. GEM1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. SDI0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[10:10] = 0x00000001U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000400U
+ // .. SDI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. SPI0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. SPI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[15:15] = 0x00000000U
+ // .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. CAN0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. CAN1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. I2C0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[18:18] = 0x00000001U
+ // .. ==> MASK : 0x00040000U VAL : 0x00040000U
+ // .. I2C1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. UART0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. UART1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[21:21] = 0x00000001U
+ // .. ==> MASK : 0x00200000U VAL : 0x00200000U
+ // .. GPIO_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[22:22] = 0x00000001U
+ // .. ==> MASK : 0x00400000U VAL : 0x00400000U
+ // .. LQSPI_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[23:23] = 0x00000001U
+ // .. ==> MASK : 0x00800000U VAL : 0x00800000U
+ // .. SMC_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[24:24] = 0x00000001U
+ // .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // ..
+ EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01EC044DU),
+ // .. FINISH: CLOCK CONTROL SLCR REGISTERS
+ // .. START: THIS SHOULD BE BLANK
+ // .. FINISH: THIS SHOULD BE BLANK
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_ddr_init_data_2_0[] = {
+ // START: top
+ // .. START: DDR INITIALIZATION
+ // .. .. START: LOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0
+ // .. .. ==> 0XF8006000[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 0x1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U),
+ // .. .. FINISH: LOCK DDR
+ // .. .. reg_ddrc_t_rfc_nom_x32 = 0x81
+ // .. .. ==> 0XF8006004[11:0] = 0x00000081U
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000081U
+ // .. .. reg_ddrc_active_ranks = 0x1
+ // .. .. ==> 0XF8006004[13:12] = 0x00000001U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U
+ // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0
+ // .. .. ==> 0XF8006004[18:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U
+ // .. .. reg_ddrc_wr_odt_block = 0x1
+ // .. .. ==> 0XF8006004[20:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U
+ // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0
+ // .. .. ==> 0XF8006004[21:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0
+ // .. .. ==> 0XF8006004[26:22] = 0x00000000U
+ // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_open_bank = 0x0
+ // .. .. ==> 0XF8006004[27:27] = 0x00000000U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_4bank_ram = 0x0
+ // .. .. ==> 0XF8006004[28:28] = 0x00000000U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x00081081U),
+ // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf
+ // .. .. ==> 0XF8006008[10:0] = 0x0000000FU
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU
+ // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf
+ // .. .. ==> 0XF8006008[21:11] = 0x0000000FU
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U
+ // .. .. reg_ddrc_hpr_xact_run_length = 0xf
+ // .. .. ==> 0XF8006008[25:22] = 0x0000000FU
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU),
+ // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF800600C[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2
+ // .. .. ==> 0XF800600C[21:11] = 0x00000002U
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U
+ // .. .. reg_ddrc_lpr_xact_run_length = 0x8
+ // .. .. ==> 0XF800600C[25:22] = 0x00000008U
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U),
+ // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF8006010[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_w_xact_run_length = 0x8
+ // .. .. ==> 0XF8006010[14:11] = 0x00000008U
+ // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U
+ // .. .. reg_ddrc_w_max_starve_x32 = 0x2
+ // .. .. ==> 0XF8006010[25:15] = 0x00000002U
+ // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U),
+ // .. .. reg_ddrc_t_rc = 0x1a
+ // .. .. ==> 0XF8006014[5:0] = 0x0000001AU
+ // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU
+ // .. .. reg_ddrc_t_rfc_min = 0xa0
+ // .. .. ==> 0XF8006014[13:6] = 0x000000A0U
+ // .. .. ==> MASK : 0x00003FC0U VAL : 0x00002800U
+ // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10
+ // .. .. ==> 0XF8006014[20:14] = 0x00000010U
+ // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004281AU),
+ // .. .. reg_ddrc_wr2pre = 0x12
+ // .. .. ==> 0XF8006018[4:0] = 0x00000012U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U
+ // .. .. reg_ddrc_powerdown_to_x32 = 0x6
+ // .. .. ==> 0XF8006018[9:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_t_faw = 0x16
+ // .. .. ==> 0XF8006018[15:10] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005800U
+ // .. .. reg_ddrc_t_ras_max = 0x24
+ // .. .. ==> 0XF8006018[21:16] = 0x00000024U
+ // .. .. ==> MASK : 0x003F0000U VAL : 0x00240000U
+ // .. .. reg_ddrc_t_ras_min = 0x13
+ // .. .. ==> 0XF8006018[26:22] = 0x00000013U
+ // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U
+ // .. .. reg_ddrc_t_cke = 0x4
+ // .. .. ==> 0XF8006018[31:28] = 0x00000004U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E458D2U),
+ // .. .. reg_ddrc_write_latency = 0x5
+ // .. .. ==> 0XF800601C[4:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U
+ // .. .. reg_ddrc_rd2wr = 0x7
+ // .. .. ==> 0XF800601C[9:5] = 0x00000007U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U
+ // .. .. reg_ddrc_wr2rd = 0xe
+ // .. .. ==> 0XF800601C[14:10] = 0x0000000EU
+ // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U
+ // .. .. reg_ddrc_t_xp = 0x4
+ // .. .. ==> 0XF800601C[19:15] = 0x00000004U
+ // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U
+ // .. .. reg_ddrc_pad_pd = 0x0
+ // .. .. ==> 0XF800601C[22:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd2pre = 0x4
+ // .. .. ==> 0XF800601C[27:23] = 0x00000004U
+ // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U
+ // .. .. reg_ddrc_t_rcd = 0x7
+ // .. .. ==> 0XF800601C[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U),
+ // .. .. reg_ddrc_t_ccd = 0x4
+ // .. .. ==> 0XF8006020[4:2] = 0x00000004U
+ // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U
+ // .. .. reg_ddrc_t_rrd = 0x6
+ // .. .. ==> 0XF8006020[7:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_refresh_margin = 0x2
+ // .. .. ==> 0XF8006020[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. reg_ddrc_t_rp = 0x7
+ // .. .. ==> 0XF8006020[15:12] = 0x00000007U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U
+ // .. .. reg_ddrc_refresh_to_x32 = 0x8
+ // .. .. ==> 0XF8006020[20:16] = 0x00000008U
+ // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U
+ // .. .. reg_ddrc_sdram = 0x1
+ // .. .. ==> 0XF8006020[21:21] = 0x00000001U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U
+ // .. .. reg_ddrc_mobile = 0x0
+ // .. .. ==> 0XF8006020[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. reg_ddrc_clock_stop_en = 0x0
+ // .. .. ==> 0XF8006020[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. reg_ddrc_read_latency = 0x7
+ // .. .. ==> 0XF8006020[28:24] = 0x00000007U
+ // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U
+ // .. .. reg_phy_mode_ddr1_ddr2 = 0x1
+ // .. .. ==> 0XF8006020[29:29] = 0x00000001U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U
+ // .. .. reg_ddrc_dis_pad_pd = 0x0
+ // .. .. ==> 0XF8006020[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_loopback = 0x0
+ // .. .. ==> 0XF8006020[31:31] = 0x00000000U
+ // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U),
+ // .. .. reg_ddrc_en_2t_timing_mode = 0x0
+ // .. .. ==> 0XF8006024[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_prefer_write = 0x0
+ // .. .. ==> 0XF8006024[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_max_rank_rd = 0xf
+ // .. .. ==> 0XF8006024[5:2] = 0x0000000FU
+ // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU
+ // .. .. reg_ddrc_mr_wr = 0x0
+ // .. .. ==> 0XF8006024[6:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_addr = 0x0
+ // .. .. ==> 0XF8006024[8:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_data = 0x0
+ // .. .. ==> 0XF8006024[24:9] = 0x00000000U
+ // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U
+ // .. .. ddrc_reg_mr_wr_busy = 0x0
+ // .. .. ==> 0XF8006024[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_type = 0x0
+ // .. .. ==> 0XF8006024[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_rdata_valid = 0x0
+ // .. .. ==> 0XF8006024[27:27] = 0x00000000U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU),
+ // .. .. reg_ddrc_final_wait_x32 = 0x7
+ // .. .. ==> 0XF8006028[6:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U
+ // .. .. reg_ddrc_pre_ocd_x32 = 0x0
+ // .. .. ==> 0XF8006028[10:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U
+ // .. .. reg_ddrc_t_mrd = 0x4
+ // .. .. ==> 0XF8006028[13:11] = 0x00000004U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U),
+ // .. .. reg_ddrc_emr2 = 0x8
+ // .. .. ==> 0XF800602C[15:0] = 0x00000008U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U
+ // .. .. reg_ddrc_emr3 = 0x0
+ // .. .. ==> 0XF800602C[31:16] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U),
+ // .. .. reg_ddrc_mr = 0x930
+ // .. .. ==> 0XF8006030[15:0] = 0x00000930U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U
+ // .. .. reg_ddrc_emr = 0x4
+ // .. .. ==> 0XF8006030[31:16] = 0x00000004U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U),
+ // .. .. reg_ddrc_burst_rdwr = 0x4
+ // .. .. ==> 0XF8006034[3:0] = 0x00000004U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U
+ // .. .. reg_ddrc_pre_cke_x1024 = 0x105
+ // .. .. ==> 0XF8006034[13:4] = 0x00000105U
+ // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001050U
+ // .. .. reg_ddrc_post_cke_x1024 = 0x1
+ // .. .. ==> 0XF8006034[25:16] = 0x00000001U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U
+ // .. .. reg_ddrc_burstchop = 0x0
+ // .. .. ==> 0XF8006034[28:28] = 0x00000000U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011054U),
+ // .. .. reg_ddrc_force_low_pri_n = 0x0
+ // .. .. ==> 0XF8006038[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_dq = 0x0
+ // .. .. ==> 0XF8006038[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_debug_mode = 0x0
+ // .. .. ==> 0XF8006038[6:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. .. reg_phy_wr_level_start = 0x0
+ // .. .. ==> 0XF8006038[7:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. .. reg_phy_rd_level_start = 0x0
+ // .. .. ==> 0XF8006038[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_phy_dq0_wait_t = 0x0
+ // .. .. ==> 0XF8006038[12:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U),
+ // .. .. reg_ddrc_addrmap_bank_b0 = 0x7
+ // .. .. ==> 0XF800603C[3:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U
+ // .. .. reg_ddrc_addrmap_bank_b1 = 0x7
+ // .. .. ==> 0XF800603C[7:4] = 0x00000007U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U
+ // .. .. reg_ddrc_addrmap_bank_b2 = 0x7
+ // .. .. ==> 0XF800603C[11:8] = 0x00000007U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U
+ // .. .. reg_ddrc_addrmap_col_b5 = 0x0
+ // .. .. ==> 0XF800603C[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b6 = 0x0
+ // .. .. ==> 0XF800603C[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U),
+ // .. .. reg_ddrc_addrmap_col_b2 = 0x0
+ // .. .. ==> 0XF8006040[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b3 = 0x0
+ // .. .. ==> 0XF8006040[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b4 = 0x0
+ // .. .. ==> 0XF8006040[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b7 = 0x0
+ // .. .. ==> 0XF8006040[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b8 = 0x0
+ // .. .. ==> 0XF8006040[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b9 = 0xf
+ // .. .. ==> 0XF8006040[23:20] = 0x0000000FU
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U
+ // .. .. reg_ddrc_addrmap_col_b10 = 0xf
+ // .. .. ==> 0XF8006040[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. .. reg_ddrc_addrmap_col_b11 = 0xf
+ // .. .. ==> 0XF8006040[31:28] = 0x0000000FU
+ // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U),
+ // .. .. reg_ddrc_addrmap_row_b0 = 0x6
+ // .. .. ==> 0XF8006044[3:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U
+ // .. .. reg_ddrc_addrmap_row_b1 = 0x6
+ // .. .. ==> 0XF8006044[7:4] = 0x00000006U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U
+ // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6
+ // .. .. ==> 0XF8006044[11:8] = 0x00000006U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U
+ // .. .. reg_ddrc_addrmap_row_b12 = 0x6
+ // .. .. ==> 0XF8006044[15:12] = 0x00000006U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U
+ // .. .. reg_ddrc_addrmap_row_b13 = 0x6
+ // .. .. ==> 0XF8006044[19:16] = 0x00000006U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U
+ // .. .. reg_ddrc_addrmap_row_b14 = 0x6
+ // .. .. ==> 0XF8006044[23:20] = 0x00000006U
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00600000U
+ // .. .. reg_ddrc_addrmap_row_b15 = 0xf
+ // .. .. ==> 0XF8006044[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0F666666U),
+ // .. .. reg_ddrc_rank0_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[2:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank0_wr_odt = 0x1
+ // .. .. ==> 0XF8006048[5:3] = 0x00000001U
+ // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U
+ // .. .. reg_ddrc_rank1_rd_odt = 0x1
+ // .. .. ==> 0XF8006048[8:6] = 0x00000001U
+ // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U
+ // .. .. reg_ddrc_rank1_wr_odt = 0x1
+ // .. .. ==> 0XF8006048[11:9] = 0x00000001U
+ // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. .. reg_phy_rd_local_odt = 0x0
+ // .. .. ==> 0XF8006048[13:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U
+ // .. .. reg_phy_wr_local_odt = 0x3
+ // .. .. ==> 0XF8006048[15:14] = 0x00000003U
+ // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U
+ // .. .. reg_phy_idle_local_odt = 0x3
+ // .. .. ==> 0XF8006048[17:16] = 0x00000003U
+ // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U
+ // .. .. reg_ddrc_rank2_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[20:18] = 0x00000000U
+ // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank2_wr_odt = 0x0
+ // .. .. ==> 0XF8006048[23:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank3_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[26:24] = 0x00000000U
+ // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank3_wr_odt = 0x0
+ // .. .. ==> 0XF8006048[29:27] = 0x00000000U
+ // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U),
+ // .. .. reg_phy_rd_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_wr_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_phy_rdc_we_to_re_delay = 0x8
+ // .. .. ==> 0XF8006050[11:8] = 0x00000008U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U
+ // .. .. reg_phy_rdc_fifo_rst_disable = 0x0
+ // .. .. ==> 0XF8006050[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_phy_use_fixed_re = 0x1
+ // .. .. ==> 0XF8006050[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0
+ // .. .. ==> 0XF8006050[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0
+ // .. .. ==> 0XF8006050[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_phy_clk_stall_level = 0x0
+ // .. .. ==> 0XF8006050[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[27:24] = 0x00000007U
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U
+ // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U),
+ // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1
+ // .. .. ==> 0XF8006058[7:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1
+ // .. .. ==> 0XF8006058[15:8] = 0x00000001U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U
+ // .. .. reg_ddrc_dis_dll_calib = 0x0
+ // .. .. ==> 0XF8006058[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U),
+ // .. .. reg_ddrc_rd_odt_delay = 0x3
+ // .. .. ==> 0XF800605C[3:0] = 0x00000003U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U
+ // .. .. reg_ddrc_wr_odt_delay = 0x0
+ // .. .. ==> 0XF800605C[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd_odt_hold = 0x0
+ // .. .. ==> 0XF800605C[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_wr_odt_hold = 0x5
+ // .. .. ==> 0XF800605C[15:12] = 0x00000005U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U),
+ // .. .. reg_ddrc_pageclose = 0x0
+ // .. .. ==> 0XF8006060[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_lpr_num_entries = 0x1f
+ // .. .. ==> 0XF8006060[6:1] = 0x0000001FU
+ // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU
+ // .. .. reg_ddrc_auto_pre_en = 0x0
+ // .. .. ==> 0XF8006060[7:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. .. reg_ddrc_refresh_update_level = 0x0
+ // .. .. ==> 0XF8006060[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_wc = 0x0
+ // .. .. ==> 0XF8006060[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_collision_page_opt = 0x0
+ // .. .. ==> 0XF8006060[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_ddrc_selfref_en = 0x0
+ // .. .. ==> 0XF8006060[12:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU),
+ // .. .. reg_ddrc_go2critical_hysteresis = 0x0
+ // .. .. ==> 0XF8006064[12:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U
+ // .. .. reg_arb_go2critical_en = 0x1
+ // .. .. ==> 0XF8006064[17:17] = 0x00000001U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U),
+ // .. .. reg_ddrc_wrlvl_ww = 0x41
+ // .. .. ==> 0XF8006068[7:0] = 0x00000041U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U
+ // .. .. reg_ddrc_rdlvl_rr = 0x41
+ // .. .. ==> 0XF8006068[15:8] = 0x00000041U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U
+ // .. .. reg_ddrc_dfi_t_wlmrd = 0x28
+ // .. .. ==> 0XF8006068[25:16] = 0x00000028U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U),
+ // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10
+ // .. .. ==> 0XF800606C[7:0] = 0x00000010U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U
+ // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16
+ // .. .. ==> 0XF800606C[15:8] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U
+ // .. ..
+ EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U),
+ // .. .. reg_ddrc_dfi_t_ctrl_delay = 0x1
+ // .. .. ==> 0XF8006078[3:0] = 0x00000001U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000001U
+ // .. .. reg_ddrc_dfi_t_dram_clk_disable = 0x1
+ // .. .. ==> 0XF8006078[7:4] = 0x00000001U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000010U
+ // .. .. reg_ddrc_dfi_t_dram_clk_enable = 0x1
+ // .. .. ==> 0XF8006078[11:8] = 0x00000001U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000100U
+ // .. .. reg_ddrc_t_cksre = 0x6
+ // .. .. ==> 0XF8006078[15:12] = 0x00000006U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U
+ // .. .. reg_ddrc_t_cksrx = 0x6
+ // .. .. ==> 0XF8006078[19:16] = 0x00000006U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U
+ // .. .. reg_ddrc_t_ckesr = 0x4
+ // .. .. ==> 0XF8006078[25:20] = 0x00000004U
+ // .. .. ==> MASK : 0x03F00000U VAL : 0x00400000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006078, 0x03FFFFFFU ,0x00466111U),
+ // .. .. reg_ddrc_t_ckpde = 0x2
+ // .. .. ==> 0XF800607C[3:0] = 0x00000002U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000002U
+ // .. .. reg_ddrc_t_ckpdx = 0x2
+ // .. .. ==> 0XF800607C[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. reg_ddrc_t_ckdpde = 0x2
+ // .. .. ==> 0XF800607C[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. reg_ddrc_t_ckdpdx = 0x2
+ // .. .. ==> 0XF800607C[15:12] = 0x00000002U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00002000U
+ // .. .. reg_ddrc_t_ckcsx = 0x3
+ // .. .. ==> 0XF800607C[19:16] = 0x00000003U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00030000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800607C, 0x000FFFFFU ,0x00032222U),
+ // .. .. refresh_timer0_start_value_x32 = 0x0
+ // .. .. ==> 0XF80060A0[11:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U
+ // .. .. refresh_timer1_start_value_x32 = 0x8
+ // .. .. ==> 0XF80060A0[23:12] = 0x00000008U
+ // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U),
+ // .. .. reg_ddrc_dis_auto_zq = 0x0
+ // .. .. ==> 0XF80060A4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_ddr3 = 0x1
+ // .. .. ==> 0XF80060A4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. reg_ddrc_t_mod = 0x200
+ // .. .. ==> 0XF80060A4[11:2] = 0x00000200U
+ // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U
+ // .. .. reg_ddrc_t_zq_long_nop = 0x200
+ // .. .. ==> 0XF80060A4[21:12] = 0x00000200U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U
+ // .. .. reg_ddrc_t_zq_short_nop = 0x40
+ // .. .. ==> 0XF80060A4[31:22] = 0x00000040U
+ // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U),
+ // .. .. t_zq_short_interval_x1024 = 0xcb73
+ // .. .. ==> 0XF80060A8[19:0] = 0x0000CB73U
+ // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000CB73U
+ // .. .. dram_rstn_x1024 = 0x69
+ // .. .. ==> 0XF80060A8[27:20] = 0x00000069U
+ // .. .. ==> MASK : 0x0FF00000U VAL : 0x06900000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0690CB73U),
+ // .. .. deeppowerdown_en = 0x0
+ // .. .. ==> 0XF80060AC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. deeppowerdown_to_x1024 = 0xff
+ // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU
+ // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU
+ // .. ..
+ EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU),
+ // .. .. dfi_wrlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU
+ // .. .. dfi_rdlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U
+ // .. .. ddrc_reg_twrlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. ddrc_reg_trdlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dfi_wr_level_en = 0x1
+ // .. .. ==> 0XF80060B0[26:26] = 0x00000001U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF80060B0[27:27] = 0x00000001U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1
+ // .. .. ==> 0XF80060B0[28:28] = 0x00000001U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU),
+ // .. .. reg_ddrc_2t_delay = 0x0
+ // .. .. ==> 0XF80060B4[8:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U
+ // .. .. reg_ddrc_skip_ocd = 0x1
+ // .. .. ==> 0XF80060B4[9:9] = 0x00000001U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. .. reg_ddrc_dis_pre_bypass = 0x0
+ // .. .. ==> 0XF80060B4[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U),
+ // .. .. reg_ddrc_dfi_t_rddata_en = 0x6
+ // .. .. ==> 0XF80060B8[4:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U
+ // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3
+ // .. .. ==> 0XF80060B8[14:5] = 0x00000003U
+ // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U
+ // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40
+ // .. .. ==> 0XF80060B8[24:15] = 0x00000040U
+ // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U),
+ // .. .. START: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000003U),
+ // .. .. FINISH: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U),
+ // .. .. CORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060C8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ECC_CORRECTED_BIT_NUM = 0x0
+ // .. .. ==> 0XF80060C8[7:1] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U),
+ // .. .. UNCORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060DC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U),
+ // .. .. STAT_NUM_CORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[15:8] = 0x00000000U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U
+ // .. .. STAT_NUM_UNCORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[7:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U),
+ // .. .. reg_ddrc_ecc_mode = 0x0
+ // .. .. ==> 0XF80060F4[2:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_scrub = 0x1
+ // .. .. ==> 0XF80060F4[3:3] = 0x00000001U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U),
+ // .. .. reg_phy_dif_on = 0x0
+ // .. .. ==> 0XF8006114[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_dif_off = 0x0
+ // .. .. ==> 0XF8006114[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006118[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006118[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006118[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006118[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006118[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006118[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF800611C[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF800611C[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF800611C[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF800611C[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF800611C[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF800611C[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006120[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006120[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006120[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006120[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006120[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006120[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006120[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006120[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006120[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006120[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006120[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006120[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006124[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006124[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006124[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006124[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006124[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006124[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF800612C[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb0
+ // .. .. ==> 0XF800612C[19:10] = 0x000000B0U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x0002C000U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF8006130[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb1
+ // .. .. ==> 0XF8006130[19:10] = 0x000000B1U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C400U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x0002C400U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006134[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbc
+ // .. .. ==> 0XF8006134[19:10] = 0x000000BCU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002F000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x0002F003U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006138[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbb
+ // .. .. ==> 0XF8006138[19:10] = 0x000000BBU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002EC00U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x0002EC03U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006140[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006140[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006140[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006144[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006144[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006144[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006148[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006148[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006148[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF800614C[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800614C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800614C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006154[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006154[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006154[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006158[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006158[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006158[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF800615C[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800615C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800615C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF8006160[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006160[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006160[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x105
+ // .. .. ==> 0XF8006168[10:0] = 0x00000105U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000105U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006168[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006168[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x00000105U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x106
+ // .. .. ==> 0XF800616C[10:0] = 0x00000106U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000106U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF800616C[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF800616C[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x00000106U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x111
+ // .. .. ==> 0XF8006170[10:0] = 0x00000111U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000111U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006170[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006170[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x00000111U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x110
+ // .. .. ==> 0XF8006174[10:0] = 0x00000110U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000110U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006174[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006174[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x00000110U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF800617C[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF800617C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF800617C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF8006180[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006180[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006180[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006184[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006184[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006184[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006188[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006188[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006188[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_loopback = 0x0
+ // .. .. ==> 0XF8006190[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_phy_bl2 = 0x0
+ // .. .. ==> 0XF8006190[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_at_spd_atpg = 0x0
+ // .. .. ==> 0XF8006190[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_bist_enable = 0x0
+ // .. .. ==> 0XF8006190[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_force_err = 0x0
+ // .. .. ==> 0XF8006190[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_bist_mode = 0x0
+ // .. .. ==> 0XF8006190[6:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. .. reg_phy_invert_clkout = 0x1
+ // .. .. ==> 0XF8006190[7:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0
+ // .. .. ==> 0XF8006190[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_phy_sel_logic = 0x0
+ // .. .. ==> 0XF8006190[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_ratio = 0x100
+ // .. .. ==> 0XF8006190[19:10] = 0x00000100U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U
+ // .. .. reg_phy_ctrl_slave_force = 0x0
+ // .. .. ==> 0XF8006190[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006190[27:21] = 0x00000000U
+ // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U
+ // .. .. reg_phy_use_rank0_delays = 0x1
+ // .. .. ==> 0XF8006190[28:28] = 0x00000001U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. .. reg_phy_lpddr = 0x0
+ // .. .. ==> 0XF8006190[29:29] = 0x00000000U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // .. .. reg_phy_cmd_latency = 0x0
+ // .. .. ==> 0XF8006190[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. .. reg_phy_int_lpbk = 0x0
+ // .. .. ==> 0XF8006190[31:31] = 0x00000000U
+ // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U),
+ // .. .. reg_phy_wr_rl_delay = 0x2
+ // .. .. ==> 0XF8006194[4:0] = 0x00000002U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U
+ // .. .. reg_phy_rd_rl_delay = 0x4
+ // .. .. ==> 0XF8006194[9:5] = 0x00000004U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U
+ // .. .. reg_phy_dll_lock_diff = 0xf
+ // .. .. ==> 0XF8006194[13:10] = 0x0000000FU
+ // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U
+ // .. .. reg_phy_use_wr_level = 0x1
+ // .. .. ==> 0XF8006194[14:14] = 0x00000001U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U
+ // .. .. reg_phy_use_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF8006194[15:15] = 0x00000001U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U
+ // .. .. reg_phy_use_rd_data_eye_level = 0x1
+ // .. .. ==> 0XF8006194[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_dis_calib_rst = 0x0
+ // .. .. ==> 0XF8006194[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006194[19:18] = 0x00000000U
+ // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U),
+ // .. .. reg_arb_page_addr_mask = 0x0
+ // .. .. ==> 0XF8006204[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006208[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006208[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF800620C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF800620C[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006210[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006210[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006214[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006214[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006218[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF800621C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006220[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006224[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_ddrc_lpddr2 = 0x0
+ // .. .. ==> 0XF80062A8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_per_bank_refresh = 0x0
+ // .. .. ==> 0XF80062A8[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_derate_enable = 0x0
+ // .. .. ==> 0XF80062A8[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr4_margin = 0x0
+ // .. .. ==> 0XF80062A8[11:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U),
+ // .. .. reg_ddrc_mr4_read_interval = 0x0
+ // .. .. ==> 0XF80062AC[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_ddrc_min_stable_clock_x1 = 0x5
+ // .. .. ==> 0XF80062B0[3:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U
+ // .. .. reg_ddrc_idle_after_reset_x32 = 0x12
+ // .. .. ==> 0XF80062B0[11:4] = 0x00000012U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U
+ // .. .. reg_ddrc_t_mrw = 0x5
+ // .. .. ==> 0XF80062B0[21:12] = 0x00000005U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U),
+ // .. .. reg_ddrc_max_auto_init_x1024 = 0xa8
+ // .. .. ==> 0XF80062B4[7:0] = 0x000000A8U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A8U
+ // .. .. reg_ddrc_dev_zqinit_x32 = 0x12
+ // .. .. ==> 0XF80062B4[17:8] = 0x00000012U
+ // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A8U),
+ // .. .. START: POLL ON DCI STATUS
+ // .. .. DONE = 1
+ // .. .. ==> 0XF8000B74[13:13] = 0x00000001U
+ // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKPOLL(0XF8000B74, 0x00002000U),
+ // .. .. FINISH: POLL ON DCI STATUS
+ // .. .. START: UNLOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0x1
+ // .. .. ==> 0XF8006000[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U),
+ // .. .. FINISH: UNLOCK DDR
+ // .. .. START: CHECK DDR STATUS
+ // .. .. ddrc_reg_operating_mode = 1
+ // .. .. ==> 0XF8006054[2:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U
+ // .. ..
+ EMIT_MASKPOLL(0XF8006054, 0x00000007U),
+ // .. .. FINISH: CHECK DDR STATUS
+ // .. FINISH: DDR INITIALIZATION
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_mio_init_data_2_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: OCM REMAPPING
+ // .. FINISH: OCM REMAPPING
+ // .. START: DDRIOB SETTINGS
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B40[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B40[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B40[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B40[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B40[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B40[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B40[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B44[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B44[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B44[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B44[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B44[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B44[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B44[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B48[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B48[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B48[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B48[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B48[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B48[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B48[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B4C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B4C[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B4C[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B4C[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B4C[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B4C[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B4C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B50[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B50[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B50[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B50[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B50[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B50[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B50[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B54[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B54[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B54[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B54[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B54[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B54[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B54[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B58[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B58[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B58[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B58[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B58[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B58[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B58[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B5C[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B5C[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x3
+ // .. ==> 0XF8000B5C[18:14] = 0x00000003U
+ // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U
+ // .. SLEW_N = 0x3
+ // .. ==> 0XF8000B5C[23:19] = 0x00000003U
+ // .. ==> MASK : 0x00F80000U VAL : 0x00180000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B5C[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B5C[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B60[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B60[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B60[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B60[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B60[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B60[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B64[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B64[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B64[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B64[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B64[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B64[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B68[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B68[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B68[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B68[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B68[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B68[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. VREF_INT_EN = 0x1
+ // .. ==> 0XF8000B6C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. VREF_SEL = 0x4
+ // .. ==> 0XF8000B6C[4:1] = 0x00000004U
+ // .. ==> MASK : 0x0000001EU VAL : 0x00000008U
+ // .. VREF_EXT_EN = 0x0
+ // .. ==> 0XF8000B6C[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. VREF_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[8:7] = 0x00000000U
+ // .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. REFIO_EN = 0x1
+ // .. ==> 0XF8000B6C[9:9] = 0x00000001U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. REFIO_TEST = 0x3
+ // .. ==> 0XF8000B6C[11:10] = 0x00000003U
+ // .. ==> MASK : 0x00000C00U VAL : 0x00000C00U
+ // .. REFIO_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DRST_B_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. CKE_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B6C, 0x00007FFFU ,0x00000E09U),
+ // .. .. START: ASSERT RESET
+ // .. .. RESET = 1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U),
+ // .. .. FINISH: ASSERT RESET
+ // .. .. START: DEASSERT RESET
+ // .. .. RESET = 0
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U),
+ // .. .. FINISH: DEASSERT RESET
+ // .. .. RESET = 0x1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ENABLE = 0x1
+ // .. .. ==> 0XF8000B70[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. VRP_TRI = 0x0
+ // .. .. ==> 0XF8000B70[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. VRN_TRI = 0x0
+ // .. .. ==> 0XF8000B70[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. VRP_OUT = 0x0
+ // .. .. ==> 0XF8000B70[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. .. NREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[7:6] = 0x00000000U
+ // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. .. NREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[10:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U
+ // .. .. NREF_OPT4 = 0x1
+ // .. .. ==> 0XF8000B70[13:11] = 0x00000001U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U
+ // .. .. PREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[16:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U
+ // .. .. PREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[19:17] = 0x00000000U
+ // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U
+ // .. .. UPDATE_CONTROL = 0x0
+ // .. .. ==> 0XF8000B70[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. INIT_COMPLETE = 0x0
+ // .. .. ==> 0XF8000B70[21:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. .. TST_CLK = 0x0
+ // .. .. ==> 0XF8000B70[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. TST_HLN = 0x0
+ // .. .. ==> 0XF8000B70[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. TST_HLP = 0x0
+ // .. .. ==> 0XF8000B70[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. TST_RST = 0x0
+ // .. .. ==> 0XF8000B70[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. INT_DCI_EN = 0x0
+ // .. .. ==> 0XF8000B70[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U),
+ // .. FINISH: DDRIOB SETTINGS
+ // .. START: MIO PROGRAMMING
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000700[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000700[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000700[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000700[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000700[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000700[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000700[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000700[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000700[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000704[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000704[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000704[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000704[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000704[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000704[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000704[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000704[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000704[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000708[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000708[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000708[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000708[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000708[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000708[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000708[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000708[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000708[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800070C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800070C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800070C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800070C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800070C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800070C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800070C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800070C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800070C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000710[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000710[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000710[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000710[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000710[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000710[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000710[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000710[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000710[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000714[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000714[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000714[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000714[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000714[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000714[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000714[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000714[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000714[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000718[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000718[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000718[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000718[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000718[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000718[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000718[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000718[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000718[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800071C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800071C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800071C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800071C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800071C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800071C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800071C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800071C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800071C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000720[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000720[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000720[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000720[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000720[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000720[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000720[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000720[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000720[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000724[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000724[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000724[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000724[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000724[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000724[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000724[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000724[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000724[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000728[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000728[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000728[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000728[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000728[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000728[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000728[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000728[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000728[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800072C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800072C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800072C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800072C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800072C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800072C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800072C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800072C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800072C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000730[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000730[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000730[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000730[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000730[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000730[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000730[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000730[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000730[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000734[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000734[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000734[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000734[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000734[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000734[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000734[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000734[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000734[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000738[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000738[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000738[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000738[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000738[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000738[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000738[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000738[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000738[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800073C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800073C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800073C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800073C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800073C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800073C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800073C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800073C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800073C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000740[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000740[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000740[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000740[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000740[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000740[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000740[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000740[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000740[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000744[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000744[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000744[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000744[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000744[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000744[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000744[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000744[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000744[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000748[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000748[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000748[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000748[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000748[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000748[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000748[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000748[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000748[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800074C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800074C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800074C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800074C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800074C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800074C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800074C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800074C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800074C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000750[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000750[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000750[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000750[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000750[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000750[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000750[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000750[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000750[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000754[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000754[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000754[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000754[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000754[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000754[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000754[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000754[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000754[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000758[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000758[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000758[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000758[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000758[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000758[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000758[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000758[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000758[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800075C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800075C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800075C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800075C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800075C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800075C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800075C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800075C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800075C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000760[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000760[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000760[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000760[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000760[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000760[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000760[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000760[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000760[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000764[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000764[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000764[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000764[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000764[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000764[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000764[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000764[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000764[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000768[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000768[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000768[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000768[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000768[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000768[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000768[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000768[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000768[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800076C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800076C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800076C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800076C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800076C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800076C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800076C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800076C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800076C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000770[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000770[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000770[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000770[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000770[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000770[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000770[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000770[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000770[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000774[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000774[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000774[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000774[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000774[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000774[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000774[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000774[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000774[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000778[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000778[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000778[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000778[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000778[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000778[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000778[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000778[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000778[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800077C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800077C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800077C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800077C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800077C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800077C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800077C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800077C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800077C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000780[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000780[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000780[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000780[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000780[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000780[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000780[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000780[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000780[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000784[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000784[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000784[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000784[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000784[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000784[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000784[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000784[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000784[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000788[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000788[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000788[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000788[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000788[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000788[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000788[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000788[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000788[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800078C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800078C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800078C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800078C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800078C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800078C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800078C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800078C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800078C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000790[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000790[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000790[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000790[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000790[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000790[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000790[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000790[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000790[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000794[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000794[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000794[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000794[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000794[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000794[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000794[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000794[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000794[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000798[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000798[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000798[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000798[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000798[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000798[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000798[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000798[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000798[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800079C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800079C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800079C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800079C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800079C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800079C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800079C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800079C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800079C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A8[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A8[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A8[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A8[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A8[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007AC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007AC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007AC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007AC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007AC[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007AC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007AC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007AC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007AC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007B8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007B8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007BC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007BC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007BC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007BC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007BC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007BC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007BC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007BC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007BC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007BC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007C0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C0[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C4[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007C8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007CC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007CC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007CC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007CC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007CC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007CC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007CC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007CC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007CC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000280U),
+ // .. SDIO0_WP_SEL = 50
+ // .. ==> 0XF8000830[5:0] = 0x00000032U
+ // .. ==> MASK : 0x0000003FU VAL : 0x00000032U
+ // .. SDIO0_CD_SEL = 46
+ // .. ==> 0XF8000830[21:16] = 0x0000002EU
+ // .. ==> MASK : 0x003F0000U VAL : 0x002E0000U
+ // ..
+ EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002E0032U),
+ // .. FINISH: MIO PROGRAMMING
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_peripherals_init_data_2_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U),
+ // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // .. START: SRAM/NOR SET OPMODE
+ // .. FINISH: SRAM/NOR SET OPMODE
+ // .. START: UART REGISTERS
+ // .. BDIV = 0x6
+ // .. ==> 0XE0001034[7:0] = 0x00000006U
+ // .. ==> MASK : 0x000000FFU VAL : 0x00000006U
+ // ..
+ EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U),
+ // .. CD = 0x3e
+ // .. ==> 0XE0001018[15:0] = 0x0000003EU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000003EU
+ // ..
+ EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000003EU),
+ // .. STPBRK = 0x0
+ // .. ==> 0XE0001000[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. STTBRK = 0x0
+ // .. ==> 0XE0001000[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. RSTTO = 0x0
+ // .. ==> 0XE0001000[6:6] = 0x00000000U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. TXDIS = 0x0
+ // .. ==> 0XE0001000[5:5] = 0x00000000U
+ // .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. TXEN = 0x1
+ // .. ==> 0XE0001000[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. RXDIS = 0x0
+ // .. ==> 0XE0001000[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. RXEN = 0x1
+ // .. ==> 0XE0001000[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. TXRES = 0x1
+ // .. ==> 0XE0001000[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. RXRES = 0x1
+ // .. ==> 0XE0001000[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U),
+ // .. IRMODE = 0x0
+ // .. ==> 0XE0001004[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. UCLKEN = 0x0
+ // .. ==> 0XE0001004[10:10] = 0x00000000U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. CHMODE = 0x0
+ // .. ==> 0XE0001004[9:8] = 0x00000000U
+ // .. ==> MASK : 0x00000300U VAL : 0x00000000U
+ // .. NBSTOP = 0x0
+ // .. ==> 0XE0001004[7:6] = 0x00000000U
+ // .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. PAR = 0x4
+ // .. ==> 0XE0001004[5:3] = 0x00000004U
+ // .. ==> MASK : 0x00000038U VAL : 0x00000020U
+ // .. CHRL = 0x0
+ // .. ==> 0XE0001004[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. CLKS = 0x0
+ // .. ==> 0XE0001004[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U),
+ // .. FINISH: UART REGISTERS
+ // .. START: QSPI REGISTERS
+ // .. Holdb_dr = 1
+ // .. ==> 0XE000D000[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // ..
+ EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U),
+ // .. FINISH: QSPI REGISTERS
+ // .. START: PL POWER ON RESET REGISTERS
+ // .. PCFG_POR_CNT_4K = 0
+ // .. ==> 0XF8007000[29:29] = 0x00000000U
+ // .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U),
+ // .. FINISH: PL POWER ON RESET REGISTERS
+ // .. START: SMC TIMING CALCULATION REGISTER UPDATE
+ // .. .. START: NAND SET CYCLE
+ // .. .. FINISH: NAND SET CYCLE
+ // .. .. START: OPMODE
+ // .. .. FINISH: OPMODE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: SRAM/NOR CS0 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS0 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS0 BASE ADDRESS
+ // .. .. FINISH: NOR CS0 BASE ADDRESS
+ // .. .. START: SRAM/NOR CS1 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS1 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS1 BASE ADDRESS
+ // .. .. FINISH: NOR CS1 BASE ADDRESS
+ // .. .. START: USB RESET
+ // .. .. .. START: USB0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. DIRECTION_0 = 0x80
+ // .. .. .. .. ==> 0XE000A204[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A204, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. OP_ENABLE_0 = 0x80
+ // .. .. .. .. ==> 0XE000A208[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A208, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x0
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000000U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0000U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB0 RESET
+ // .. .. .. START: USB1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB1 RESET
+ // .. .. FINISH: USB RESET
+ // .. .. START: ENET RESET
+ // .. .. .. START: ENET0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET0 RESET
+ // .. .. .. START: ENET1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET1 RESET
+ // .. .. FINISH: ENET RESET
+ // .. .. START: I2C RESET
+ // .. .. .. START: I2C0 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C0 RESET
+ // .. .. .. START: I2C1 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C1 RESET
+ // .. .. FINISH: I2C RESET
+ // .. .. START: NOR CHIP SELECT
+ // .. .. .. START: DIR MODE BANK 0
+ // .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. FINISH: NOR CHIP SELECT
+ // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_post_config_2_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: ENABLING LEVEL SHIFTER
+ // .. USER_INP_ICT_EN_0 = 3
+ // .. ==> 0XF8000900[1:0] = 0x00000003U
+ // .. ==> MASK : 0x00000003U VAL : 0x00000003U
+ // .. USER_INP_ICT_EN_1 = 3
+ // .. ==> 0XF8000900[3:2] = 0x00000003U
+ // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU
+ // ..
+ EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU),
+ // .. FINISH: ENABLING LEVEL SHIFTER
+ // .. START: FPGA RESETS TO 0
+ // .. reserved_3 = 0
+ // .. ==> 0XF8000240[31:25] = 0x00000000U
+ // .. ==> MASK : 0xFE000000U VAL : 0x00000000U
+ // .. FPGA_ACP_RST = 0
+ // .. ==> 0XF8000240[24:24] = 0x00000000U
+ // .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. FPGA_AXDS3_RST = 0
+ // .. ==> 0XF8000240[23:23] = 0x00000000U
+ // .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. FPGA_AXDS2_RST = 0
+ // .. ==> 0XF8000240[22:22] = 0x00000000U
+ // .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. FPGA_AXDS1_RST = 0
+ // .. ==> 0XF8000240[21:21] = 0x00000000U
+ // .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. FPGA_AXDS0_RST = 0
+ // .. ==> 0XF8000240[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. reserved_2 = 0
+ // .. ==> 0XF8000240[19:18] = 0x00000000U
+ // .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. FSSW1_FPGA_RST = 0
+ // .. ==> 0XF8000240[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. FSSW0_FPGA_RST = 0
+ // .. ==> 0XF8000240[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. reserved_1 = 0
+ // .. ==> 0XF8000240[15:14] = 0x00000000U
+ // .. ==> MASK : 0x0000C000U VAL : 0x00000000U
+ // .. FPGA_FMSW1_RST = 0
+ // .. ==> 0XF8000240[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. FPGA_FMSW0_RST = 0
+ // .. ==> 0XF8000240[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. FPGA_DMA3_RST = 0
+ // .. ==> 0XF8000240[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. FPGA_DMA2_RST = 0
+ // .. ==> 0XF8000240[10:10] = 0x00000000U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. FPGA_DMA1_RST = 0
+ // .. ==> 0XF8000240[9:9] = 0x00000000U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. FPGA_DMA0_RST = 0
+ // .. ==> 0XF8000240[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. reserved = 0
+ // .. ==> 0XF8000240[7:4] = 0x00000000U
+ // .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. FPGA3_OUT_RST = 0
+ // .. ==> 0XF8000240[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. FPGA2_OUT_RST = 0
+ // .. ==> 0XF8000240[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. FPGA1_OUT_RST = 0
+ // .. ==> 0XF8000240[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. FPGA0_OUT_RST = 0
+ // .. ==> 0XF8000240[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U),
+ // .. FINISH: FPGA RESETS TO 0
+ // .. START: AFI REGISTERS
+ // .. .. START: AFI0 REGISTERS
+ // .. .. FINISH: AFI0 REGISTERS
+ // .. .. START: AFI1 REGISTERS
+ // .. .. FINISH: AFI1 REGISTERS
+ // .. .. START: AFI2 REGISTERS
+ // .. .. FINISH: AFI2 REGISTERS
+ // .. .. START: AFI3 REGISTERS
+ // .. .. FINISH: AFI3 REGISTERS
+ // .. FINISH: AFI REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_debug_2_0[] = {
+ // START: top
+ // .. START: CROSS TRIGGER CONFIGURATIONS
+ // .. .. START: UNLOCKING CTI REGISTERS
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8898FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8899FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8809FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. FINISH: UNLOCKING CTI REGISTERS
+ // .. .. START: ENABLING CTI MODULES AND CHANNELS
+ // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS
+ // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. FINISH: CROSS TRIGGER CONFIGURATIONS
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_pll_init_data_1_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: PLL SLCR REGISTERS
+ // .. .. START: ARM PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000110[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000110[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0xfa
+ // .. .. ==> 0XF8000110[21:12] = 0x000000FAU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x000FA000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000110, 0x003FFFF0U ,0x000FA220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x28
+ // .. .. .. ==> 0XF8000100[18:12] = 0x00000028U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00028000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x0007F000U ,0x00028000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000100[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. ARM_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000001U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000100[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000100, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. SRCSEL = 0x0
+ // .. .. .. ==> 0XF8000120[5:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. .. .. DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000120[13:8] = 0x00000002U
+ // .. .. .. ==> MASK : 0x00003F00U VAL : 0x00000200U
+ // .. .. .. CPU_6OR4XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[24:24] = 0x00000001U
+ // .. .. .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // .. .. .. CPU_3OR2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[25:25] = 0x00000001U
+ // .. .. .. ==> MASK : 0x02000000U VAL : 0x02000000U
+ // .. .. .. CPU_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[26:26] = 0x00000001U
+ // .. .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. .. CPU_1XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[27:27] = 0x00000001U
+ // .. .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. .. CPU_PERI_CLKACT = 0x1
+ // .. .. .. ==> 0XF8000120[28:28] = 0x00000001U
+ // .. .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000120, 0x1F003F30U ,0x1F000200U),
+ // .. .. FINISH: ARM PLL INIT
+ // .. .. START: DDR PLL INIT
+ // .. .. PLL_RES = 0x2
+ // .. .. ==> 0XF8000114[7:4] = 0x00000002U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000020U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000114[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x12c
+ // .. .. ==> 0XF8000114[21:12] = 0x0000012CU
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x0012C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000114, 0x003FFFF0U ,0x0012C220U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x20
+ // .. .. .. ==> 0XF8000104[18:12] = 0x00000020U
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x00020000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x0007F000U ,0x00020000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000104[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. DDR_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000002U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000104[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000104, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. .. DDR_3XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. .. DDR_2XCLKACT = 0x1
+ // .. .. .. ==> 0XF8000124[1:1] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. .. DDR_3XCLK_DIVISOR = 0x2
+ // .. .. .. ==> 0XF8000124[25:20] = 0x00000002U
+ // .. .. .. ==> MASK : 0x03F00000U VAL : 0x00200000U
+ // .. .. .. DDR_2XCLK_DIVISOR = 0x3
+ // .. .. .. ==> 0XF8000124[31:26] = 0x00000003U
+ // .. .. .. ==> MASK : 0xFC000000U VAL : 0x0C000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000124, 0xFFF00003U ,0x0C200003U),
+ // .. .. FINISH: DDR PLL INIT
+ // .. .. START: IO PLL INIT
+ // .. .. PLL_RES = 0xc
+ // .. .. ==> 0XF8000118[7:4] = 0x0000000CU
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x000000C0U
+ // .. .. PLL_CP = 0x2
+ // .. .. ==> 0XF8000118[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. LOCK_CNT = 0x145
+ // .. .. ==> 0XF8000118[21:12] = 0x00000145U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00145000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000118, 0x003FFFF0U ,0x001452C0U),
+ // .. .. .. START: UPDATE FB_DIV
+ // .. .. .. PLL_FDIV = 0x1e
+ // .. .. .. ==> 0XF8000108[18:12] = 0x0000001EU
+ // .. .. .. ==> MASK : 0x0007F000U VAL : 0x0001E000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x0007F000U ,0x0001E000U),
+ // .. .. .. FINISH: UPDATE FB_DIV
+ // .. .. .. START: BY PASS PLL
+ // .. .. .. PLL_BYPASS_FORCE = 1
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000010U),
+ // .. .. .. FINISH: BY PASS PLL
+ // .. .. .. START: ASSERT RESET
+ // .. .. .. PLL_RESET = 1
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000001U),
+ // .. .. .. FINISH: ASSERT RESET
+ // .. .. .. START: DEASSERT RESET
+ // .. .. .. PLL_RESET = 0
+ // .. .. .. ==> 0XF8000108[0:0] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000001U ,0x00000000U),
+ // .. .. .. FINISH: DEASSERT RESET
+ // .. .. .. START: CHECK PLL STATUS
+ // .. .. .. IO_PLL_LOCK = 1
+ // .. .. .. ==> 0XF800010C[2:2] = 0x00000001U
+ // .. .. .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. .. ..
+ EMIT_MASKPOLL(0XF800010C, 0x00000004U),
+ // .. .. .. FINISH: CHECK PLL STATUS
+ // .. .. .. START: REMOVE PLL BY PASS
+ // .. .. .. PLL_BYPASS_FORCE = 0
+ // .. .. .. ==> 0XF8000108[4:4] = 0x00000000U
+ // .. .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. ..
+ EMIT_MASKWRITE(0XF8000108, 0x00000010U ,0x00000000U),
+ // .. .. .. FINISH: REMOVE PLL BY PASS
+ // .. .. FINISH: IO PLL INIT
+ // .. FINISH: PLL SLCR REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_clock_init_data_1_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: CLOCK CONTROL SLCR REGISTERS
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000128[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. DIVISOR0 = 0x23
+ // .. ==> 0XF8000128[13:8] = 0x00000023U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00002300U
+ // .. DIVISOR1 = 0x3
+ // .. ==> 0XF8000128[25:20] = 0x00000003U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00300000U
+ // ..
+ EMIT_MASKWRITE(0XF8000128, 0x03F03F01U ,0x00302301U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000138[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000138[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000138, 0x00000011U ,0x00000001U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000140[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000140[6:4] = 0x00000000U
+ // .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. DIVISOR = 0x8
+ // .. ==> 0XF8000140[13:8] = 0x00000008U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000800U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000140[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000140, 0x03F03F71U ,0x00100801U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF800014C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF800014C[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF800014C[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF800014C, 0x00003F31U ,0x00000501U),
+ // .. CLKACT0 = 0x1
+ // .. ==> 0XF8000150[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. CLKACT1 = 0x0
+ // .. ==> 0XF8000150[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000150[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000150[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000150, 0x00003F33U ,0x00001401U),
+ // .. CLKACT0 = 0x0
+ // .. ==> 0XF8000154[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. CLKACT1 = 0x1
+ // .. ==> 0XF8000154[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000154[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x14
+ // .. ==> 0XF8000154[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // ..
+ EMIT_MASKWRITE(0XF8000154, 0x00003F33U ,0x00001402U),
+ // .. CLKACT = 0x1
+ // .. ==> 0XF8000168[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000168[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR = 0x5
+ // .. ==> 0XF8000168[13:8] = 0x00000005U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000500U
+ // ..
+ EMIT_MASKWRITE(0XF8000168, 0x00003F31U ,0x00000501U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000170[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000170[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000170[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000170, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000180[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0xa
+ // .. ==> 0XF8000180[13:8] = 0x0000000AU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00000A00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000180[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000180, 0x03F03F30U ,0x00100A00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF8000190[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x1e
+ // .. ==> 0XF8000190[13:8] = 0x0000001EU
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001E00U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF8000190[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF8000190, 0x03F03F30U ,0x00101E00U),
+ // .. SRCSEL = 0x0
+ // .. ==> 0XF80001A0[5:4] = 0x00000000U
+ // .. ==> MASK : 0x00000030U VAL : 0x00000000U
+ // .. DIVISOR0 = 0x14
+ // .. ==> 0XF80001A0[13:8] = 0x00000014U
+ // .. ==> MASK : 0x00003F00U VAL : 0x00001400U
+ // .. DIVISOR1 = 0x1
+ // .. ==> 0XF80001A0[25:20] = 0x00000001U
+ // .. ==> MASK : 0x03F00000U VAL : 0x00100000U
+ // ..
+ EMIT_MASKWRITE(0XF80001A0, 0x03F03F30U ,0x00101400U),
+ // .. CLK_621_TRUE = 0x1
+ // .. ==> 0XF80001C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XF80001C4, 0x00000001U ,0x00000001U),
+ // .. DMA_CPU_2XCLKACT = 0x1
+ // .. ==> 0XF800012C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. USB0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. USB1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[3:3] = 0x00000001U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. GEM0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[6:6] = 0x00000001U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000040U
+ // .. GEM1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. SDI0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[10:10] = 0x00000001U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000400U
+ // .. SDI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. SPI0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. SPI1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[15:15] = 0x00000000U
+ // .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. CAN0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. CAN1_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. I2C0_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[18:18] = 0x00000001U
+ // .. ==> MASK : 0x00040000U VAL : 0x00040000U
+ // .. I2C1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. UART0_CPU_1XCLKACT = 0x0
+ // .. ==> 0XF800012C[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. UART1_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[21:21] = 0x00000001U
+ // .. ==> MASK : 0x00200000U VAL : 0x00200000U
+ // .. GPIO_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[22:22] = 0x00000001U
+ // .. ==> MASK : 0x00400000U VAL : 0x00400000U
+ // .. LQSPI_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[23:23] = 0x00000001U
+ // .. ==> MASK : 0x00800000U VAL : 0x00800000U
+ // .. SMC_CPU_1XCLKACT = 0x1
+ // .. ==> 0XF800012C[24:24] = 0x00000001U
+ // .. ==> MASK : 0x01000000U VAL : 0x01000000U
+ // ..
+ EMIT_MASKWRITE(0XF800012C, 0x01FFCCCDU ,0x01EC044DU),
+ // .. FINISH: CLOCK CONTROL SLCR REGISTERS
+ // .. START: THIS SHOULD BE BLANK
+ // .. FINISH: THIS SHOULD BE BLANK
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_ddr_init_data_1_0[] = {
+ // START: top
+ // .. START: DDR INITIALIZATION
+ // .. .. START: LOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0
+ // .. .. ==> 0XF8006000[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 0x1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000080U),
+ // .. .. FINISH: LOCK DDR
+ // .. .. reg_ddrc_t_rfc_nom_x32 = 0x81
+ // .. .. ==> 0XF8006004[11:0] = 0x00000081U
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000081U
+ // .. .. reg_ddrc_active_ranks = 0x1
+ // .. .. ==> 0XF8006004[13:12] = 0x00000001U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00001000U
+ // .. .. reg_ddrc_addrmap_cs_bit0 = 0x0
+ // .. .. ==> 0XF8006004[18:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0007C000U VAL : 0x00000000U
+ // .. .. reg_ddrc_wr_odt_block = 0x1
+ // .. .. ==> 0XF8006004[20:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00180000U VAL : 0x00080000U
+ // .. .. reg_ddrc_diff_rank_rd_2cycle_gap = 0x0
+ // .. .. ==> 0XF8006004[21:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_cs_bit1 = 0x0
+ // .. .. ==> 0XF8006004[26:22] = 0x00000000U
+ // .. .. ==> MASK : 0x07C00000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_open_bank = 0x0
+ // .. .. ==> 0XF8006004[27:27] = 0x00000000U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_4bank_ram = 0x0
+ // .. .. ==> 0XF8006004[28:28] = 0x00000000U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006004, 0x1FFFFFFFU ,0x00081081U),
+ // .. .. reg_ddrc_hpr_min_non_critical_x32 = 0xf
+ // .. .. ==> 0XF8006008[10:0] = 0x0000000FU
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x0000000FU
+ // .. .. reg_ddrc_hpr_max_starve_x32 = 0xf
+ // .. .. ==> 0XF8006008[21:11] = 0x0000000FU
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00007800U
+ // .. .. reg_ddrc_hpr_xact_run_length = 0xf
+ // .. .. ==> 0XF8006008[25:22] = 0x0000000FU
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x03C00000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006008, 0x03FFFFFFU ,0x03C0780FU),
+ // .. .. reg_ddrc_lpr_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF800600C[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_lpr_max_starve_x32 = 0x2
+ // .. .. ==> 0XF800600C[21:11] = 0x00000002U
+ // .. .. ==> MASK : 0x003FF800U VAL : 0x00001000U
+ // .. .. reg_ddrc_lpr_xact_run_length = 0x8
+ // .. .. ==> 0XF800600C[25:22] = 0x00000008U
+ // .. .. ==> MASK : 0x03C00000U VAL : 0x02000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800600C, 0x03FFFFFFU ,0x02001001U),
+ // .. .. reg_ddrc_w_min_non_critical_x32 = 0x1
+ // .. .. ==> 0XF8006010[10:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_w_xact_run_length = 0x8
+ // .. .. ==> 0XF8006010[14:11] = 0x00000008U
+ // .. .. ==> MASK : 0x00007800U VAL : 0x00004000U
+ // .. .. reg_ddrc_w_max_starve_x32 = 0x2
+ // .. .. ==> 0XF8006010[25:15] = 0x00000002U
+ // .. .. ==> MASK : 0x03FF8000U VAL : 0x00010000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006010, 0x03FFFFFFU ,0x00014001U),
+ // .. .. reg_ddrc_t_rc = 0x1a
+ // .. .. ==> 0XF8006014[5:0] = 0x0000001AU
+ // .. .. ==> MASK : 0x0000003FU VAL : 0x0000001AU
+ // .. .. reg_ddrc_t_rfc_min = 0xa0
+ // .. .. ==> 0XF8006014[13:6] = 0x000000A0U
+ // .. .. ==> MASK : 0x00003FC0U VAL : 0x00002800U
+ // .. .. reg_ddrc_post_selfref_gap_x32 = 0x10
+ // .. .. ==> 0XF8006014[20:14] = 0x00000010U
+ // .. .. ==> MASK : 0x001FC000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006014, 0x001FFFFFU ,0x0004281AU),
+ // .. .. reg_ddrc_wr2pre = 0x12
+ // .. .. ==> 0XF8006018[4:0] = 0x00000012U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000012U
+ // .. .. reg_ddrc_powerdown_to_x32 = 0x6
+ // .. .. ==> 0XF8006018[9:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_t_faw = 0x16
+ // .. .. ==> 0XF8006018[15:10] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FC00U VAL : 0x00005800U
+ // .. .. reg_ddrc_t_ras_max = 0x24
+ // .. .. ==> 0XF8006018[21:16] = 0x00000024U
+ // .. .. ==> MASK : 0x003F0000U VAL : 0x00240000U
+ // .. .. reg_ddrc_t_ras_min = 0x13
+ // .. .. ==> 0XF8006018[26:22] = 0x00000013U
+ // .. .. ==> MASK : 0x07C00000U VAL : 0x04C00000U
+ // .. .. reg_ddrc_t_cke = 0x4
+ // .. .. ==> 0XF8006018[31:28] = 0x00000004U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006018, 0xF7FFFFFFU ,0x44E458D2U),
+ // .. .. reg_ddrc_write_latency = 0x5
+ // .. .. ==> 0XF800601C[4:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000005U
+ // .. .. reg_ddrc_rd2wr = 0x7
+ // .. .. ==> 0XF800601C[9:5] = 0x00000007U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x000000E0U
+ // .. .. reg_ddrc_wr2rd = 0xe
+ // .. .. ==> 0XF800601C[14:10] = 0x0000000EU
+ // .. .. ==> MASK : 0x00007C00U VAL : 0x00003800U
+ // .. .. reg_ddrc_t_xp = 0x4
+ // .. .. ==> 0XF800601C[19:15] = 0x00000004U
+ // .. .. ==> MASK : 0x000F8000U VAL : 0x00020000U
+ // .. .. reg_ddrc_pad_pd = 0x0
+ // .. .. ==> 0XF800601C[22:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00700000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd2pre = 0x4
+ // .. .. ==> 0XF800601C[27:23] = 0x00000004U
+ // .. .. ==> MASK : 0x0F800000U VAL : 0x02000000U
+ // .. .. reg_ddrc_t_rcd = 0x7
+ // .. .. ==> 0XF800601C[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800601C, 0xFFFFFFFFU ,0x720238E5U),
+ // .. .. reg_ddrc_t_ccd = 0x4
+ // .. .. ==> 0XF8006020[4:2] = 0x00000004U
+ // .. .. ==> MASK : 0x0000001CU VAL : 0x00000010U
+ // .. .. reg_ddrc_t_rrd = 0x6
+ // .. .. ==> 0XF8006020[7:5] = 0x00000006U
+ // .. .. ==> MASK : 0x000000E0U VAL : 0x000000C0U
+ // .. .. reg_ddrc_refresh_margin = 0x2
+ // .. .. ==> 0XF8006020[11:8] = 0x00000002U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000200U
+ // .. .. reg_ddrc_t_rp = 0x7
+ // .. .. ==> 0XF8006020[15:12] = 0x00000007U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00007000U
+ // .. .. reg_ddrc_refresh_to_x32 = 0x8
+ // .. .. ==> 0XF8006020[20:16] = 0x00000008U
+ // .. .. ==> MASK : 0x001F0000U VAL : 0x00080000U
+ // .. .. reg_ddrc_sdram = 0x1
+ // .. .. ==> 0XF8006020[21:21] = 0x00000001U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00200000U
+ // .. .. reg_ddrc_mobile = 0x0
+ // .. .. ==> 0XF8006020[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. reg_ddrc_clock_stop_en = 0x0
+ // .. .. ==> 0XF8006020[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. reg_ddrc_read_latency = 0x7
+ // .. .. ==> 0XF8006020[28:24] = 0x00000007U
+ // .. .. ==> MASK : 0x1F000000U VAL : 0x07000000U
+ // .. .. reg_phy_mode_ddr1_ddr2 = 0x1
+ // .. .. ==> 0XF8006020[29:29] = 0x00000001U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x20000000U
+ // .. .. reg_ddrc_dis_pad_pd = 0x0
+ // .. .. ==> 0XF8006020[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_loopback = 0x0
+ // .. .. ==> 0XF8006020[31:31] = 0x00000000U
+ // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006020, 0xFFFFFFFCU ,0x272872D0U),
+ // .. .. reg_ddrc_en_2t_timing_mode = 0x0
+ // .. .. ==> 0XF8006024[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_prefer_write = 0x0
+ // .. .. ==> 0XF8006024[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_max_rank_rd = 0xf
+ // .. .. ==> 0XF8006024[5:2] = 0x0000000FU
+ // .. .. ==> MASK : 0x0000003CU VAL : 0x0000003CU
+ // .. .. reg_ddrc_mr_wr = 0x0
+ // .. .. ==> 0XF8006024[6:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_addr = 0x0
+ // .. .. ==> 0XF8006024[8:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_data = 0x0
+ // .. .. ==> 0XF8006024[24:9] = 0x00000000U
+ // .. .. ==> MASK : 0x01FFFE00U VAL : 0x00000000U
+ // .. .. ddrc_reg_mr_wr_busy = 0x0
+ // .. .. ==> 0XF8006024[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_type = 0x0
+ // .. .. ==> 0XF8006024[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr_rdata_valid = 0x0
+ // .. .. ==> 0XF8006024[27:27] = 0x00000000U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006024, 0x0FFFFFFFU ,0x0000003CU),
+ // .. .. reg_ddrc_final_wait_x32 = 0x7
+ // .. .. ==> 0XF8006028[6:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000007FU VAL : 0x00000007U
+ // .. .. reg_ddrc_pre_ocd_x32 = 0x0
+ // .. .. ==> 0XF8006028[10:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000780U VAL : 0x00000000U
+ // .. .. reg_ddrc_t_mrd = 0x4
+ // .. .. ==> 0XF8006028[13:11] = 0x00000004U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006028, 0x00003FFFU ,0x00002007U),
+ // .. .. reg_ddrc_emr2 = 0x8
+ // .. .. ==> 0XF800602C[15:0] = 0x00000008U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000008U
+ // .. .. reg_ddrc_emr3 = 0x0
+ // .. .. ==> 0XF800602C[31:16] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800602C, 0xFFFFFFFFU ,0x00000008U),
+ // .. .. reg_ddrc_mr = 0x930
+ // .. .. ==> 0XF8006030[15:0] = 0x00000930U
+ // .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000930U
+ // .. .. reg_ddrc_emr = 0x4
+ // .. .. ==> 0XF8006030[31:16] = 0x00000004U
+ // .. .. ==> MASK : 0xFFFF0000U VAL : 0x00040000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006030, 0xFFFFFFFFU ,0x00040930U),
+ // .. .. reg_ddrc_burst_rdwr = 0x4
+ // .. .. ==> 0XF8006034[3:0] = 0x00000004U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000004U
+ // .. .. reg_ddrc_pre_cke_x1024 = 0x105
+ // .. .. ==> 0XF8006034[13:4] = 0x00000105U
+ // .. .. ==> MASK : 0x00003FF0U VAL : 0x00001050U
+ // .. .. reg_ddrc_post_cke_x1024 = 0x1
+ // .. .. ==> 0XF8006034[25:16] = 0x00000001U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00010000U
+ // .. .. reg_ddrc_burstchop = 0x0
+ // .. .. ==> 0XF8006034[28:28] = 0x00000000U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006034, 0x13FF3FFFU ,0x00011054U),
+ // .. .. reg_ddrc_force_low_pri_n = 0x0
+ // .. .. ==> 0XF8006038[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_dq = 0x0
+ // .. .. ==> 0XF8006038[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_debug_mode = 0x0
+ // .. .. ==> 0XF8006038[6:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. .. reg_phy_wr_level_start = 0x0
+ // .. .. ==> 0XF8006038[7:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. .. reg_phy_rd_level_start = 0x0
+ // .. .. ==> 0XF8006038[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_phy_dq0_wait_t = 0x0
+ // .. .. ==> 0XF8006038[12:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00001E00U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006038, 0x00001FC3U ,0x00000000U),
+ // .. .. reg_ddrc_addrmap_bank_b0 = 0x7
+ // .. .. ==> 0XF800603C[3:0] = 0x00000007U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000007U
+ // .. .. reg_ddrc_addrmap_bank_b1 = 0x7
+ // .. .. ==> 0XF800603C[7:4] = 0x00000007U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000070U
+ // .. .. reg_ddrc_addrmap_bank_b2 = 0x7
+ // .. .. ==> 0XF800603C[11:8] = 0x00000007U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000700U
+ // .. .. reg_ddrc_addrmap_col_b5 = 0x0
+ // .. .. ==> 0XF800603C[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b6 = 0x0
+ // .. .. ==> 0XF800603C[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800603C, 0x000FFFFFU ,0x00000777U),
+ // .. .. reg_ddrc_addrmap_col_b2 = 0x0
+ // .. .. ==> 0XF8006040[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b3 = 0x0
+ // .. .. ==> 0XF8006040[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b4 = 0x0
+ // .. .. ==> 0XF8006040[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b7 = 0x0
+ // .. .. ==> 0XF8006040[15:12] = 0x00000000U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b8 = 0x0
+ // .. .. ==> 0XF8006040[19:16] = 0x00000000U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00000000U
+ // .. .. reg_ddrc_addrmap_col_b9 = 0xf
+ // .. .. ==> 0XF8006040[23:20] = 0x0000000FU
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00F00000U
+ // .. .. reg_ddrc_addrmap_col_b10 = 0xf
+ // .. .. ==> 0XF8006040[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. .. reg_ddrc_addrmap_col_b11 = 0xf
+ // .. .. ==> 0XF8006040[31:28] = 0x0000000FU
+ // .. .. ==> MASK : 0xF0000000U VAL : 0xF0000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006040, 0xFFFFFFFFU ,0xFFF00000U),
+ // .. .. reg_ddrc_addrmap_row_b0 = 0x6
+ // .. .. ==> 0XF8006044[3:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000006U
+ // .. .. reg_ddrc_addrmap_row_b1 = 0x6
+ // .. .. ==> 0XF8006044[7:4] = 0x00000006U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000060U
+ // .. .. reg_ddrc_addrmap_row_b2_11 = 0x6
+ // .. .. ==> 0XF8006044[11:8] = 0x00000006U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000600U
+ // .. .. reg_ddrc_addrmap_row_b12 = 0x6
+ // .. .. ==> 0XF8006044[15:12] = 0x00000006U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00006000U
+ // .. .. reg_ddrc_addrmap_row_b13 = 0x6
+ // .. .. ==> 0XF8006044[19:16] = 0x00000006U
+ // .. .. ==> MASK : 0x000F0000U VAL : 0x00060000U
+ // .. .. reg_ddrc_addrmap_row_b14 = 0x6
+ // .. .. ==> 0XF8006044[23:20] = 0x00000006U
+ // .. .. ==> MASK : 0x00F00000U VAL : 0x00600000U
+ // .. .. reg_ddrc_addrmap_row_b15 = 0xf
+ // .. .. ==> 0XF8006044[27:24] = 0x0000000FU
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x0F000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006044, 0x0FFFFFFFU ,0x0F666666U),
+ // .. .. reg_ddrc_rank0_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[2:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank0_wr_odt = 0x1
+ // .. .. ==> 0XF8006048[5:3] = 0x00000001U
+ // .. .. ==> MASK : 0x00000038U VAL : 0x00000008U
+ // .. .. reg_ddrc_rank1_rd_odt = 0x1
+ // .. .. ==> 0XF8006048[8:6] = 0x00000001U
+ // .. .. ==> MASK : 0x000001C0U VAL : 0x00000040U
+ // .. .. reg_ddrc_rank1_wr_odt = 0x1
+ // .. .. ==> 0XF8006048[11:9] = 0x00000001U
+ // .. .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. .. reg_phy_rd_local_odt = 0x0
+ // .. .. ==> 0XF8006048[13:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00003000U VAL : 0x00000000U
+ // .. .. reg_phy_wr_local_odt = 0x3
+ // .. .. ==> 0XF8006048[15:14] = 0x00000003U
+ // .. .. ==> MASK : 0x0000C000U VAL : 0x0000C000U
+ // .. .. reg_phy_idle_local_odt = 0x3
+ // .. .. ==> 0XF8006048[17:16] = 0x00000003U
+ // .. .. ==> MASK : 0x00030000U VAL : 0x00030000U
+ // .. .. reg_ddrc_rank2_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[20:18] = 0x00000000U
+ // .. .. ==> MASK : 0x001C0000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank2_wr_odt = 0x0
+ // .. .. ==> 0XF8006048[23:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00E00000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank3_rd_odt = 0x0
+ // .. .. ==> 0XF8006048[26:24] = 0x00000000U
+ // .. .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_rank3_wr_odt = 0x0
+ // .. .. ==> 0XF8006048[29:27] = 0x00000000U
+ // .. .. ==> MASK : 0x38000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006048, 0x3FFFFFFFU ,0x0003C248U),
+ // .. .. reg_phy_rd_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_wr_cmd_to_data = 0x0
+ // .. .. ==> 0XF8006050[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_phy_rdc_we_to_re_delay = 0x8
+ // .. .. ==> 0XF8006050[11:8] = 0x00000008U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000800U
+ // .. .. reg_phy_rdc_fifo_rst_disable = 0x0
+ // .. .. ==> 0XF8006050[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_phy_use_fixed_re = 0x1
+ // .. .. ==> 0XF8006050[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_rdc_fifo_rst_err_cnt_clr = 0x0
+ // .. .. ==> 0XF8006050[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_dis_phy_ctrl_rstn = 0x0
+ // .. .. ==> 0XF8006050[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_phy_clk_stall_level = 0x0
+ // .. .. ==> 0XF8006050[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[27:24] = 0x00000007U
+ // .. .. ==> MASK : 0x0F000000U VAL : 0x07000000U
+ // .. .. reg_phy_wrlvl_num_of_dq0 = 0x7
+ // .. .. ==> 0XF8006050[31:28] = 0x00000007U
+ // .. .. ==> MASK : 0xF0000000U VAL : 0x70000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006050, 0xFF0F8FFFU ,0x77010800U),
+ // .. .. reg_ddrc_dll_calib_to_min_x1024 = 0x1
+ // .. .. ==> 0XF8006058[7:0] = 0x00000001U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000001U
+ // .. .. reg_ddrc_dll_calib_to_max_x1024 = 0x1
+ // .. .. ==> 0XF8006058[15:8] = 0x00000001U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000100U
+ // .. .. reg_ddrc_dis_dll_calib = 0x0
+ // .. .. ==> 0XF8006058[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006058, 0x0001FFFFU ,0x00000101U),
+ // .. .. reg_ddrc_rd_odt_delay = 0x3
+ // .. .. ==> 0XF800605C[3:0] = 0x00000003U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000003U
+ // .. .. reg_ddrc_wr_odt_delay = 0x0
+ // .. .. ==> 0XF800605C[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. .. reg_ddrc_rd_odt_hold = 0x0
+ // .. .. ==> 0XF800605C[11:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000F00U VAL : 0x00000000U
+ // .. .. reg_ddrc_wr_odt_hold = 0x5
+ // .. .. ==> 0XF800605C[15:12] = 0x00000005U
+ // .. .. ==> MASK : 0x0000F000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800605C, 0x0000FFFFU ,0x00005003U),
+ // .. .. reg_ddrc_pageclose = 0x0
+ // .. .. ==> 0XF8006060[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_lpr_num_entries = 0x1f
+ // .. .. ==> 0XF8006060[6:1] = 0x0000001FU
+ // .. .. ==> MASK : 0x0000007EU VAL : 0x0000003EU
+ // .. .. reg_ddrc_auto_pre_en = 0x0
+ // .. .. ==> 0XF8006060[7:7] = 0x00000000U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. .. reg_ddrc_refresh_update_level = 0x0
+ // .. .. ==> 0XF8006060[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_wc = 0x0
+ // .. .. ==> 0XF8006060[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_collision_page_opt = 0x0
+ // .. .. ==> 0XF8006060[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_ddrc_selfref_en = 0x0
+ // .. .. ==> 0XF8006060[12:12] = 0x00000000U
+ // .. .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006060, 0x000017FFU ,0x0000003EU),
+ // .. .. reg_ddrc_go2critical_hysteresis = 0x0
+ // .. .. ==> 0XF8006064[12:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00001FE0U VAL : 0x00000000U
+ // .. .. reg_arb_go2critical_en = 0x1
+ // .. .. ==> 0XF8006064[17:17] = 0x00000001U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00020000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006064, 0x00021FE0U ,0x00020000U),
+ // .. .. reg_ddrc_wrlvl_ww = 0x41
+ // .. .. ==> 0XF8006068[7:0] = 0x00000041U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000041U
+ // .. .. reg_ddrc_rdlvl_rr = 0x41
+ // .. .. ==> 0XF8006068[15:8] = 0x00000041U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00004100U
+ // .. .. reg_ddrc_dfi_t_wlmrd = 0x28
+ // .. .. ==> 0XF8006068[25:16] = 0x00000028U
+ // .. .. ==> MASK : 0x03FF0000U VAL : 0x00280000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006068, 0x03FFFFFFU ,0x00284141U),
+ // .. .. dfi_t_ctrlupd_interval_min_x1024 = 0x10
+ // .. .. ==> 0XF800606C[7:0] = 0x00000010U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000010U
+ // .. .. dfi_t_ctrlupd_interval_max_x1024 = 0x16
+ // .. .. ==> 0XF800606C[15:8] = 0x00000016U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00001600U
+ // .. ..
+ EMIT_MASKWRITE(0XF800606C, 0x0000FFFFU ,0x00001610U),
+ // .. .. refresh_timer0_start_value_x32 = 0x0
+ // .. .. ==> 0XF80060A0[11:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000000U
+ // .. .. refresh_timer1_start_value_x32 = 0x8
+ // .. .. ==> 0XF80060A0[23:12] = 0x00000008U
+ // .. .. ==> MASK : 0x00FFF000U VAL : 0x00008000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A0, 0x00FFFFFFU ,0x00008000U),
+ // .. .. reg_ddrc_dis_auto_zq = 0x0
+ // .. .. ==> 0XF80060A4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_ddr3 = 0x1
+ // .. .. ==> 0XF80060A4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. reg_ddrc_t_mod = 0x200
+ // .. .. ==> 0XF80060A4[11:2] = 0x00000200U
+ // .. .. ==> MASK : 0x00000FFCU VAL : 0x00000800U
+ // .. .. reg_ddrc_t_zq_long_nop = 0x200
+ // .. .. ==> 0XF80060A4[21:12] = 0x00000200U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00200000U
+ // .. .. reg_ddrc_t_zq_short_nop = 0x40
+ // .. .. ==> 0XF80060A4[31:22] = 0x00000040U
+ // .. .. ==> MASK : 0xFFC00000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A4, 0xFFFFFFFFU ,0x10200802U),
+ // .. .. t_zq_short_interval_x1024 = 0xcb73
+ // .. .. ==> 0XF80060A8[19:0] = 0x0000CB73U
+ // .. .. ==> MASK : 0x000FFFFFU VAL : 0x0000CB73U
+ // .. .. dram_rstn_x1024 = 0x69
+ // .. .. ==> 0XF80060A8[27:20] = 0x00000069U
+ // .. .. ==> MASK : 0x0FF00000U VAL : 0x06900000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060A8, 0x0FFFFFFFU ,0x0690CB73U),
+ // .. .. deeppowerdown_en = 0x0
+ // .. .. ==> 0XF80060AC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. deeppowerdown_to_x1024 = 0xff
+ // .. .. ==> 0XF80060AC[8:1] = 0x000000FFU
+ // .. .. ==> MASK : 0x000001FEU VAL : 0x000001FEU
+ // .. ..
+ EMIT_MASKWRITE(0XF80060AC, 0x000001FFU ,0x000001FEU),
+ // .. .. dfi_wrlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[11:0] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00000FFFU VAL : 0x00000FFFU
+ // .. .. dfi_rdlvl_max_x1024 = 0xfff
+ // .. .. ==> 0XF80060B0[23:12] = 0x00000FFFU
+ // .. .. ==> MASK : 0x00FFF000U VAL : 0x00FFF000U
+ // .. .. ddrc_reg_twrlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. ddrc_reg_trdlvl_max_error = 0x0
+ // .. .. ==> 0XF80060B0[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dfi_wr_level_en = 0x1
+ // .. .. ==> 0XF80060B0[26:26] = 0x00000001U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x04000000U
+ // .. .. reg_ddrc_dfi_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF80060B0[27:27] = 0x00000001U
+ // .. .. ==> MASK : 0x08000000U VAL : 0x08000000U
+ // .. .. reg_ddrc_dfi_rd_data_eye_train = 0x1
+ // .. .. ==> 0XF80060B0[28:28] = 0x00000001U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B0, 0x1FFFFFFFU ,0x1CFFFFFFU),
+ // .. .. reg_ddrc_2t_delay = 0x0
+ // .. .. ==> 0XF80060B4[8:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000001FFU VAL : 0x00000000U
+ // .. .. reg_ddrc_skip_ocd = 0x1
+ // .. .. ==> 0XF80060B4[9:9] = 0x00000001U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. .. reg_ddrc_dis_pre_bypass = 0x0
+ // .. .. ==> 0XF80060B4[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B4, 0x000007FFU ,0x00000200U),
+ // .. .. reg_ddrc_dfi_t_rddata_en = 0x6
+ // .. .. ==> 0XF80060B8[4:0] = 0x00000006U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000006U
+ // .. .. reg_ddrc_dfi_t_ctrlup_min = 0x3
+ // .. .. ==> 0XF80060B8[14:5] = 0x00000003U
+ // .. .. ==> MASK : 0x00007FE0U VAL : 0x00000060U
+ // .. .. reg_ddrc_dfi_t_ctrlup_max = 0x40
+ // .. .. ==> 0XF80060B8[24:15] = 0x00000040U
+ // .. .. ==> MASK : 0x01FF8000U VAL : 0x00200000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060B8, 0x01FFFFFFU ,0x00200066U),
+ // .. .. START: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 1
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000003U),
+ // .. .. FINISH: RESET ECC ERROR
+ // .. .. Clear_Uncorrectable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. Clear_Correctable_DRAM_ECC_error = 0x0
+ // .. .. ==> 0XF80060C4[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C4, 0x00000003U ,0x00000000U),
+ // .. .. CORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060C8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. ECC_CORRECTED_BIT_NUM = 0x0
+ // .. .. ==> 0XF80060C8[7:1] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FEU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060C8, 0x000000FFU ,0x00000000U),
+ // .. .. UNCORR_ECC_LOG_VALID = 0x0
+ // .. .. ==> 0XF80060DC[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060DC, 0x00000001U ,0x00000000U),
+ // .. .. STAT_NUM_CORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[15:8] = 0x00000000U
+ // .. .. ==> MASK : 0x0000FF00U VAL : 0x00000000U
+ // .. .. STAT_NUM_UNCORR_ERR = 0x0
+ // .. .. ==> 0XF80060F0[7:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F0, 0x0000FFFFU ,0x00000000U),
+ // .. .. reg_ddrc_ecc_mode = 0x0
+ // .. .. ==> 0XF80060F4[2:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_scrub = 0x1
+ // .. .. ==> 0XF80060F4[3:3] = 0x00000001U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000008U
+ // .. ..
+ EMIT_MASKWRITE(0XF80060F4, 0x0000000FU ,0x00000008U),
+ // .. .. reg_phy_dif_on = 0x0
+ // .. .. ==> 0XF8006114[3:0] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000000U
+ // .. .. reg_phy_dif_off = 0x0
+ // .. .. ==> 0XF8006114[7:4] = 0x00000000U
+ // .. .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006114, 0x000000FFU ,0x00000000U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006118[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006118[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006118[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006118[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006118[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006118[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006118[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006118, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF800611C[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF800611C[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF800611C[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF800611C[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF800611C[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF800611C[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF800611C[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800611C, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006120[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006120[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006120[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006120[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006120[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006120[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006120[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006120, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_data_slice_in_use = 0x1
+ // .. .. ==> 0XF8006124[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_phy_rdlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_wrlvl_inc_mode = 0x0
+ // .. .. ==> 0XF8006124[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_tx = 0x0
+ // .. .. ==> 0XF8006124[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_board_lpbk_rx = 0x0
+ // .. .. ==> 0XF8006124[5:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. .. reg_phy_bist_shift_dq = 0x0
+ // .. .. ==> 0XF8006124[14:6] = 0x00000000U
+ // .. .. ==> MASK : 0x00007FC0U VAL : 0x00000000U
+ // .. .. reg_phy_bist_err_clr = 0x0
+ // .. .. ==> 0XF8006124[23:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00FF8000U VAL : 0x00000000U
+ // .. .. reg_phy_dq_offset = 0x40
+ // .. .. ==> 0XF8006124[30:24] = 0x00000040U
+ // .. .. ==> MASK : 0x7F000000U VAL : 0x40000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006124, 0x7FFFFFFFU ,0x40000001U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF800612C[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb0
+ // .. .. ==> 0XF800612C[19:10] = 0x000000B0U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800612C, 0x000FFFFFU ,0x0002C000U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x0
+ // .. .. ==> 0XF8006130[9:0] = 0x00000000U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000000U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xb1
+ // .. .. ==> 0XF8006130[19:10] = 0x000000B1U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002C400U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006130, 0x000FFFFFU ,0x0002C400U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006134[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbc
+ // .. .. ==> 0XF8006134[19:10] = 0x000000BCU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002F000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006134, 0x000FFFFFU ,0x0002F003U),
+ // .. .. reg_phy_wrlvl_init_ratio = 0x3
+ // .. .. ==> 0XF8006138[9:0] = 0x00000003U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000003U
+ // .. .. reg_phy_gatelvl_init_ratio = 0xbb
+ // .. .. ==> 0XF8006138[19:10] = 0x000000BBU
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x0002EC00U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006138, 0x000FFFFFU ,0x0002EC03U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006140[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006140[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006140[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006140, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006144[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006144[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006144[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006144, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF8006148[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006148[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006148[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006148, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_rd_dqs_slave_ratio = 0x35
+ // .. .. ==> 0XF800614C[9:0] = 0x00000035U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000035U
+ // .. .. reg_phy_rd_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800614C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_rd_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800614C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800614C, 0x000FFFFFU ,0x00000035U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006154[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006154[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006154[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006154, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x77
+ // .. .. ==> 0XF8006158[9:0] = 0x00000077U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000077U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006158[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006158[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006158, 0x000FFFFFU ,0x00000077U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF800615C[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF800615C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF800615C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800615C, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_wr_dqs_slave_ratio = 0x83
+ // .. .. ==> 0XF8006160[9:0] = 0x00000083U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x00000083U
+ // .. .. reg_phy_wr_dqs_slave_force = 0x0
+ // .. .. ==> 0XF8006160[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_dqs_slave_delay = 0x0
+ // .. .. ==> 0XF8006160[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006160, 0x000FFFFFU ,0x00000083U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x105
+ // .. .. ==> 0XF8006168[10:0] = 0x00000105U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000105U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006168[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006168[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006168, 0x001FFFFFU ,0x00000105U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x106
+ // .. .. ==> 0XF800616C[10:0] = 0x00000106U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000106U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF800616C[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF800616C[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800616C, 0x001FFFFFU ,0x00000106U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x111
+ // .. .. ==> 0XF8006170[10:0] = 0x00000111U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000111U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006170[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006170[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006170, 0x001FFFFFU ,0x00000111U),
+ // .. .. reg_phy_fifo_we_slave_ratio = 0x110
+ // .. .. ==> 0XF8006174[10:0] = 0x00000110U
+ // .. .. ==> MASK : 0x000007FFU VAL : 0x00000110U
+ // .. .. reg_phy_fifo_we_in_force = 0x0
+ // .. .. ==> 0XF8006174[11:11] = 0x00000000U
+ // .. .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. .. reg_phy_fifo_we_in_delay = 0x0
+ // .. .. ==> 0XF8006174[20:12] = 0x00000000U
+ // .. .. ==> MASK : 0x001FF000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006174, 0x001FFFFFU ,0x00000110U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF800617C[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF800617C[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF800617C[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800617C, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xb7
+ // .. .. ==> 0XF8006180[9:0] = 0x000000B7U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000B7U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006180[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006180[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006180, 0x000FFFFFU ,0x000000B7U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006184[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006184[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006184[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006184, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_wr_data_slave_ratio = 0xc3
+ // .. .. ==> 0XF8006188[9:0] = 0x000000C3U
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000000C3U
+ // .. .. reg_phy_wr_data_slave_force = 0x0
+ // .. .. ==> 0XF8006188[10:10] = 0x00000000U
+ // .. .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. .. reg_phy_wr_data_slave_delay = 0x0
+ // .. .. ==> 0XF8006188[19:11] = 0x00000000U
+ // .. .. ==> MASK : 0x000FF800U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006188, 0x000FFFFFU ,0x000000C3U),
+ // .. .. reg_phy_loopback = 0x0
+ // .. .. ==> 0XF8006190[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_phy_bl2 = 0x0
+ // .. .. ==> 0XF8006190[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_phy_at_spd_atpg = 0x0
+ // .. .. ==> 0XF8006190[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_phy_bist_enable = 0x0
+ // .. .. ==> 0XF8006190[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. reg_phy_bist_force_err = 0x0
+ // .. .. ==> 0XF8006190[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. reg_phy_bist_mode = 0x0
+ // .. .. ==> 0XF8006190[6:5] = 0x00000000U
+ // .. .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. .. reg_phy_invert_clkout = 0x1
+ // .. .. ==> 0XF8006190[7:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. .. reg_phy_all_dq_mpr_rd_resp = 0x0
+ // .. .. ==> 0XF8006190[8:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. .. reg_phy_sel_logic = 0x0
+ // .. .. ==> 0XF8006190[9:9] = 0x00000000U
+ // .. .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_ratio = 0x100
+ // .. .. ==> 0XF8006190[19:10] = 0x00000100U
+ // .. .. ==> MASK : 0x000FFC00U VAL : 0x00040000U
+ // .. .. reg_phy_ctrl_slave_force = 0x0
+ // .. .. ==> 0XF8006190[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006190[27:21] = 0x00000000U
+ // .. .. ==> MASK : 0x0FE00000U VAL : 0x00000000U
+ // .. .. reg_phy_use_rank0_delays = 0x1
+ // .. .. ==> 0XF8006190[28:28] = 0x00000001U
+ // .. .. ==> MASK : 0x10000000U VAL : 0x10000000U
+ // .. .. reg_phy_lpddr = 0x0
+ // .. .. ==> 0XF8006190[29:29] = 0x00000000U
+ // .. .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // .. .. reg_phy_cmd_latency = 0x0
+ // .. .. ==> 0XF8006190[30:30] = 0x00000000U
+ // .. .. ==> MASK : 0x40000000U VAL : 0x00000000U
+ // .. .. reg_phy_int_lpbk = 0x0
+ // .. .. ==> 0XF8006190[31:31] = 0x00000000U
+ // .. .. ==> MASK : 0x80000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006190, 0xFFFFFFFFU ,0x10040080U),
+ // .. .. reg_phy_wr_rl_delay = 0x2
+ // .. .. ==> 0XF8006194[4:0] = 0x00000002U
+ // .. .. ==> MASK : 0x0000001FU VAL : 0x00000002U
+ // .. .. reg_phy_rd_rl_delay = 0x4
+ // .. .. ==> 0XF8006194[9:5] = 0x00000004U
+ // .. .. ==> MASK : 0x000003E0U VAL : 0x00000080U
+ // .. .. reg_phy_dll_lock_diff = 0xf
+ // .. .. ==> 0XF8006194[13:10] = 0x0000000FU
+ // .. .. ==> MASK : 0x00003C00U VAL : 0x00003C00U
+ // .. .. reg_phy_use_wr_level = 0x1
+ // .. .. ==> 0XF8006194[14:14] = 0x00000001U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00004000U
+ // .. .. reg_phy_use_rd_dqs_gate_level = 0x1
+ // .. .. ==> 0XF8006194[15:15] = 0x00000001U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00008000U
+ // .. .. reg_phy_use_rd_data_eye_level = 0x1
+ // .. .. ==> 0XF8006194[16:16] = 0x00000001U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00010000U
+ // .. .. reg_phy_dis_calib_rst = 0x0
+ // .. .. ==> 0XF8006194[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_phy_ctrl_slave_delay = 0x0
+ // .. .. ==> 0XF8006194[19:18] = 0x00000000U
+ // .. .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006194, 0x000FFFFFU ,0x0001FC82U),
+ // .. .. reg_arb_page_addr_mask = 0x0
+ // .. .. ==> 0XF8006204[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006204, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006208[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006208[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006208[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006208, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF800620C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF800620C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF800620C[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800620C, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006210[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006210[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006210[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006210, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_wr_portn = 0x3ff
+ // .. .. ==> 0XF8006214[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_wr_portn = 0x0
+ // .. .. ==> 0XF8006214[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_rmw_portn = 0x1
+ // .. .. ==> 0XF8006214[19:19] = 0x00000001U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006214, 0x000F03FFU ,0x000803FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006218[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006218[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006218, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF800621C[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF800621C[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF800621C, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006220[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006220[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006220, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_arb_pri_rd_portn = 0x3ff
+ // .. .. ==> 0XF8006224[9:0] = 0x000003FFU
+ // .. .. ==> MASK : 0x000003FFU VAL : 0x000003FFU
+ // .. .. reg_arb_disable_aging_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. .. reg_arb_disable_urgent_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[17:17] = 0x00000000U
+ // .. .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. .. reg_arb_dis_page_match_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[18:18] = 0x00000000U
+ // .. .. ==> MASK : 0x00040000U VAL : 0x00000000U
+ // .. .. reg_arb_set_hpr_rd_portn = 0x0
+ // .. .. ==> 0XF8006224[19:19] = 0x00000000U
+ // .. .. ==> MASK : 0x00080000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006224, 0x000F03FFU ,0x000003FFU),
+ // .. .. reg_ddrc_lpddr2 = 0x0
+ // .. .. ==> 0XF80062A8[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. reg_ddrc_per_bank_refresh = 0x0
+ // .. .. ==> 0XF80062A8[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_derate_enable = 0x0
+ // .. .. ==> 0XF80062A8[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. reg_ddrc_mr4_margin = 0x0
+ // .. .. ==> 0XF80062A8[11:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062A8, 0x00000FF7U ,0x00000000U),
+ // .. .. reg_ddrc_mr4_read_interval = 0x0
+ // .. .. ==> 0XF80062AC[31:0] = 0x00000000U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062AC, 0xFFFFFFFFU ,0x00000000U),
+ // .. .. reg_ddrc_min_stable_clock_x1 = 0x5
+ // .. .. ==> 0XF80062B0[3:0] = 0x00000005U
+ // .. .. ==> MASK : 0x0000000FU VAL : 0x00000005U
+ // .. .. reg_ddrc_idle_after_reset_x32 = 0x12
+ // .. .. ==> 0XF80062B0[11:4] = 0x00000012U
+ // .. .. ==> MASK : 0x00000FF0U VAL : 0x00000120U
+ // .. .. reg_ddrc_t_mrw = 0x5
+ // .. .. ==> 0XF80062B0[21:12] = 0x00000005U
+ // .. .. ==> MASK : 0x003FF000U VAL : 0x00005000U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B0, 0x003FFFFFU ,0x00005125U),
+ // .. .. reg_ddrc_max_auto_init_x1024 = 0xa8
+ // .. .. ==> 0XF80062B4[7:0] = 0x000000A8U
+ // .. .. ==> MASK : 0x000000FFU VAL : 0x000000A8U
+ // .. .. reg_ddrc_dev_zqinit_x32 = 0x12
+ // .. .. ==> 0XF80062B4[17:8] = 0x00000012U
+ // .. .. ==> MASK : 0x0003FF00U VAL : 0x00001200U
+ // .. ..
+ EMIT_MASKWRITE(0XF80062B4, 0x0003FFFFU ,0x000012A8U),
+ // .. .. START: POLL ON DCI STATUS
+ // .. .. DONE = 1
+ // .. .. ==> 0XF8000B74[13:13] = 0x00000001U
+ // .. .. ==> MASK : 0x00002000U VAL : 0x00002000U
+ // .. ..
+ EMIT_MASKPOLL(0XF8000B74, 0x00002000U),
+ // .. .. FINISH: POLL ON DCI STATUS
+ // .. .. START: UNLOCK DDR
+ // .. .. reg_ddrc_soft_rstb = 0x1
+ // .. .. ==> 0XF8006000[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. reg_ddrc_powerdown_en = 0x0
+ // .. .. ==> 0XF8006000[1:1] = 0x00000000U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. .. reg_ddrc_data_bus_width = 0x0
+ // .. .. ==> 0XF8006000[3:2] = 0x00000000U
+ // .. .. ==> MASK : 0x0000000CU VAL : 0x00000000U
+ // .. .. reg_ddrc_burst8_refresh = 0x0
+ // .. .. ==> 0XF8006000[6:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000070U VAL : 0x00000000U
+ // .. .. reg_ddrc_rdwr_idle_gap = 1
+ // .. .. ==> 0XF8006000[13:7] = 0x00000001U
+ // .. .. ==> MASK : 0x00003F80U VAL : 0x00000080U
+ // .. .. reg_ddrc_dis_rd_bypass = 0x0
+ // .. .. ==> 0XF8006000[14:14] = 0x00000000U
+ // .. .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_act_bypass = 0x0
+ // .. .. ==> 0XF8006000[15:15] = 0x00000000U
+ // .. .. ==> MASK : 0x00008000U VAL : 0x00000000U
+ // .. .. reg_ddrc_dis_auto_refresh = 0x0
+ // .. .. ==> 0XF8006000[16:16] = 0x00000000U
+ // .. .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8006000, 0x0001FFFFU ,0x00000081U),
+ // .. .. FINISH: UNLOCK DDR
+ // .. .. START: CHECK DDR STATUS
+ // .. .. ddrc_reg_operating_mode = 1
+ // .. .. ==> 0XF8006054[2:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000007U VAL : 0x00000001U
+ // .. ..
+ EMIT_MASKPOLL(0XF8006054, 0x00000007U),
+ // .. .. FINISH: CHECK DDR STATUS
+ // .. FINISH: DDR INITIALIZATION
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_mio_init_data_1_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: OCM REMAPPING
+ // .. FINISH: OCM REMAPPING
+ // .. START: DDRIOB SETTINGS
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B40[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B40[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B40[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B40[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B40[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B40[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B40[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B40[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B40, 0x00000FFFU ,0x00000600U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B44[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B44[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B44[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B44[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B44[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B44[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B44[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B44[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B44, 0x00000FFFU ,0x00000600U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B48[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B48[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B48[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B48[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B48[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B48[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B48[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B48[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000FFFU ,0x00000672U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B4C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x1
+ // .. ==> 0XF8000B4C[2:1] = 0x00000001U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000002U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B4C[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B4C[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B4C[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B4C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B4C[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B4C[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000FFFU ,0x00000672U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B50[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B50[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B50[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B50[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B50[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B50[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B50[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B50[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000FFFU ,0x00000674U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B54[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x2
+ // .. ==> 0XF8000B54[2:1] = 0x00000002U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000004U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B54[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x1
+ // .. ==> 0XF8000B54[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. DCR_TYPE = 0x3
+ // .. ==> 0XF8000B54[6:5] = 0x00000003U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000060U
+ // .. IBUF_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0
+ // .. ==> 0XF8000B54[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B54[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B54[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000FFFU ,0x00000674U),
+ // .. INP_POWER = 0x0
+ // .. ==> 0XF8000B58[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. INP_TYPE = 0x0
+ // .. ==> 0XF8000B58[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. DCI_UPDATE = 0x0
+ // .. ==> 0XF8000B58[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. TERM_EN = 0x0
+ // .. ==> 0XF8000B58[4:4] = 0x00000000U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. DCR_TYPE = 0x0
+ // .. ==> 0XF8000B58[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. IBUF_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. TERM_DISABLE_MODE = 0x0
+ // .. ==> 0XF8000B58[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. OUTPUT_EN = 0x3
+ // .. ==> 0XF8000B58[10:9] = 0x00000003U
+ // .. ==> MASK : 0x00000600U VAL : 0x00000600U
+ // .. PULLUP_EN = 0x0
+ // .. ==> 0XF8000B58[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B58, 0x00000FFFU ,0x00000600U),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B5C[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B5C[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x3
+ // .. ==> 0XF8000B5C[18:14] = 0x00000003U
+ // .. ==> MASK : 0x0007C000U VAL : 0x0000C000U
+ // .. SLEW_N = 0x3
+ // .. ==> 0XF8000B5C[23:19] = 0x00000003U
+ // .. ==> MASK : 0x00F80000U VAL : 0x00180000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B5C[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B5C[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B5C, 0xFFFFFFFFU ,0x0018C61CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B60[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B60[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B60[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B60[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B60[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B60[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B60, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B64[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B64[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B64[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B64[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B64[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B64[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B64, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. DRIVE_P = 0x1c
+ // .. ==> 0XF8000B68[6:0] = 0x0000001CU
+ // .. ==> MASK : 0x0000007FU VAL : 0x0000001CU
+ // .. DRIVE_N = 0xc
+ // .. ==> 0XF8000B68[13:7] = 0x0000000CU
+ // .. ==> MASK : 0x00003F80U VAL : 0x00000600U
+ // .. SLEW_P = 0x6
+ // .. ==> 0XF8000B68[18:14] = 0x00000006U
+ // .. ==> MASK : 0x0007C000U VAL : 0x00018000U
+ // .. SLEW_N = 0x1f
+ // .. ==> 0XF8000B68[23:19] = 0x0000001FU
+ // .. ==> MASK : 0x00F80000U VAL : 0x00F80000U
+ // .. GTL = 0x0
+ // .. ==> 0XF8000B68[26:24] = 0x00000000U
+ // .. ==> MASK : 0x07000000U VAL : 0x00000000U
+ // .. RTERM = 0x0
+ // .. ==> 0XF8000B68[31:27] = 0x00000000U
+ // .. ==> MASK : 0xF8000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B68, 0xFFFFFFFFU ,0x00F9861CU),
+ // .. VREF_INT_EN = 0x1
+ // .. ==> 0XF8000B6C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. VREF_SEL = 0x4
+ // .. ==> 0XF8000B6C[4:1] = 0x00000004U
+ // .. ==> MASK : 0x0000001EU VAL : 0x00000008U
+ // .. VREF_EXT_EN = 0x0
+ // .. ==> 0XF8000B6C[6:5] = 0x00000000U
+ // .. ==> MASK : 0x00000060U VAL : 0x00000000U
+ // .. VREF_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[8:7] = 0x00000000U
+ // .. ==> MASK : 0x00000180U VAL : 0x00000000U
+ // .. REFIO_EN = 0x1
+ // .. ==> 0XF8000B6C[9:9] = 0x00000001U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000200U
+ // .. REFIO_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DRST_B_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. CKE_PULLUP_EN = 0x0
+ // .. ==> 0XF8000B6C[14:14] = 0x00000000U
+ // .. ==> MASK : 0x00004000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000B6C, 0x000073FFU ,0x00000209U),
+ // .. .. START: ASSERT RESET
+ // .. .. RESET = 1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000021U),
+ // .. .. FINISH: ASSERT RESET
+ // .. .. START: DEASSERT RESET
+ // .. .. RESET = 0
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000000U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x00000021U ,0x00000020U),
+ // .. .. FINISH: DEASSERT RESET
+ // .. .. RESET = 0x1
+ // .. .. ==> 0XF8000B70[0:0] = 0x00000001U
+ // .. .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. .. ENABLE = 0x1
+ // .. .. ==> 0XF8000B70[1:1] = 0x00000001U
+ // .. .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. .. VRP_TRI = 0x0
+ // .. .. ==> 0XF8000B70[2:2] = 0x00000000U
+ // .. .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. .. VRN_TRI = 0x0
+ // .. .. ==> 0XF8000B70[3:3] = 0x00000000U
+ // .. .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. .. VRP_OUT = 0x0
+ // .. .. ==> 0XF8000B70[4:4] = 0x00000000U
+ // .. .. ==> MASK : 0x00000010U VAL : 0x00000000U
+ // .. .. VRN_OUT = 0x1
+ // .. .. ==> 0XF8000B70[5:5] = 0x00000001U
+ // .. .. ==> MASK : 0x00000020U VAL : 0x00000020U
+ // .. .. NREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[7:6] = 0x00000000U
+ // .. .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. .. NREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[10:8] = 0x00000000U
+ // .. .. ==> MASK : 0x00000700U VAL : 0x00000000U
+ // .. .. NREF_OPT4 = 0x1
+ // .. .. ==> 0XF8000B70[13:11] = 0x00000001U
+ // .. .. ==> MASK : 0x00003800U VAL : 0x00000800U
+ // .. .. PREF_OPT1 = 0x0
+ // .. .. ==> 0XF8000B70[16:14] = 0x00000000U
+ // .. .. ==> MASK : 0x0001C000U VAL : 0x00000000U
+ // .. .. PREF_OPT2 = 0x0
+ // .. .. ==> 0XF8000B70[19:17] = 0x00000000U
+ // .. .. ==> MASK : 0x000E0000U VAL : 0x00000000U
+ // .. .. UPDATE_CONTROL = 0x0
+ // .. .. ==> 0XF8000B70[20:20] = 0x00000000U
+ // .. .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. .. INIT_COMPLETE = 0x0
+ // .. .. ==> 0XF8000B70[21:21] = 0x00000000U
+ // .. .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. .. TST_CLK = 0x0
+ // .. .. ==> 0XF8000B70[22:22] = 0x00000000U
+ // .. .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. .. TST_HLN = 0x0
+ // .. .. ==> 0XF8000B70[23:23] = 0x00000000U
+ // .. .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. .. TST_HLP = 0x0
+ // .. .. ==> 0XF8000B70[24:24] = 0x00000000U
+ // .. .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. .. TST_RST = 0x0
+ // .. .. ==> 0XF8000B70[25:25] = 0x00000000U
+ // .. .. ==> MASK : 0x02000000U VAL : 0x00000000U
+ // .. .. INT_DCI_EN = 0x0
+ // .. .. ==> 0XF8000B70[26:26] = 0x00000000U
+ // .. .. ==> MASK : 0x04000000U VAL : 0x00000000U
+ // .. ..
+ EMIT_MASKWRITE(0XF8000B70, 0x07FFFFFFU ,0x00000823U),
+ // .. FINISH: DDRIOB SETTINGS
+ // .. START: MIO PROGRAMMING
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000700[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000700[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000700[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000700[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000700[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000700[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000700[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000700[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000700[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000700, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000704[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000704[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000704[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000704[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000704[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000704[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000704[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000704[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000704[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000704, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000708[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000708[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000708[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000708[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000708[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000708[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000708[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000708[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000708[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000708, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800070C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800070C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800070C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800070C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800070C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800070C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800070C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800070C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800070C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800070C, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000710[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000710[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000710[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000710[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000710[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000710[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000710[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000710[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000710[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000710, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000714[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000714[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000714[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000714[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000714[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000714[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000714[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000714[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000714[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000714, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000718[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000718[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000718[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000718[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000718[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000718[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000718[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000718[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000718[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000718, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800071C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800071C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800071C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800071C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800071C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800071C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800071C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800071C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800071C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800071C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000720[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000720[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000720[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000720[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000720[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000720[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000720[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000720[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000720[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000720, 0x00003FFFU ,0x00000602U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000724[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000724[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000724[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000724[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000724[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000724[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000724[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000724[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000724[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000724, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000728[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000728[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000728[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000728[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000728[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000728[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000728[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000728[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000728[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000728, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800072C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800072C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800072C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800072C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800072C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800072C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800072C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800072C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800072C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800072C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000730[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000730[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000730[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000730[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000730[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000730[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000730[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000730[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000730[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000730, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000734[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000734[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000734[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000734[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000734[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000734[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000734[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000734[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000734[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000734, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000738[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000738[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000738[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000738[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000738[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000738[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF8000738[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000738[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000738[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000738, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800073C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800073C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800073C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800073C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800073C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800073C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 3
+ // .. ==> 0XF800073C[11:9] = 0x00000003U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000600U
+ // .. PULLUP = 0
+ // .. ==> 0XF800073C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800073C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800073C, 0x00003FFFU ,0x00000600U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000740[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000740[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000740[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000740[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000740[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000740[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000740[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000740[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000740[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000740, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000744[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000744[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000744[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000744[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000744[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000744[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000744[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000744[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000744[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000744, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000748[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000748[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000748[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000748[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000748[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000748[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000748[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000748[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000748[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000748, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800074C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800074C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800074C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800074C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800074C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800074C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800074C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800074C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800074C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800074C, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000750[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000750[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000750[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000750[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000750[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000750[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000750[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000750[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000750[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000750, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000754[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000754[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000754[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000754[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000754[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000754[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000754[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000754[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000754[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000754, 0x00003FFFU ,0x00000202U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000758[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000758[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000758[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000758[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000758[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000758[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000758[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000758[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000758[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000758, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800075C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800075C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800075C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800075C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800075C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800075C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800075C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800075C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800075C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800075C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000760[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000760[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000760[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000760[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000760[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000760[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000760[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000760[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000760[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000760, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000764[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000764[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000764[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000764[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000764[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000764[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000764[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000764[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000764[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000764, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000768[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF8000768[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF8000768[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000768[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000768[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000768[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000768[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000768[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000768[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000768, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800076C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 1
+ // .. ==> 0XF800076C[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. L1_SEL = 0
+ // .. ==> 0XF800076C[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800076C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800076C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800076C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800076C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800076C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800076C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800076C, 0x00003FFFU ,0x00000203U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000770[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000770[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000770[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000770[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000770[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000770[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000770[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000770[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000770[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000770, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000774[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000774[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000774[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000774[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000774[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000774[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000774[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000774[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000774[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000774, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000778[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000778[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000778[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000778[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000778[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000778[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000778[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000778[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000778[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000778, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF800077C[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800077C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800077C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800077C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800077C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800077C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800077C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800077C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800077C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800077C, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000780[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000780[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000780[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000780[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000780[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000780[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000780[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000780[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000780[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000780, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000784[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000784[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000784[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000784[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000784[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000784[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000784[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000784[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000784[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000784, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000788[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000788[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000788[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000788[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000788[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000788[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000788[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000788[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000788[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000788, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800078C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800078C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800078C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800078C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800078C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800078C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800078C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800078C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800078C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800078C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF8000790[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000790[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000790[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000790[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000790[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000790[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000790[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000790[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000790[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000790, 0x00003FFFU ,0x00000205U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000794[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000794[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000794[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000794[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000794[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000794[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000794[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000794[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000794[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000794, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF8000798[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF8000798[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF8000798[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF8000798[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF8000798[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF8000798[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF8000798[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF8000798[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF8000798[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000798, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF800079C[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF800079C[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 1
+ // .. ==> 0XF800079C[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. L2_SEL = 0
+ // .. ==> 0XF800079C[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF800079C[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF800079C[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF800079C[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF800079C[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF800079C[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF800079C, 0x00003FFFU ,0x00000204U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007A8[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007A8[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007A8[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007A8[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007A8[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007A8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007A8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007A8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007A8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007A8, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007AC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007AC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007AC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007AC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007AC[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007AC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007AC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007AC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007AC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007AC, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007B4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007B4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007B4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007B4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007B4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007B4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B4, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007B8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007B8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007B8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007B8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007B8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007B8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007BC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007BC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007BC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007BC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007BC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007BC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007BC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007BC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007BC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007BC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007C0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C0[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C0, 0x00003FFFU ,0x000002E0U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C4[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007C4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007C4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007C4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 7
+ // .. ==> 0XF80007C4[7:5] = 0x00000007U
+ // .. ==> MASK : 0x000000E0U VAL : 0x000000E0U
+ // .. Speed = 0
+ // .. ==> 0XF80007C4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C4, 0x00003FFFU ,0x000002E1U),
+ // .. TRI_ENABLE = 1
+ // .. ==> 0XF80007C8[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // .. Speed = 0
+ // .. ==> 0XF80007C8[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007C8[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007C8[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007C8[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007C8, 0x00003F01U ,0x00000201U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007CC[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007CC[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007CC[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007CC[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 0
+ // .. ==> 0XF80007CC[7:5] = 0x00000000U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000000U
+ // .. Speed = 0
+ // .. ==> 0XF80007CC[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007CC[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007CC[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007CC[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007CC, 0x00003FFFU ,0x00000200U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D0[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D0[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D0[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D0[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D0[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D0[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D0[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D0[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D0[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D0, 0x00003FFFU ,0x00000280U),
+ // .. TRI_ENABLE = 0
+ // .. ==> 0XF80007D4[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // .. L0_SEL = 0
+ // .. ==> 0XF80007D4[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. L1_SEL = 0
+ // .. ==> 0XF80007D4[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. L2_SEL = 0
+ // .. ==> 0XF80007D4[4:3] = 0x00000000U
+ // .. ==> MASK : 0x00000018U VAL : 0x00000000U
+ // .. L3_SEL = 4
+ // .. ==> 0XF80007D4[7:5] = 0x00000004U
+ // .. ==> MASK : 0x000000E0U VAL : 0x00000080U
+ // .. Speed = 0
+ // .. ==> 0XF80007D4[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. IO_Type = 1
+ // .. ==> 0XF80007D4[11:9] = 0x00000001U
+ // .. ==> MASK : 0x00000E00U VAL : 0x00000200U
+ // .. PULLUP = 0
+ // .. ==> 0XF80007D4[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. DisableRcvr = 0
+ // .. ==> 0XF80007D4[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF80007D4, 0x00003FFFU ,0x00000280U),
+ // .. SDIO0_WP_SEL = 50
+ // .. ==> 0XF8000830[5:0] = 0x00000032U
+ // .. ==> MASK : 0x0000003FU VAL : 0x00000032U
+ // .. SDIO0_CD_SEL = 46
+ // .. ==> 0XF8000830[21:16] = 0x0000002EU
+ // .. ==> MASK : 0x003F0000U VAL : 0x002E0000U
+ // ..
+ EMIT_MASKWRITE(0XF8000830, 0x003F003FU ,0x002E0032U),
+ // .. FINISH: MIO PROGRAMMING
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_peripherals_init_data_1_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B48[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B48, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B4C[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B4C, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B50[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B50, 0x00000180U ,0x00000180U),
+ // .. IBUF_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[7:7] = 0x00000001U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000080U
+ // .. TERM_DISABLE_MODE = 0x1
+ // .. ==> 0XF8000B54[8:8] = 0x00000001U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000100U
+ // ..
+ EMIT_MASKWRITE(0XF8000B54, 0x00000180U ,0x00000180U),
+ // .. FINISH: DDR TERM/IBUF_DISABLE_MODE SETTINGS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // .. START: SRAM/NOR SET OPMODE
+ // .. FINISH: SRAM/NOR SET OPMODE
+ // .. START: UART REGISTERS
+ // .. BDIV = 0x6
+ // .. ==> 0XE0001034[7:0] = 0x00000006U
+ // .. ==> MASK : 0x000000FFU VAL : 0x00000006U
+ // ..
+ EMIT_MASKWRITE(0XE0001034, 0x000000FFU ,0x00000006U),
+ // .. CD = 0x3e
+ // .. ==> 0XE0001018[15:0] = 0x0000003EU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000003EU
+ // ..
+ EMIT_MASKWRITE(0XE0001018, 0x0000FFFFU ,0x0000003EU),
+ // .. STPBRK = 0x0
+ // .. ==> 0XE0001000[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. STTBRK = 0x0
+ // .. ==> 0XE0001000[7:7] = 0x00000000U
+ // .. ==> MASK : 0x00000080U VAL : 0x00000000U
+ // .. RSTTO = 0x0
+ // .. ==> 0XE0001000[6:6] = 0x00000000U
+ // .. ==> MASK : 0x00000040U VAL : 0x00000000U
+ // .. TXDIS = 0x0
+ // .. ==> 0XE0001000[5:5] = 0x00000000U
+ // .. ==> MASK : 0x00000020U VAL : 0x00000000U
+ // .. TXEN = 0x1
+ // .. ==> 0XE0001000[4:4] = 0x00000001U
+ // .. ==> MASK : 0x00000010U VAL : 0x00000010U
+ // .. RXDIS = 0x0
+ // .. ==> 0XE0001000[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. RXEN = 0x1
+ // .. ==> 0XE0001000[2:2] = 0x00000001U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000004U
+ // .. TXRES = 0x1
+ // .. ==> 0XE0001000[1:1] = 0x00000001U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000002U
+ // .. RXRES = 0x1
+ // .. ==> 0XE0001000[0:0] = 0x00000001U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000001U
+ // ..
+ EMIT_MASKWRITE(0XE0001000, 0x000001FFU ,0x00000017U),
+ // .. IRMODE = 0x0
+ // .. ==> 0XE0001004[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. UCLKEN = 0x0
+ // .. ==> 0XE0001004[10:10] = 0x00000000U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. CHMODE = 0x0
+ // .. ==> 0XE0001004[9:8] = 0x00000000U
+ // .. ==> MASK : 0x00000300U VAL : 0x00000000U
+ // .. NBSTOP = 0x0
+ // .. ==> 0XE0001004[7:6] = 0x00000000U
+ // .. ==> MASK : 0x000000C0U VAL : 0x00000000U
+ // .. PAR = 0x4
+ // .. ==> 0XE0001004[5:3] = 0x00000004U
+ // .. ==> MASK : 0x00000038U VAL : 0x00000020U
+ // .. CHRL = 0x0
+ // .. ==> 0XE0001004[2:1] = 0x00000000U
+ // .. ==> MASK : 0x00000006U VAL : 0x00000000U
+ // .. CLKS = 0x0
+ // .. ==> 0XE0001004[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XE0001004, 0x00000FFFU ,0x00000020U),
+ // .. FINISH: UART REGISTERS
+ // .. START: QSPI REGISTERS
+ // .. Holdb_dr = 1
+ // .. ==> 0XE000D000[19:19] = 0x00000001U
+ // .. ==> MASK : 0x00080000U VAL : 0x00080000U
+ // ..
+ EMIT_MASKWRITE(0XE000D000, 0x00080000U ,0x00080000U),
+ // .. FINISH: QSPI REGISTERS
+ // .. START: PL POWER ON RESET REGISTERS
+ // .. PCFG_POR_CNT_4K = 0
+ // .. ==> 0XF8007000[29:29] = 0x00000000U
+ // .. ==> MASK : 0x20000000U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8007000, 0x20000000U ,0x00000000U),
+ // .. FINISH: PL POWER ON RESET REGISTERS
+ // .. START: SMC TIMING CALCULATION REGISTER UPDATE
+ // .. .. START: NAND SET CYCLE
+ // .. .. FINISH: NAND SET CYCLE
+ // .. .. START: OPMODE
+ // .. .. FINISH: OPMODE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: SRAM/NOR CS0 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS0 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS0 BASE ADDRESS
+ // .. .. FINISH: NOR CS0 BASE ADDRESS
+ // .. .. START: SRAM/NOR CS1 SET CYCLE
+ // .. .. FINISH: SRAM/NOR CS1 SET CYCLE
+ // .. .. START: DIRECT COMMAND
+ // .. .. FINISH: DIRECT COMMAND
+ // .. .. START: NOR CS1 BASE ADDRESS
+ // .. .. FINISH: NOR CS1 BASE ADDRESS
+ // .. .. START: USB RESET
+ // .. .. .. START: USB0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. DIRECTION_0 = 0x80
+ // .. .. .. .. ==> 0XE000A204[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A204, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. OP_ENABLE_0 = 0x80
+ // .. .. .. .. ==> 0XE000A208[31:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0xFFFFFFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A208, 0xFFFFFFFFU ,0x00000080U),
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x0
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000000U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000000U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0000U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. MASK_0_LSW = 0xff7f
+ // .. .. .. .. ==> 0XE000A000[31:16] = 0x0000FF7FU
+ // .. .. .. .. ==> MASK : 0xFFFF0000U VAL : 0xFF7F0000U
+ // .. .. .. .. DATA_0_LSW = 0x80
+ // .. .. .. .. ==> 0XE000A000[15:0] = 0x00000080U
+ // .. .. .. .. ==> MASK : 0x0000FFFFU VAL : 0x00000080U
+ // .. .. .. ..
+ EMIT_MASKWRITE(0XE000A000, 0xFFFFFFFFU ,0xFF7F0080U),
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB0 RESET
+ // .. .. .. START: USB1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: USB1 RESET
+ // .. .. FINISH: USB RESET
+ // .. .. START: ENET RESET
+ // .. .. .. START: ENET0 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET0 RESET
+ // .. .. .. START: ENET1 RESET
+ // .. .. .. .. START: DIR MODE BANK 0
+ // .. .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. .. START: DIR MODE BANK 1
+ // .. .. .. .. FINISH: DIR MODE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. .. .. START: OUTPUT ENABLE BANK 1
+ // .. .. .. .. FINISH: OUTPUT ENABLE BANK 1
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: ENET1 RESET
+ // .. .. FINISH: ENET RESET
+ // .. .. START: I2C RESET
+ // .. .. .. START: I2C0 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C0 RESET
+ // .. .. .. START: I2C1 RESET
+ // .. .. .. .. START: DIR MODE GPIO BANK0
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK0
+ // .. .. .. .. START: DIR MODE GPIO BANK1
+ // .. .. .. .. FINISH: DIR MODE GPIO BANK1
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: OUTPUT ENABLE
+ // .. .. .. .. FINISH: OUTPUT ENABLE
+ // .. .. .. .. START: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW LOW BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW LOW BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW LOW BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW LOW BANK [53:48]
+ // .. .. .. .. START: ADD 1 MS DELAY
+ // .. .. .. ..
+ EMIT_MASKDELAY(0XF8F00200, 1),
+ // .. .. .. .. FINISH: ADD 1 MS DELAY
+ // .. .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. .. START: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. FINISH: MASK_DATA_0_MSW HIGH BANK [31:16]
+ // .. .. .. .. START: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. FINISH: MASK_DATA_1_LSW HIGH BANK [47:32]
+ // .. .. .. .. START: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. .. FINISH: MASK_DATA_1_MSW HIGH BANK [53:48]
+ // .. .. .. FINISH: I2C1 RESET
+ // .. .. FINISH: I2C RESET
+ // .. .. START: NOR CHIP SELECT
+ // .. .. .. START: DIR MODE BANK 0
+ // .. .. .. FINISH: DIR MODE BANK 0
+ // .. .. .. START: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. FINISH: MASK_DATA_0_LSW HIGH BANK [15:0]
+ // .. .. .. START: OUTPUT ENABLE BANK 0
+ // .. .. .. FINISH: OUTPUT ENABLE BANK 0
+ // .. .. FINISH: NOR CHIP SELECT
+ // .. FINISH: SMC TIMING CALCULATION REGISTER UPDATE
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_post_config_1_0[] = {
+ // START: top
+ // .. START: SLCR SETTINGS
+ // .. UNLOCK_KEY = 0XDF0D
+ // .. ==> 0XF8000008[15:0] = 0x0000DF0DU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000DF0DU
+ // ..
+ EMIT_MASKWRITE(0XF8000008, 0x0000FFFFU ,0x0000DF0DU),
+ // .. FINISH: SLCR SETTINGS
+ // .. START: ENABLING LEVEL SHIFTER
+ // .. USER_INP_ICT_EN_0 = 3
+ // .. ==> 0XF8000900[1:0] = 0x00000003U
+ // .. ==> MASK : 0x00000003U VAL : 0x00000003U
+ // .. USER_INP_ICT_EN_1 = 3
+ // .. ==> 0XF8000900[3:2] = 0x00000003U
+ // .. ==> MASK : 0x0000000CU VAL : 0x0000000CU
+ // ..
+ EMIT_MASKWRITE(0XF8000900, 0x0000000FU ,0x0000000FU),
+ // .. FINISH: ENABLING LEVEL SHIFTER
+ // .. START: FPGA RESETS TO 0
+ // .. reserved_3 = 0
+ // .. ==> 0XF8000240[31:25] = 0x00000000U
+ // .. ==> MASK : 0xFE000000U VAL : 0x00000000U
+ // .. FPGA_ACP_RST = 0
+ // .. ==> 0XF8000240[24:24] = 0x00000000U
+ // .. ==> MASK : 0x01000000U VAL : 0x00000000U
+ // .. FPGA_AXDS3_RST = 0
+ // .. ==> 0XF8000240[23:23] = 0x00000000U
+ // .. ==> MASK : 0x00800000U VAL : 0x00000000U
+ // .. FPGA_AXDS2_RST = 0
+ // .. ==> 0XF8000240[22:22] = 0x00000000U
+ // .. ==> MASK : 0x00400000U VAL : 0x00000000U
+ // .. FPGA_AXDS1_RST = 0
+ // .. ==> 0XF8000240[21:21] = 0x00000000U
+ // .. ==> MASK : 0x00200000U VAL : 0x00000000U
+ // .. FPGA_AXDS0_RST = 0
+ // .. ==> 0XF8000240[20:20] = 0x00000000U
+ // .. ==> MASK : 0x00100000U VAL : 0x00000000U
+ // .. reserved_2 = 0
+ // .. ==> 0XF8000240[19:18] = 0x00000000U
+ // .. ==> MASK : 0x000C0000U VAL : 0x00000000U
+ // .. FSSW1_FPGA_RST = 0
+ // .. ==> 0XF8000240[17:17] = 0x00000000U
+ // .. ==> MASK : 0x00020000U VAL : 0x00000000U
+ // .. FSSW0_FPGA_RST = 0
+ // .. ==> 0XF8000240[16:16] = 0x00000000U
+ // .. ==> MASK : 0x00010000U VAL : 0x00000000U
+ // .. reserved_1 = 0
+ // .. ==> 0XF8000240[15:14] = 0x00000000U
+ // .. ==> MASK : 0x0000C000U VAL : 0x00000000U
+ // .. FPGA_FMSW1_RST = 0
+ // .. ==> 0XF8000240[13:13] = 0x00000000U
+ // .. ==> MASK : 0x00002000U VAL : 0x00000000U
+ // .. FPGA_FMSW0_RST = 0
+ // .. ==> 0XF8000240[12:12] = 0x00000000U
+ // .. ==> MASK : 0x00001000U VAL : 0x00000000U
+ // .. FPGA_DMA3_RST = 0
+ // .. ==> 0XF8000240[11:11] = 0x00000000U
+ // .. ==> MASK : 0x00000800U VAL : 0x00000000U
+ // .. FPGA_DMA2_RST = 0
+ // .. ==> 0XF8000240[10:10] = 0x00000000U
+ // .. ==> MASK : 0x00000400U VAL : 0x00000000U
+ // .. FPGA_DMA1_RST = 0
+ // .. ==> 0XF8000240[9:9] = 0x00000000U
+ // .. ==> MASK : 0x00000200U VAL : 0x00000000U
+ // .. FPGA_DMA0_RST = 0
+ // .. ==> 0XF8000240[8:8] = 0x00000000U
+ // .. ==> MASK : 0x00000100U VAL : 0x00000000U
+ // .. reserved = 0
+ // .. ==> 0XF8000240[7:4] = 0x00000000U
+ // .. ==> MASK : 0x000000F0U VAL : 0x00000000U
+ // .. FPGA3_OUT_RST = 0
+ // .. ==> 0XF8000240[3:3] = 0x00000000U
+ // .. ==> MASK : 0x00000008U VAL : 0x00000000U
+ // .. FPGA2_OUT_RST = 0
+ // .. ==> 0XF8000240[2:2] = 0x00000000U
+ // .. ==> MASK : 0x00000004U VAL : 0x00000000U
+ // .. FPGA1_OUT_RST = 0
+ // .. ==> 0XF8000240[1:1] = 0x00000000U
+ // .. ==> MASK : 0x00000002U VAL : 0x00000000U
+ // .. FPGA0_OUT_RST = 0
+ // .. ==> 0XF8000240[0:0] = 0x00000000U
+ // .. ==> MASK : 0x00000001U VAL : 0x00000000U
+ // ..
+ EMIT_MASKWRITE(0XF8000240, 0xFFFFFFFFU ,0x00000000U),
+ // .. FINISH: FPGA RESETS TO 0
+ // .. START: AFI REGISTERS
+ // .. .. START: AFI0 REGISTERS
+ // .. .. FINISH: AFI0 REGISTERS
+ // .. .. START: AFI1 REGISTERS
+ // .. .. FINISH: AFI1 REGISTERS
+ // .. .. START: AFI2 REGISTERS
+ // .. .. FINISH: AFI2 REGISTERS
+ // .. .. START: AFI3 REGISTERS
+ // .. .. FINISH: AFI3 REGISTERS
+ // .. FINISH: AFI REGISTERS
+ // .. START: LOCK IT BACK
+ // .. LOCK_KEY = 0X767B
+ // .. ==> 0XF8000004[15:0] = 0x0000767BU
+ // .. ==> MASK : 0x0000FFFFU VAL : 0x0000767BU
+ // ..
+ EMIT_MASKWRITE(0XF8000004, 0x0000FFFFU ,0x0000767BU),
+ // .. FINISH: LOCK IT BACK
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+unsigned long ps7_debug_1_0[] = {
+ // START: top
+ // .. START: CROSS TRIGGER CONFIGURATIONS
+ // .. .. START: UNLOCKING CTI REGISTERS
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8898FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8898FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8899FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8899FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. KEY = 0XC5ACCE55
+ // .. .. ==> 0XF8809FB0[31:0] = 0xC5ACCE55U
+ // .. .. ==> MASK : 0xFFFFFFFFU VAL : 0xC5ACCE55U
+ // .. ..
+ EMIT_MASKWRITE(0XF8809FB0, 0xFFFFFFFFU ,0xC5ACCE55U),
+ // .. .. FINISH: UNLOCKING CTI REGISTERS
+ // .. .. START: ENABLING CTI MODULES AND CHANNELS
+ // .. .. FINISH: ENABLING CTI MODULES AND CHANNELS
+ // .. .. START: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. .. FINISH: MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+ // .. FINISH: CROSS TRIGGER CONFIGURATIONS
+ // FINISH: top
+ //
+ EMIT_EXIT(),
+
+ //
+};
+
+
+#include "xil_io.h"
+#define PS7_MASK_POLL_TIME 100000000
+
+char*
+getPS7MessageInfo(unsigned key) {
+
+ char* err_msg = "";
+ switch (key) {
+ case PS7_INIT_SUCCESS: err_msg = "PS7 initialization successful"; break;
+ case PS7_INIT_CORRUPT: err_msg = "PS7 init Data Corrupted"; break;
+ case PS7_INIT_TIMEOUT: err_msg = "PS7 init mask poll timeout"; break;
+ case PS7_POLL_FAILED_DDR_INIT: err_msg = "Mask Poll failed for DDR Init"; break;
+ case PS7_POLL_FAILED_DMA: err_msg = "Mask Poll failed for PLL Init"; break;
+ case PS7_POLL_FAILED_PLL: err_msg = "Mask Poll failed for DMA done bit"; break;
+ default: err_msg = "Undefined error status"; break;
+ }
+
+ return err_msg;
+}
+
+unsigned long
+ps7GetSiliconVersion () {
+ // Read PS version from MCTRL register [31:28]
+ unsigned long mask = 0xF0000000;
+ unsigned long *addr = (unsigned long*) 0XF8007080;
+ unsigned long ps_version = (*addr & mask) >> 28;
+ return ps_version;
+}
+
+void mask_write (unsigned long add , unsigned long mask, unsigned long val ) {
+ unsigned long *addr = (unsigned long*) add;
+ *addr = ( val & mask ) | ( *addr & ~mask);
+ //xil_printf("MaskWrite : 0x%x--> 0x%x \n \r" ,add, *addr);
+}
+
+
+int mask_poll(unsigned long add , unsigned long mask ) {
+ volatile unsigned long *addr = (volatile unsigned long*) add;
+ int i = 0;
+ while (!(*addr & mask)) {
+ if (i == PS7_MASK_POLL_TIME) {
+ return -1;
+ }
+ i++;
+ }
+ return 1;
+ //xil_printf("MaskPoll : 0x%x --> 0x%x \n \r" , add, *addr);
+}
+
+unsigned long mask_read(unsigned long add , unsigned long mask ) {
+ unsigned long *addr = (unsigned long*) add;
+ unsigned long val = (*addr & mask);
+ //xil_printf("MaskRead : 0x%x --> 0x%x \n \r" , add, val);
+ return val;
+}
+
+
+
+int
+ps7_config(unsigned long * ps7_config_init)
+{
+ unsigned long *ptr = ps7_config_init;
+
+ unsigned long opcode; // current instruction ..
+ unsigned long args[16]; // no opcode has so many args ...
+ int numargs; // number of arguments of this instruction
+ int j; // general purpose index
+
+ volatile unsigned long *addr; // some variable to make code readable
+ unsigned long val,mask; // some variable to make code readable
+
+ int finish = -1 ; // loop while this is negative !
+ int i = 0; // Timeout variable
+
+ while( finish < 0 ) {
+ numargs = ptr[0] & 0xF;
+ opcode = ptr[0] >> 4;
+
+ for( j = 0 ; j < numargs ; j ++ )
+ args[j] = ptr[j+1];
+ ptr += numargs + 1;
+
+
+ switch ( opcode ) {
+
+ case OPCODE_EXIT:
+ finish = PS7_INIT_SUCCESS;
+ break;
+
+ case OPCODE_CLEAR:
+ addr = (unsigned long*) args[0];
+ *addr = 0;
+ break;
+
+ case OPCODE_WRITE:
+ addr = (unsigned long*) args[0];
+ val = args[1];
+ *addr = val;
+ break;
+
+ case OPCODE_MASKWRITE:
+ addr = (unsigned long*) args[0];
+ mask = args[1];
+ val = args[2];
+ *addr = ( val & mask ) | ( *addr & ~mask);
+ break;
+
+ case OPCODE_MASKPOLL:
+ addr = (unsigned long*) args[0];
+ mask = args[1];
+ i = 0;
+ while (!(*addr & mask)) {
+ if (i == PS7_MASK_POLL_TIME) {
+ finish = PS7_INIT_TIMEOUT;
+ break;
+ }
+ i++;
+ }
+ break;
+ case OPCODE_MASKDELAY:
+ addr = (unsigned long*) args[0];
+ mask = args[1];
+ int delay = get_number_of_cycles_for_delay(mask);
+ perf_reset_and_start_timer();
+ while ((*addr < delay)) {
+ }
+ break;
+ default:
+ finish = PS7_INIT_CORRUPT;
+ break;
+ }
+ }
+ return finish;
+}
+
+unsigned long *ps7_mio_init_data = ps7_mio_init_data_3_0;
+unsigned long *ps7_pll_init_data = ps7_pll_init_data_3_0;
+unsigned long *ps7_clock_init_data = ps7_clock_init_data_3_0;
+unsigned long *ps7_ddr_init_data = ps7_ddr_init_data_3_0;
+unsigned long *ps7_peripherals_init_data = ps7_peripherals_init_data_3_0;
+
+int
+ps7_post_config()
+{
+ // Get the PS_VERSION on run time
+ unsigned long si_ver = ps7GetSiliconVersion ();
+ int ret = -1;
+ if (si_ver == PCW_SILICON_VERSION_1) {
+ ret = ps7_config (ps7_post_config_1_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ } else if (si_ver == PCW_SILICON_VERSION_2) {
+ ret = ps7_config (ps7_post_config_2_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ } else {
+ ret = ps7_config (ps7_post_config_3_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ }
+ return PS7_INIT_SUCCESS;
+}
+
+int
+ps7_debug()
+{
+ // Get the PS_VERSION on run time
+ unsigned long si_ver = ps7GetSiliconVersion ();
+ int ret = -1;
+ if (si_ver == PCW_SILICON_VERSION_1) {
+ ret = ps7_config (ps7_debug_1_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ } else if (si_ver == PCW_SILICON_VERSION_2) {
+ ret = ps7_config (ps7_debug_2_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ } else {
+ ret = ps7_config (ps7_debug_3_0);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ }
+ return PS7_INIT_SUCCESS;
+}
+
+int
+ps7_init()
+{
+ // Get the PS_VERSION on run time
+ unsigned long si_ver = ps7GetSiliconVersion ();
+ int ret;
+ //int pcw_ver = 0;
+
+ if (si_ver == PCW_SILICON_VERSION_1) {
+ ps7_mio_init_data = ps7_mio_init_data_1_0;
+ ps7_pll_init_data = ps7_pll_init_data_1_0;
+ ps7_clock_init_data = ps7_clock_init_data_1_0;
+ ps7_ddr_init_data = ps7_ddr_init_data_1_0;
+ ps7_peripherals_init_data = ps7_peripherals_init_data_1_0;
+ //pcw_ver = 1;
+
+ } else if (si_ver == PCW_SILICON_VERSION_2) {
+ ps7_mio_init_data = ps7_mio_init_data_2_0;
+ ps7_pll_init_data = ps7_pll_init_data_2_0;
+ ps7_clock_init_data = ps7_clock_init_data_2_0;
+ ps7_ddr_init_data = ps7_ddr_init_data_2_0;
+ ps7_peripherals_init_data = ps7_peripherals_init_data_2_0;
+ //pcw_ver = 2;
+
+ } else {
+ ps7_mio_init_data = ps7_mio_init_data_3_0;
+ ps7_pll_init_data = ps7_pll_init_data_3_0;
+ ps7_clock_init_data = ps7_clock_init_data_3_0;
+ ps7_ddr_init_data = ps7_ddr_init_data_3_0;
+ ps7_peripherals_init_data = ps7_peripherals_init_data_3_0;
+ //pcw_ver = 3;
+ }
+
+ // MIO init
+ ret = ps7_config (ps7_mio_init_data);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+
+ // PLL init
+ ret = ps7_config (ps7_pll_init_data);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+
+ // Clock init
+ ret = ps7_config (ps7_clock_init_data);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+
+ // DDR init
+ ret = ps7_config (ps7_ddr_init_data);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+
+
+
+ // Peripherals init
+ ret = ps7_config (ps7_peripherals_init_data);
+ if (ret != PS7_INIT_SUCCESS) return ret;
+ //xil_printf ("\n PCW Silicon Version : %d.0", pcw_ver);
+ return PS7_INIT_SUCCESS;
+}
+
+
+
+
+/* For delay calculation using global timer */
+
+/* start timer */
+ void perf_start_clock(void)
+{
+ *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = ((1 << 0) | // Timer Enable
+ (1 << 3) | // Auto-increment
+ (0 << 8) // Pre-scale
+ );
+}
+
+/* stop timer and reset timer count regs */
+ void perf_reset_clock(void)
+{
+ perf_disable_clock();
+ *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_L32 = 0;
+ *(volatile unsigned int*)SCU_GLOBAL_TIMER_COUNT_U32 = 0;
+}
+
+/* Compute mask for given delay in miliseconds*/
+int get_number_of_cycles_for_delay(unsigned int delay)
+{
+ // GTC is always clocked at 1/2 of the CPU frequency (CPU_3x2x)
+ return (APU_FREQ*delay/(2*1000));
+
+}
+
+/* stop timer */
+ void perf_disable_clock(void)
+{
+ *(volatile unsigned int*)SCU_GLOBAL_TIMER_CONTROL = 0;
+}
+
+void perf_reset_and_start_timer()
+{
+ perf_reset_clock();
+ perf_start_clock();
+}
+
+
+
+
diff --git a/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.h b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.h
new file mode 100644
index 00000000000..9aff800fa3d
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.h
@@ -0,0 +1,137 @@
+
+/******************************************************************************
+*
+* (c) Copyright 2010-2014 Xilinx, Inc. All rights reserved.
+*
+* Permission is hereby granted, free of charge, to any person obtaining a copy of this
+* software and associated documentation files (the "Software"), to deal in the Software
+* without restriction, including without limitation the rights to use, copy, modify, merge,
+* publish, distribute, sublicense, and/or sell copies of the Software, and to permit
+* persons to whom the Software is furnished to do so, subject to the following conditions:
+*
+* The above copyright notice and this permission notice shall be included in all copies or
+* substantial portions of the Software.
+*
+* Use of the Software is limited solely to applications: (a) running on a Xilinx device, or
+* (b) that interact with a Xilinx device through a bus or interconnect.
+*
+* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING
+* BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
+* NONINFRINGEMENT. IN NO EVENT SHALL THE X CONSORTIUM BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
+* CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
+*
+* Except as contained in this notice, the name of the Xilinx shall not be used in advertising or
+* otherwise to promote the sale, use or other dealings in this Software without prior written
+* authorization from Xilinx.
+*
+*******************************************************************************/
+/****************************************************************************/
+/**
+*
+* @file ps7_init.h
+*
+* This file can be included in FSBL code
+* to get prototype of ps7_init() function
+* and error codes
+*
+*****************************************************************************/
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+
+//typedef unsigned int u32;
+
+
+/** do we need to make this name more unique ? **/
+//extern u32 ps7_init_data[];
+extern unsigned long * ps7_ddr_init_data;
+extern unsigned long * ps7_mio_init_data;
+extern unsigned long * ps7_pll_init_data;
+extern unsigned long * ps7_clock_init_data;
+extern unsigned long * ps7_peripherals_init_data;
+
+
+
+#define OPCODE_EXIT 0U
+#define OPCODE_CLEAR 1U
+#define OPCODE_WRITE 2U
+#define OPCODE_MASKWRITE 3U
+#define OPCODE_MASKPOLL 4U
+#define OPCODE_MASKDELAY 5U
+#define NEW_PS7_ERR_CODE 1
+
+/* Encode number of arguments in last nibble */
+#define EMIT_EXIT() ( (OPCODE_EXIT << 4 ) | 0 )
+#define EMIT_CLEAR(addr) ( (OPCODE_CLEAR << 4 ) | 1 ) , addr
+#define EMIT_WRITE(addr,val) ( (OPCODE_WRITE << 4 ) | 2 ) , addr, val
+#define EMIT_MASKWRITE(addr,mask,val) ( (OPCODE_MASKWRITE << 4 ) | 3 ) , addr, mask, val
+#define EMIT_MASKPOLL(addr,mask) ( (OPCODE_MASKPOLL << 4 ) | 2 ) , addr, mask
+#define EMIT_MASKDELAY(addr,mask) ( (OPCODE_MASKDELAY << 4 ) | 2 ) , addr, mask
+
+/* Returns codes of PS7_Init */
+#define PS7_INIT_SUCCESS (0) // 0 is success in good old C
+#define PS7_INIT_CORRUPT (1) // 1 the data is corrupted, and slcr reg are in corrupted state now
+#define PS7_INIT_TIMEOUT (2) // 2 when a poll operation timed out
+#define PS7_POLL_FAILED_DDR_INIT (3) // 3 when a poll operation timed out for ddr init
+#define PS7_POLL_FAILED_DMA (4) // 4 when a poll operation timed out for dma done bit
+#define PS7_POLL_FAILED_PLL (5) // 5 when a poll operation timed out for pll sequence init
+
+
+/* Silicon Versions */
+#define PCW_SILICON_VERSION_1 0
+#define PCW_SILICON_VERSION_2 1
+#define PCW_SILICON_VERSION_3 2
+
+/* This flag to be used by FSBL to check whether ps7_post_config() proc exixts */
+#define PS7_POST_CONFIG
+
+/* Freq of all peripherals */
+
+#define APU_FREQ 666666687
+#define DDR_FREQ 533333374
+#define DCI_FREQ 10158731
+#define QSPI_FREQ 200000000
+#define SMC_FREQ 10000000
+#define ENET0_FREQ 125000000
+#define ENET1_FREQ 10000000
+#define USB0_FREQ 60000000
+#define USB1_FREQ 60000000
+#define SDIO_FREQ 50000000
+#define UART_FREQ 50000000
+#define SPI_FREQ 10000000
+#define I2C_FREQ 111111115
+#define WDT_FREQ 111111115
+#define TTC_FREQ 50000000
+#define CAN_FREQ 10000000
+#define PCAP_FREQ 200000000
+#define TPIU_FREQ 200000000
+#define FPGA0_FREQ 100000000
+#define FPGA1_FREQ 100000000
+#define FPGA2_FREQ 33333336
+#define FPGA3_FREQ 50000000
+
+
+/* For delay calculation using global registers*/
+#define SCU_GLOBAL_TIMER_COUNT_L32 0xF8F00200
+#define SCU_GLOBAL_TIMER_COUNT_U32 0xF8F00204
+#define SCU_GLOBAL_TIMER_CONTROL 0xF8F00208
+#define SCU_GLOBAL_TIMER_AUTO_INC 0xF8F00218
+
+int ps7_config( unsigned long*);
+int ps7_init();
+int ps7_post_config();
+int ps7_debug();
+char* getPS7MessageInfo(unsigned key);
+
+void perf_start_clock(void);
+void perf_disable_clock(void);
+void perf_reset_clock(void);
+void perf_reset_and_start_timer();
+int get_number_of_cycles_for_delay(unsigned int delay);
+#ifdef __cplusplus
+}
+#endif
+
diff --git a/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.html b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.html
new file mode 100644
index 00000000000..fa959df3d2a
--- /dev/null
+++ b/FreeRTOS/Demo/CORTEX_A9_Zynq_ZC702/MicroZed_hw_platform/ps7_init.html
@@ -0,0 +1,141529 @@
+
+
+
+
+Zynq PS configuration detail
+
+
+
+
+
+
+Zynq PS7 Summary Report
+
+
+
User Configurations
+
+
+
+
Select Version:
+
+Silicon 3.0
+Silicon 2.0
+Silicon 1.0
+
+
+
+
Zynq Register View
+
+
+
This design is targeted for xc7z010 board (part number: xc7z010clg400-1)
+
+
+
Zynq Design Summary
+
+
+
+Device
+
+
+xc7z010
+
+
+
+
+SpeedGrade
+
+
+-1
+
+
+
+
+Part
+
+
+xc7z010clg400-1
+
+
+
+
+Description
+
+
+Zynq PS Configuration Report with register details
+
+
+
+
+Vendor
+
+
+Xilinx
+
+
+
+
+
+
+
+MIO Pin
+
+
+Peripheral
+
+
+Signal
+
+
+IO Type
+
+
+Speed
+
+
+Pullup
+
+
+Direction
+
+
+
+
+MIO 0
+
+
+GPIO
+
+
+gpio[0]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 1
+
+
+Quad SPI Flash
+
+
+qspi0_ss_b
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 2
+
+
+Quad SPI Flash
+
+
+qspi0_io[0]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 3
+
+
+Quad SPI Flash
+
+
+qspi0_io[1]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 4
+
+
+Quad SPI Flash
+
+
+qspi0_io[2]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 5
+
+
+Quad SPI Flash
+
+
+qspi0_io[3]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 6
+
+
+Quad SPI Flash
+
+
+qspi0_sclk
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 7
+
+
+USB Reset
+
+
+reset
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 8
+
+
+Quad SPI Flash
+
+
+qspi_fbclk
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 9
+
+
+GPIO
+
+
+gpio[9]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 10
+
+
+GPIO
+
+
+gpio[10]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 11
+
+
+GPIO
+
+
+gpio[11]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 12
+
+
+GPIO
+
+
+gpio[12]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 13
+
+
+GPIO
+
+
+gpio[13]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 14
+
+
+GPIO
+
+
+gpio[14]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 15
+
+
+GPIO
+
+
+gpio[15]
+
+
+LVCMOS 3.3V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 16
+
+
+Enet 0
+
+
+tx_clk
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 17
+
+
+Enet 0
+
+
+txd[0]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 18
+
+
+Enet 0
+
+
+txd[1]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 19
+
+
+Enet 0
+
+
+txd[2]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 20
+
+
+Enet 0
+
+
+txd[3]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 21
+
+
+Enet 0
+
+
+tx_ctl
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 22
+
+
+Enet 0
+
+
+rx_clk
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 23
+
+
+Enet 0
+
+
+rxd[0]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 24
+
+
+Enet 0
+
+
+rxd[1]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 25
+
+
+Enet 0
+
+
+rxd[2]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 26
+
+
+Enet 0
+
+
+rxd[3]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 27
+
+
+Enet 0
+
+
+rx_ctl
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 28
+
+
+USB 0
+
+
+data[4]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 29
+
+
+USB 0
+
+
+dir
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 30
+
+
+USB 0
+
+
+stp
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 31
+
+
+USB 0
+
+
+nxt
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 32
+
+
+USB 0
+
+
+data[0]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 33
+
+
+USB 0
+
+
+data[1]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 34
+
+
+USB 0
+
+
+data[2]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 35
+
+
+USB 0
+
+
+data[3]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 36
+
+
+USB 0
+
+
+clk
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 37
+
+
+USB 0
+
+
+data[5]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 38
+
+
+USB 0
+
+
+data[6]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 39
+
+
+USB 0
+
+
+data[7]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 40
+
+
+SD 0
+
+
+clk
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 41
+
+
+SD 0
+
+
+cmd
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 42
+
+
+SD 0
+
+
+data[0]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 43
+
+
+SD 0
+
+
+data[1]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 44
+
+
+SD 0
+
+
+data[2]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 45
+
+
+SD 0
+
+
+data[3]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 46
+
+
+SD 0
+
+
+cd
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 47
+
+
+GPIO
+
+
+gpio[47]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 48
+
+
+UART 1
+
+
+tx
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 49
+
+
+UART 1
+
+
+rx
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 50
+
+
+SD 0
+
+
+wp
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+in
+
+
+
+
+MIO 51
+
+
+GPIO
+
+
+gpio[51]
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+MIO 52
+
+
+Enet 0
+
+
+mdc
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+out
+
+
+
+
+MIO 53
+
+
+Enet 0
+
+
+mdio
+
+
+LVCMOS 1.8V
+
+
+slow
+
+
+disabled
+
+
+inout
+
+
+
+
+
+
+
+Parameter name
+
+
+Value
+
+
+Description
+
+
+
+
+Enable DDR
+
+
+1
+
+
+Enable DDR Controller of Zynq PS
+
+
+
+
+Enable DDR
+
+
+1
+
+
+Enable DDR Controller of Zynq PS
+
+
+
+
+Memory Part
+
+
+MT41K256M16 RE-125
+
+
+
+
+
+
+
+DRAM bus width
+
+
+32 Bit
+
+
+Select the desired data width. Refer to the Thechnical Reference Manual(TRM) for a detailed list of supported DDR data widths
+
+
+
+
+ECC
+
+
+Disabled
+
+
+ECC is supported only for data width of 16-bit
+
+
+
+
+BURST Length (lppdr only)
+
+
+8
+
+
+Select the burst Length. It refers to the amount of data read/written after a read/write command is presented to the controller
+
+
+
+
+Internal Vref
+
+
+1
+
+
+
+
+
+
+
+Operating Frequency (MHz)
+
+
+533.333333
+
+
+Chose the clock period for the desired frequency. The allowed freq range (200 - 667 MHz) is a function of FPGA part and FPGA speed grade
+
+
+
+
+HIGH temperature
+
+
+Normal (0-85)
+
+
+Select the operating temparature
+
+
+
+
+DRAM IC bus width
+
+
+16 Bits
+
+
+Provide the width of the DRAM chip
+
+
+
+
+DRAM Device Capacity
+
+
+4096 MBits
+
+
+
+
+
+
+
+Speed Bin
+
+
+DDR3_1066F
+
+
+Provide the Speed Bin
+
+
+
+
+BANK Address Count
+
+
+3
+
+
+Defines the bank to which an active an ACTIVE, READ, WRITE, or Precharge Command is being applied
+
+
+
+
+ROW Address Count
+
+
+15
+
+
+Provide the Row address for ACTIVE commands
+
+
+
+
+COLUMN Address Count
+
+
+10
+
+
+Provide the Row address for READ/WRITE commands
+
+
+
+
+CAS Latency
+
+
+7
+
+
+Select the Column Access Strobe (CAS) Latency. It refers to the amount of time it takes for data to appear on the pins of the memory module
+
+
+
+
+CAS Write Latency
+
+
+6
+
+
+Select the CAS Write Latency
+
+
+
+
+RAS to CAS Delay
+
+
+7
+
+
+Provide the row address to column address delay time. tRCD is t he time required between the memory controller asserting a row address strobe (RAS), and then asserting the column address strobe (CAS)
+
+
+
+
+RECHARGE Time
+
+
+7
+
+
+Precharge Time (tRP) is the number of clock cycles needed o terminate acces s to an open row of memory, and open access to the next row
+
+
+
+
+tRC (ns )
+
+
+48.75
+
+
+Provide the Row cycle time tRC (ns)
+
+
+
+
+tRASmin ( ns )
+
+
+35.0
+
+
+tRASmin (ns) is the minimum number of clock cycles required between an Active command and issuing the Precharge command
+
+
+
+
+tFAW
+
+
+40.0
+
+
+It restricts the number of activates that can be done within a certain window of time
+
+
+
+
+ADDITIVE Latency
+
+
+0
+
+
+Provide the Additive Latency (ns). Increases the efficiency of the command and data bus for sustainable bandwidths
+
+
+
+
+Write levelling
+
+
+1
+
+
+
+
+
+
+
+Read gate
+
+
+1
+
+
+
+
+
+
+
+Read gate
+
+
+1
+
+
+
+
+
+
+
+DQS to Clock delay [0] (ns)
+
+
+-0.073
+
+
+The daly difference of each DQS path delay subtracted from the clock path delay
+
+
+
+
+DQS to Clock delay [1] (ns)
+
+
+-0.072
+
+
+The daly difference of each DQS path delay subtracted from the clock path delay
+
+
+
+
+DQS to Clock delay [2] (ns)
+
+
+0.024
+
+
+The daly difference of each DQS path delay subtracted from the clock path delay
+
+
+
+
+DQS to Clock delay [3] (ns)
+
+
+0.023
+
+
+The daly difference of each DQS path delay subtracted from the clock path delay
+
+
+
+
+Board delay [0] (ns)
+
+
+0.294
+
+
+The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N)
+
+
+
+
+Board delay [1] (ns)
+
+
+0.298
+
+
+The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N)
+
+
+
+
+Board delay [2] (ns)
+
+
+0.338
+
+
+The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N)
+
+
+
+
+Board delay [3] (ns)
+
+
+0.334
+
+
+The average of the data midpoint delay, of the data delays associated with a byte lane (DDR_DQ, DDR_DM) averaged with the midpoint of the cloc kdelays (DDR_CK, DR_CK_N)
+
+
+
+
+
+
+
+
+Peripheral
+
+
+PLL source
+
+
+Frequency (MHz)
+
+
+
+
+CPU 6x Freq (MHz)
+
+
+ARM PLL
+
+
+666.666687
+
+
+
+
+QSPI Flash Freq (MHz)
+
+
+IO PLL
+
+
+200.000000
+
+
+
+
+ENET0 Freq (MHz)
+
+
+IO PLL
+
+
+125.000000
+
+
+
+
+SDIO Freq (MHz)
+
+
+IO PLL
+
+
+50.000000
+
+
+
+
+UART Freq (MHz)
+
+
+IO PLL
+
+
+50.000000
+
+
+
+
+TTC0 CLK0 Freq (MHz)
+
+
+CPU_1X
+
+
+111.111115
+
+
+
+
+TTC0 CLK1 Freq (MHz)
+
+
+CPU_1X
+
+
+111.111115
+
+
+
+
+TTC0 CLK2 Freq (MHz)
+
+
+CPU_1X
+
+
+111.111115
+
+
+
+
+FPGA0 Freq (MHz)
+
+
+IO PLL
+
+
+100.000000
+
+
+
+
+FPGA1 Freq (MHz)
+
+
+IO PLL
+
+
+100.000000
+
+
+
+
+FPGA2 Freq (MHz)
+
+
+IO PLL
+
+
+33.333336
+
+
+
+
+FPGA3 Freq (MHz)
+
+
+IO PLL
+
+
+50.000000
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+SLCR_UNLOCK
+
+
+
+0XF8000008
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
+ARM_PLL_CFG
+
+
+
+0XF8000110
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Configuration
+
+
+
+
+
+ARM_PLL_CTRL
+
+
+
+0XF8000100
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Control
+
+
+
+
+
+ARM_PLL_CTRL
+
+
+
+0XF8000100
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Control
+
+
+
+
+
+ARM_PLL_CTRL
+
+
+
+0XF8000100
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Control
+
+
+
+
+
+ARM_PLL_CTRL
+
+
+
+0XF8000100
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Control
+
+
+
+
+
+ARM_PLL_CTRL
+
+
+
+0XF8000100
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ARM PLL Control
+
+
+
+
+
+ARM_CLK_CTRL
+
+
+
+0XF8000120
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+CPU Clock Control
+
+
+
+
+
+DDR_PLL_CFG
+
+
+
+0XF8000114
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Configuration
+
+
+
+
+
+DDR_PLL_CTRL
+
+
+
+0XF8000104
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Control
+
+
+
+
+
+DDR_PLL_CTRL
+
+
+
+0XF8000104
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Control
+
+
+
+
+
+DDR_PLL_CTRL
+
+
+
+0XF8000104
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Control
+
+
+
+
+
+DDR_PLL_CTRL
+
+
+
+0XF8000104
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Control
+
+
+
+
+
+DDR_PLL_CTRL
+
+
+
+0XF8000104
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR PLL Control
+
+
+
+
+
+DDR_CLK_CTRL
+
+
+
+0XF8000124
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR Clock Control
+
+
+
+
+
+IO_PLL_CFG
+
+
+
+0XF8000118
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Configuration
+
+
+
+
+
+IO_PLL_CTRL
+
+
+
+0XF8000108
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Control
+
+
+
+
+
+IO_PLL_CTRL
+
+
+
+0XF8000108
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Control
+
+
+
+
+
+IO_PLL_CTRL
+
+
+
+0XF8000108
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Control
+
+
+
+
+
+IO_PLL_CTRL
+
+
+
+0XF8000108
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Control
+
+
+
+
+
+IO_PLL_CTRL
+
+
+
+0XF8000108
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+IO PLL Control
+
+
+
+
+
+SLCR_LOCK
+
+
+
+0XF8000004
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+SLCR SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_UNLOCK
+
+
+0XF8000008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNLOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+df0d
+
+
+df0d
+
+
+Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_UNLOCK@0XF8000008
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+df0d
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
PLL SLCR REGISTERS
+ARM PLL INIT
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CFG
+
+
+0XF8000110
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RES
+
+
+7:4
+
+
+f0
+
+
+2
+
+
+20
+
+
+Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control
+
+
+
+
+PLL_CP
+
+
+11:8
+
+
+f00
+
+
+2
+
+
+200
+
+
+Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control
+
+
+
+
+LOCK_CNT
+
+
+21:12
+
+
+3ff000
+
+
+fa
+
+
+fa000
+
+
+Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before syaing locked.
+
+
+
+
+ARM_PLL_CFG@0XF8000110
+
+
+31:0
+
+
+3ffff0
+
+
+
+
+
+fa220
+
+
+ARM PLL Configuration
+
+
+
+
+
UPDATE FB_DIV
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CTRL
+
+
+0XF8000100
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_FDIV
+
+
+18:12
+
+
+7f000
+
+
+28
+
+
+28000
+
+
+Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for the PLL.
+
+
+
+
+ARM_PLL_CTRL@0XF8000100
+
+
+31:0
+
+
+7f000
+
+
+
+
+
+28000
+
+
+ARM PLL Control
+
+
+
+
+
BY PASS PLL
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CTRL
+
+
+0XF8000100
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value): 0: PLL mode is set based on pin strap setting. 1: PLL bypassed regardless of the pin strapping.
+
+
+
+
+ARM_PLL_CTRL@0XF8000100
+
+
+31:0
+
+
+10
+
+
+
+
+
+10
+
+
+ARM PLL Control
+
+
+
+
+
ASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CTRL
+
+
+0XF8000100
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+ARM_PLL_CTRL@0XF8000100
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+ARM PLL Control
+
+
+
+
+
DEASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CTRL
+
+
+0XF8000100
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+ARM_PLL_CTRL@0XF8000100
+
+
+31:0
+
+
+1
+
+
+
+
+
+0
+
+
+ARM PLL Control
+
+
+
+
+
CHECK PLL STATUS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PLL_STATUS
+
+
+0XF800010C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+ARM_PLL_LOCK
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+ARM PLL lock status: 0: not locked, 1: locked
+
+
+
+
+PLL_STATUS@0XF800010C
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+tobe
+
+
+
+
+
REMOVE PLL BY PASS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_PLL_CTRL
+
+
+0XF8000100
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+ARM PLL Bypass override control: PLL_BYPASS_QUAL = 0: 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value): 0: PLL mode is set based on pin strap setting. 1: PLL bypassed regardless of the pin strapping.
+
+
+
+
+ARM_PLL_CTRL@0XF8000100
+
+
+31:0
+
+
+10
+
+
+
+
+
+0
+
+
+ARM PLL Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ARM_CLK_CTRL
+
+
+0XF8000120
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the CPU clock: 0x: ARM PLL 10: DDR PLL 11: IO PLL This field is reset by POR only.
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+2
+
+
+200
+
+
+Frequency divisor for the CPU clock source.
+
+
+
+
+CPU_6OR4XCLKACT
+
+
+24:24
+
+
+1000000
+
+
+1
+
+
+1000000
+
+
+CPU_6x4x Clock control: 0: disable, 1: enable
+
+
+
+
+CPU_3OR2XCLKACT
+
+
+25:25
+
+
+2000000
+
+
+1
+
+
+2000000
+
+
+CPU_3x2x Clock control: 0: disable, 1: enable
+
+
+
+
+CPU_2XCLKACT
+
+
+26:26
+
+
+4000000
+
+
+1
+
+
+4000000
+
+
+CPU_2x Clock control: 0: disable, 1: enable
+
+
+
+
+CPU_1XCLKACT
+
+
+27:27
+
+
+8000000
+
+
+1
+
+
+8000000
+
+
+CPU_1x Clock control: 0: disable, 1: enable
+
+
+
+
+CPU_PERI_CLKACT
+
+
+28:28
+
+
+10000000
+
+
+1
+
+
+10000000
+
+
+Clock active: 0: Clock is disabled 1: Clock is enabled
+
+
+
+
+ARM_CLK_CTRL@0XF8000120
+
+
+31:0
+
+
+1f003f30
+
+
+
+
+
+1f000200
+
+
+CPU Clock Control
+
+
+
+
+
DDR PLL INIT
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CFG
+
+
+0XF8000114
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RES
+
+
+7:4
+
+
+f0
+
+
+2
+
+
+20
+
+
+Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.
+
+
+
+
+PLL_CP
+
+
+11:8
+
+
+f00
+
+
+2
+
+
+200
+
+
+Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.
+
+
+
+
+LOCK_CNT
+
+
+21:12
+
+
+3ff000
+
+
+12c
+
+
+12c000
+
+
+Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before staying locked.
+
+
+
+
+DDR_PLL_CFG@0XF8000114
+
+
+31:0
+
+
+3ffff0
+
+
+
+
+
+12c220
+
+
+DDR PLL Configuration
+
+
+
+
+
UPDATE FB_DIV
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CTRL
+
+
+0XF8000104
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_FDIV
+
+
+18:12
+
+
+7f000
+
+
+20
+
+
+20000
+
+
+Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for the PLL.
+
+
+
+
+DDR_PLL_CTRL@0XF8000104
+
+
+31:0
+
+
+7f000
+
+
+
+
+
+20000
+
+
+DDR PLL Control
+
+
+
+
+
BY PASS PLL
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CTRL
+
+
+0XF8000104
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+DDR PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.
+
+
+
+
+DDR_PLL_CTRL@0XF8000104
+
+
+31:0
+
+
+10
+
+
+
+
+
+10
+
+
+DDR PLL Control
+
+
+
+
+
ASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CTRL
+
+
+0XF8000104
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+DDR_PLL_CTRL@0XF8000104
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+DDR PLL Control
+
+
+
+
+
DEASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CTRL
+
+
+0XF8000104
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+PLL reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+DDR_PLL_CTRL@0XF8000104
+
+
+31:0
+
+
+1
+
+
+
+
+
+0
+
+
+DDR PLL Control
+
+
+
+
+
CHECK PLL STATUS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PLL_STATUS
+
+
+0XF800010C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+DDR_PLL_LOCK
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+DDR PLL lock status: 0: not locked, 1: locked
+
+
+
+
+PLL_STATUS@0XF800010C
+
+
+31:0
+
+
+2
+
+
+
+
+
+2
+
+
+tobe
+
+
+
+
+
REMOVE PLL BY PASS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_PLL_CTRL
+
+
+0XF8000104
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+DDR PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.
+
+
+
+
+DDR_PLL_CTRL@0XF8000104
+
+
+31:0
+
+
+10
+
+
+
+
+
+0
+
+
+DDR PLL Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDR_CLK_CTRL
+
+
+0XF8000124
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+DDR_3XCLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+DDR_3x Clock control: 0: disable, 1: enable
+
+
+
+
+DDR_2XCLKACT
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+DDR_2x Clock control: 0: disable, 1: enable
+
+
+
+
+DDR_3XCLK_DIVISOR
+
+
+25:20
+
+
+3f00000
+
+
+2
+
+
+200000
+
+
+Frequency divisor for the ddr_3x clock
+
+
+
+
+DDR_2XCLK_DIVISOR
+
+
+31:26
+
+
+fc000000
+
+
+3
+
+
+c000000
+
+
+Frequency divisor for the ddr_2x clock
+
+
+
+
+DDR_CLK_CTRL@0XF8000124
+
+
+31:0
+
+
+fff00003
+
+
+
+
+
+c200003
+
+
+DDR Clock Control
+
+
+
+
+
IO PLL INIT
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CFG
+
+
+0XF8000118
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RES
+
+
+7:4
+
+
+f0
+
+
+c
+
+
+c0
+
+
+Drive the PLL_RES[3:0] input of the PLL to set the PLL loop filter resistor control.
+
+
+
+
+PLL_CP
+
+
+11:8
+
+
+f00
+
+
+2
+
+
+200
+
+
+Drive the PLL_CP[3:0] input of the PLL to set the PLL charge pump control.
+
+
+
+
+LOCK_CNT
+
+
+21:12
+
+
+3ff000
+
+
+145
+
+
+145000
+
+
+Drive the LOCK_CNT[9:0] input of the PLL to set the number of clock cycles the PLL needs to have clkref and clkfb aligned with a certain window before staying locked.
+
+
+
+
+IO_PLL_CFG@0XF8000118
+
+
+31:0
+
+
+3ffff0
+
+
+
+
+
+1452c0
+
+
+IO PLL Configuration
+
+
+
+
+
UPDATE FB_DIV
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CTRL
+
+
+0XF8000108
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_FDIV
+
+
+18:12
+
+
+7f000
+
+
+1e
+
+
+1e000
+
+
+Provide the feedback divisor for the PLL. Note: Before changing this value, the PLL must first be bypassed and then put into reset mode. Refer to the Zynq-7000 TRM, UG585, Clocks chapter for CP/RES/CNT values for programming the PLL.
+
+
+
+
+IO_PLL_CTRL@0XF8000108
+
+
+31:0
+
+
+7f000
+
+
+
+
+
+1e000
+
+
+IO PLL Control
+
+
+
+
+
BY PASS PLL
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CTRL
+
+
+0XF8000108
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+IO PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.
+
+
+
+
+IO_PLL_CTRL@0XF8000108
+
+
+31:0
+
+
+10
+
+
+
+
+
+10
+
+
+IO PLL Control
+
+
+
+
+
ASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CTRL
+
+
+0XF8000108
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+PLL Reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+IO_PLL_CTRL@0XF8000108
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+IO PLL Control
+
+
+
+
+
DEASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CTRL
+
+
+0XF8000108
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_RESET
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+PLL Reset control: 0: de-assert (PLL operating) 1: assert (PLL held in reset)
+
+
+
+
+IO_PLL_CTRL@0XF8000108
+
+
+31:0
+
+
+1
+
+
+
+
+
+0
+
+
+IO PLL Control
+
+
+
+
+
CHECK PLL STATUS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PLL_STATUS
+
+
+0XF800010C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+IO_PLL_LOCK
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+IO PLL lock status: 0: not locked, 1: locked
+
+
+
+
+PLL_STATUS@0XF800010C
+
+
+31:0
+
+
+4
+
+
+
+
+
+4
+
+
+tobe
+
+
+
+
+
REMOVE PLL BY PASS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+IO_PLL_CTRL
+
+
+0XF8000108
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PLL_BYPASS_FORCE
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+IO PLL Bypass override control: PLL_BYPASS_QUAL = 0 0: enabled, not bypassed. 1: bypassed. PLL_BYPASS_QUAL = 1 (QUAL bit default value) 0: PLL mode is set based on pin strap setting. 1: PLL bypass is enabled regardless of the pin strapping.
+
+
+
+
+IO_PLL_CTRL@0XF8000108
+
+
+31:0
+
+
+10
+
+
+
+
+
+0
+
+
+IO PLL Control
+
+
+
+
+
LOCK IT BACK
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_LOCK
+
+
+0XF8000004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+LOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+767b
+
+
+767b
+
+
+Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_LOCK@0XF8000004
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+767b
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+SLCR_UNLOCK
+
+
+
+0XF8000008
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
+DCI_CLK_CTRL
+
+
+
+0XF8000128
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DCI clock control
+
+
+
+
+
+GEM0_RCLK_CTRL
+
+
+
+0XF8000138
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+GigE 0 Rx Clock and Rx Signals Select
+
+
+
+
+
+GEM0_CLK_CTRL
+
+
+
+0XF8000140
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+GigE 0 Ref Clock Control
+
+
+
+
+
+LQSPI_CLK_CTRL
+
+
+
+0XF800014C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Quad SPI Ref Clock Control
+
+
+
+
+
+SDIO_CLK_CTRL
+
+
+
+0XF8000150
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+SDIO Ref Clock Control
+
+
+
+
+
+UART_CLK_CTRL
+
+
+
+0XF8000154
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+UART Ref Clock Control
+
+
+
+
+
+PCAP_CLK_CTRL
+
+
+
+0XF8000168
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PCAP Clock Control
+
+
+
+
+
+FPGA0_CLK_CTRL
+
+
+
+0XF8000170
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PL Clock 0 Output control
+
+
+
+
+
+FPGA1_CLK_CTRL
+
+
+
+0XF8000180
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PL Clock 1 Output control
+
+
+
+
+
+FPGA2_CLK_CTRL
+
+
+
+0XF8000190
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PL Clock 2 output control
+
+
+
+
+
+FPGA3_CLK_CTRL
+
+
+
+0XF80001A0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PL Clock 3 output control
+
+
+
+
+
+CLK_621_TRUE
+
+
+
+0XF80001C4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+CPU Clock Ratio Mode select
+
+
+
+
+
+APER_CLK_CTRL
+
+
+
+0XF800012C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AMBA Peripheral Clock Control
+
+
+
+
+
+SLCR_LOCK
+
+
+
+0XF8000004
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+SLCR SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_UNLOCK
+
+
+0XF8000008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNLOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+df0d
+
+
+df0d
+
+
+Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_UNLOCK@0XF8000008
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+df0d
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
CLOCK CONTROL SLCR REGISTERS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DCI_CLK_CTRL
+
+
+0XF8000128
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+DCI clock control - 0: disable, 1: enable
+
+
+
+
+DIVISOR0
+
+
+13:8
+
+
+3f00
+
+
+23
+
+
+2300
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+3
+
+
+300000
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divider
+
+
+
+
+DCI_CLK_CTRL@0XF8000128
+
+
+31:0
+
+
+3f03f01
+
+
+
+
+
+302301
+
+
+DCI clock control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+GEM0_RCLK_CTRL
+
+
+0XF8000138
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Ethernet Controler 0 Rx Clock control 0: disable, 1: enable
+
+
+
+
+SRCSEL
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+Select the source of the Rx clock, control and data signals: 0: MIO 1: EMIO
+
+
+
+
+GEM0_RCLK_CTRL@0XF8000138
+
+
+31:0
+
+
+11
+
+
+
+
+
+1
+
+
+GigE 0 Rx Clock and Rx Signals Select
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+GEM0_CLK_CTRL
+
+
+0XF8000140
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Ethernet Controller 0 Reference Clock control 0: disable, 1: enable
+
+
+
+
+SRCSEL
+
+
+6:4
+
+
+70
+
+
+0
+
+
+0
+
+
+Selects the source to generate the reference clock 00x: IO PLL. 010: ARM PLL. 011: DDR PLL 1xx: Ethernet controller 0 EMIO clock
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+8
+
+
+800
+
+
+First divisor for Ethernet controller 0 source clock.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+1
+
+
+100000
+
+
+Second divisor for Ethernet controller 0 source clock.
+
+
+
+
+GEM0_CLK_CTRL@0XF8000140
+
+
+31:0
+
+
+3f03f71
+
+
+
+
+
+100801
+
+
+GigE 0 Ref Clock Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LQSPI_CLK_CTRL
+
+
+0XF800014C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Quad SPI Controller Reference Clock control 0: disable, 1: enable
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select clock source generate Quad SPI clock: 0x: IO PLL, 10: ARM PLL, 11: DDR PLL
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+5
+
+
+500
+
+
+Divisor for Quad SPI Controller source clock.
+
+
+
+
+LQSPI_CLK_CTRL@0XF800014C
+
+
+31:0
+
+
+3f31
+
+
+
+
+
+501
+
+
+Quad SPI Ref Clock Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SDIO_CLK_CTRL
+
+
+0XF8000150
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT0
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+SDIO Controller 0 Clock control. 0: disable, 1: enable
+
+
+
+
+CLKACT1
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+SDIO Controller 1 Clock control. 0: disable, 1: enable
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock. 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+14
+
+
+1400
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency.
+
+
+
+
+SDIO_CLK_CTRL@0XF8000150
+
+
+31:0
+
+
+3f33
+
+
+
+
+
+1401
+
+
+SDIO Ref Clock Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+UART_CLK_CTRL
+
+
+0XF8000154
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT0
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+UART 0 Reference clock control. 0: disable, 1: enable
+
+
+
+
+CLKACT1
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+UART 1 reference clock active: 0: Clock is disabled 1: Clock is enabled
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Selects the PLL source to generate the clock. 0x: IO PLL 10: ARM PLL 11: DDR PLL
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+14
+
+
+1400
+
+
+Divisor for UART Controller source clock.
+
+
+
+
+UART_CLK_CTRL@0XF8000154
+
+
+31:0
+
+
+3f33
+
+
+
+
+
+1402
+
+
+UART Ref Clock Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PCAP_CLK_CTRL
+
+
+0XF8000168
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Clock active: 0: Clock is disabled 1: Clock is enabled
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR
+
+
+13:8
+
+
+3f00
+
+
+5
+
+
+500
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency.
+
+
+
+
+PCAP_CLK_CTRL@0XF8000168
+
+
+31:0
+
+
+3f31
+
+
+
+
+
+501
+
+
+PCAP Clock Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+FPGA0_CLK_CTRL
+
+
+0XF8000170
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR0
+
+
+13:8
+
+
+3f00
+
+
+a
+
+
+a00
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+1
+
+
+100000
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide
+
+
+
+
+FPGA0_CLK_CTRL@0XF8000170
+
+
+31:0
+
+
+3f03f30
+
+
+
+
+
+100a00
+
+
+PL Clock 0 Output control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+FPGA1_CLK_CTRL
+
+
+0XF8000180
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR0
+
+
+13:8
+
+
+3f00
+
+
+a
+
+
+a00
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+1
+
+
+100000
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide
+
+
+
+
+FPGA1_CLK_CTRL@0XF8000180
+
+
+31:0
+
+
+3f03f30
+
+
+
+
+
+100a00
+
+
+PL Clock 1 Output control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+FPGA2_CLK_CTRL
+
+
+0XF8000190
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR0
+
+
+13:8
+
+
+3f00
+
+
+1e
+
+
+1e00
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+1
+
+
+100000
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide
+
+
+
+
+FPGA2_CLK_CTRL@0XF8000190
+
+
+31:0
+
+
+3f03f30
+
+
+
+
+
+101e00
+
+
+PL Clock 2 output control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+FPGA3_CLK_CTRL
+
+
+0XF80001A0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SRCSEL
+
+
+5:4
+
+
+30
+
+
+0
+
+
+0
+
+
+Select the source used to generate the clock: 0x: Source for generated clock is IO PLL. 10: Source for generated clock is ARM PLL. 11: Source for generated clock is DDR PLL.
+
+
+
+
+DIVISOR0
+
+
+13:8
+
+
+3f00
+
+
+14
+
+
+1400
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. First cascade divider.
+
+
+
+
+DIVISOR1
+
+
+25:20
+
+
+3f00000
+
+
+1
+
+
+100000
+
+
+Provides the divisor used to divide the source clock to generate the required generated clock frequency. Second cascade divide
+
+
+
+
+FPGA3_CLK_CTRL@0XF80001A0
+
+
+31:0
+
+
+3f03f30
+
+
+
+
+
+101400
+
+
+PL Clock 3 output control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CLK_621_TRUE
+
+
+0XF80001C4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CLK_621_TRUE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Select the CPU clock ratio: (When this register changes, no access are allowed to OCM.) 0: 4:2:1 1: 6:2:1
+
+
+
+
+CLK_621_TRUE@0XF80001C4
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+CPU Clock Ratio Mode select
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+APER_CLK_CTRL
+
+
+0XF800012C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+DMA_CPU_2XCLKACT
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+DMA controller AMBA Clock control 0: disable, 1: enable
+
+
+
+
+USB0_CPU_1XCLKACT
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+USB controller 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+USB1_CPU_1XCLKACT
+
+
+3:3
+
+
+8
+
+
+1
+
+
+8
+
+
+USB controller 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+GEM0_CPU_1XCLKACT
+
+
+6:6
+
+
+40
+
+
+1
+
+
+40
+
+
+Gigabit Ethernet 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+GEM1_CPU_1XCLKACT
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Gigabit Ethernet 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+SDI0_CPU_1XCLKACT
+
+
+10:10
+
+
+400
+
+
+1
+
+
+400
+
+
+SDIO controller 0 AMBA Clock 0: disable, 1: enable
+
+
+
+
+SDI1_CPU_1XCLKACT
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+SDIO controller 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+SPI0_CPU_1XCLKACT
+
+
+14:14
+
+
+4000
+
+
+0
+
+
+0
+
+
+SPI 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+SPI1_CPU_1XCLKACT
+
+
+15:15
+
+
+8000
+
+
+0
+
+
+0
+
+
+SPI 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+CAN0_CPU_1XCLKACT
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+CAN 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+CAN1_CPU_1XCLKACT
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+CAN 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+I2C0_CPU_1XCLKACT
+
+
+18:18
+
+
+40000
+
+
+1
+
+
+40000
+
+
+I2C 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+I2C1_CPU_1XCLKACT
+
+
+19:19
+
+
+80000
+
+
+1
+
+
+80000
+
+
+I2C 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+UART0_CPU_1XCLKACT
+
+
+20:20
+
+
+100000
+
+
+0
+
+
+0
+
+
+UART 0 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+UART1_CPU_1XCLKACT
+
+
+21:21
+
+
+200000
+
+
+1
+
+
+200000
+
+
+UART 1 AMBA Clock control 0: disable, 1: enable
+
+
+
+
+GPIO_CPU_1XCLKACT
+
+
+22:22
+
+
+400000
+
+
+1
+
+
+400000
+
+
+GPIO AMBA Clock control 0: disable, 1: enable
+
+
+
+
+LQSPI_CPU_1XCLKACT
+
+
+23:23
+
+
+800000
+
+
+1
+
+
+800000
+
+
+Quad SPI AMBA Clock control 0: disable, 1: enable
+
+
+
+
+SMC_CPU_1XCLKACT
+
+
+24:24
+
+
+1000000
+
+
+1
+
+
+1000000
+
+
+SMC AMBA Clock control 0: disable, 1: enable
+
+
+
+
+APER_CLK_CTRL@0XF800012C
+
+
+31:0
+
+
+1ffcccd
+
+
+
+
+
+1ec044d
+
+
+AMBA Peripheral Clock Control
+
+
+
+
+
THIS SHOULD BE BLANK
+LOCK IT BACK
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_LOCK
+
+
+0XF8000004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+LOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+767b
+
+
+767b
+
+
+Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_LOCK@0XF8000004
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+767b
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+ddrc_ctrl
+
+
+
+0XF8006000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDRC Control
+
+
+
+
+
+Two_rank_cfg
+
+
+
+0XF8006004
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Two Rank Configuration
+
+
+
+
+
+HPR_reg
+
+
+
+0XF8006008
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+HPR Queue control
+
+
+
+
+
+LPR_reg
+
+
+
+0XF800600C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+LPR Queue control
+
+
+
+
+
+WR_reg
+
+
+
+0XF8006010
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+WR Queue control
+
+
+
+
+
+DRAM_param_reg0
+
+
+
+0XF8006014
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Parameters 0
+
+
+
+
+
+DRAM_param_reg1
+
+
+
+0XF8006018
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Parameters 1
+
+
+
+
+
+DRAM_param_reg2
+
+
+
+0XF800601C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Parameters 2
+
+
+
+
+
+DRAM_param_reg3
+
+
+
+0XF8006020
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Parameters 3
+
+
+
+
+
+DRAM_param_reg4
+
+
+
+0XF8006024
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Parameters 4
+
+
+
+
+
+DRAM_init_param
+
+
+
+0XF8006028
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Initialization Parameters
+
+
+
+
+
+DRAM_EMR_reg
+
+
+
+0XF800602C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM EMR2, EMR3 access
+
+
+
+
+
+DRAM_EMR_MR_reg
+
+
+
+0XF8006030
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM EMR, MR access
+
+
+
+
+
+DRAM_burst8_rdwr
+
+
+
+0XF8006034
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Burst 8 read/write
+
+
+
+
+
+DRAM_disable_DQ
+
+
+
+0XF8006038
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM Disable DQ
+
+
+
+
+
+DRAM_addr_map_bank
+
+
+
+0XF800603C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Row/Column address bits
+
+
+
+
+
+DRAM_addr_map_col
+
+
+
+0XF8006040
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Column address bits
+
+
+
+
+
+DRAM_addr_map_row
+
+
+
+0XF8006044
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Select DRAM row address bits
+
+
+
+
+
+DRAM_ODT_reg
+
+
+
+0XF8006048
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DRAM ODT control
+
+
+
+
+
+phy_cmd_timeout_rddata_cpt
+
+
+
+0XF8006050
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY command time out and read data capture FIFO
+
+
+
+
+
+DLL_calib
+
+
+
+0XF8006058
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DLL calibration
+
+
+
+
+
+ODT_delay_hold
+
+
+
+0XF800605C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ODT delay and ODT hold
+
+
+
+
+
+ctrl_reg1
+
+
+
+0XF8006060
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller 1
+
+
+
+
+
+ctrl_reg2
+
+
+
+0XF8006064
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller 2
+
+
+
+
+
+ctrl_reg3
+
+
+
+0XF8006068
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller 3
+
+
+
+
+
+ctrl_reg4
+
+
+
+0XF800606C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller 4
+
+
+
+
+
+ctrl_reg5
+
+
+
+0XF8006078
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller register 5
+
+
+
+
+
+ctrl_reg6
+
+
+
+0XF800607C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Controller register 6
+
+
+
+
+
+CHE_T_ZQ
+
+
+
+0XF80060A4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ZQ parameters
+
+
+
+
+
+CHE_T_ZQ_Short_Interval_Reg
+
+
+
+0XF80060A8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Misc parameters
+
+
+
+
+
+deep_pwrdwn_reg
+
+
+
+0XF80060AC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Deep powerdown (LPDDR2)
+
+
+
+
+
+reg_2c
+
+
+
+0XF80060B0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Training control
+
+
+
+
+
+reg_2d
+
+
+
+0XF80060B4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Misc Debug
+
+
+
+
+
+dfi_timing
+
+
+
+0XF80060B8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DFI timing
+
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET
+
+
+
+0XF80060C4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC error clear
+
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET
+
+
+
+0XF80060C4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC error clear
+
+
+
+
+
+CHE_CORR_ECC_LOG_REG_OFFSET
+
+
+
+0XF80060C8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC error correction
+
+
+
+
+
+CHE_UNCORR_ECC_LOG_REG_OFFSET
+
+
+
+0XF80060DC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC unrecoverable error status
+
+
+
+
+
+CHE_ECC_STATS_REG_OFFSET
+
+
+
+0XF80060F0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC error count
+
+
+
+
+
+ECC_scrub
+
+
+
+0XF80060F4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+ECC mode/scrub
+
+
+
+
+
+phy_rcvr_enable
+
+
+
+0XF8006114
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Phy receiver enable register
+
+
+
+
+
+PHY_Config
+
+
+
+0XF8006118
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+PHY_Config
+
+
+
+0XF800611C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+PHY_Config
+
+
+
+0XF8006120
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+PHY_Config
+
+
+
+0XF8006124
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+phy_init_ratio
+
+
+
+0XF800612C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+phy_init_ratio
+
+
+
+0XF8006130
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+phy_init_ratio
+
+
+
+0XF8006134
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+phy_init_ratio
+
+
+
+0XF8006138
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+phy_rd_dqs_cfg
+
+
+
+0XF8006140
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+phy_rd_dqs_cfg
+
+
+
+0XF8006144
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+phy_rd_dqs_cfg
+
+
+
+0XF8006148
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+phy_rd_dqs_cfg
+
+
+
+0XF800614C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+phy_wr_dqs_cfg
+
+
+
+0XF8006154
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+phy_wr_dqs_cfg
+
+
+
+0XF8006158
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+phy_wr_dqs_cfg
+
+
+
+0XF800615C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+phy_wr_dqs_cfg
+
+
+
+0XF8006160
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+phy_we_cfg
+
+
+
+0XF8006168
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+phy_we_cfg
+
+
+
+0XF800616C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+phy_we_cfg
+
+
+
+0XF8006170
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+phy_we_cfg
+
+
+
+0XF8006174
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+wr_data_slv
+
+
+
+0XF800617C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+wr_data_slv
+
+
+
+0XF8006180
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+wr_data_slv
+
+
+
+0XF8006184
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+wr_data_slv
+
+
+
+0XF8006188
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+reg_64
+
+
+
+0XF8006190
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Training control 2
+
+
+
+
+
+reg_65
+
+
+
+0XF8006194
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Training control 3
+
+
+
+
+
+page_mask
+
+
+
+0XF8006204
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Page mask
+
+
+
+
+
+axi_priority_wr_port
+
+
+
+0XF8006208
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+axi_priority_wr_port
+
+
+
+0XF800620C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+axi_priority_wr_port
+
+
+
+0XF8006210
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+axi_priority_wr_port
+
+
+
+0XF8006214
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+axi_priority_rd_port
+
+
+
+0XF8006218
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+axi_priority_rd_port
+
+
+
+0XF800621C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+axi_priority_rd_port
+
+
+
+0XF8006220
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+axi_priority_rd_port
+
+
+
+0XF8006224
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+lpddr_ctrl0
+
+
+
+0XF80062A8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+LPDDR2 Control 0
+
+
+
+
+
+lpddr_ctrl1
+
+
+
+0XF80062AC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+LPDDR2 Control 1
+
+
+
+
+
+lpddr_ctrl2
+
+
+
+0XF80062B0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+LPDDR2 Control 2
+
+
+
+
+
+lpddr_ctrl3
+
+
+
+0XF80062B4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+LPDDR2 Control 3
+
+
+
+
+
+ddrc_ctrl
+
+
+
+0XF8006000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDRC Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+DDR INITIALIZATION
+LOCK DDR
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ddrc_ctrl
+
+
+0XF8006000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_soft_rstb
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.
+
+
+
+
+reg_ddrc_powerdown_en
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable
+
+
+
+
+reg_ddrc_data_bus_width
+
+
+3:2
+
+
+c
+
+
+0
+
+
+0
+
+
+DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved
+
+
+
+
+reg_ddrc_burst8_refresh
+
+
+6:4
+
+
+70
+
+
+0
+
+
+0
+
+
+Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh
+
+
+
+
+reg_ddrc_rdwr_idle_gap
+
+
+13:7
+
+
+3f80
+
+
+1
+
+
+80
+
+
+When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.
+
+
+
+
+reg_ddrc_dis_rd_bypass
+
+
+14:14
+
+
+4000
+
+
+0
+
+
+0
+
+
+Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.
+
+
+
+
+reg_ddrc_dis_act_bypass
+
+
+15:15
+
+
+8000
+
+
+0
+
+
+0
+
+
+Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.
+
+
+
+
+reg_ddrc_dis_auto_refresh
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.
+
+
+
+
+ddrc_ctrl@0XF8006000
+
+
+31:0
+
+
+1ffff
+
+
+
+
+
+80
+
+
+DDRC Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+Two_rank_cfg
+
+
+0XF8006004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_t_rfc_nom_x32
+
+
+11:0
+
+
+fff
+
+
+81
+
+
+81
+
+
+tREFI - Average time between refreshes. Unit: in multiples of 32 clocks. DRAM related. Default value is set for DDR3. Dynamic Bit Field.
+
+
+
+
+reserved_reg_ddrc_active_ranks
+
+
+13:12
+
+
+3000
+
+
+1
+
+
+1000
+
+
+Reserved. Do not modify.
+
+
+
+
+reg_ddrc_addrmap_cs_bit0
+
+
+18:14
+
+
+7c000
+
+
+0
+
+
+0
+
+
+Only present for multi-rank configurations. Selects the address bit used as rank address bit 0. Valid Range: 0 to 25, and 31 Internal Base: 9. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 31, rank address bit 0 is set to 0.
+
+
+
+
+Two_rank_cfg@0XF8006004
+
+
+31:0
+
+
+7ffff
+
+
+
+
+
+1081
+
+
+Two Rank Configuration
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+HPR_reg
+
+
+0XF8006008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_hpr_min_non_critical_x32
+
+
+10:0
+
+
+7ff
+
+
+f
+
+
+f
+
+
+Number of counts that the HPR queue is guaranteed to be non-critical (1 count = 32 DDR clocks).
+
+
+
+
+reg_ddrc_hpr_max_starve_x32
+
+
+21:11
+
+
+3ff800
+
+
+f
+
+
+7800
+
+
+Number of clocks that the HPR queue can be starved before it goes critical. Unit: 32 clocks
+
+
+
+
+reg_ddrc_hpr_xact_run_length
+
+
+25:22
+
+
+3c00000
+
+
+f
+
+
+3c00000
+
+
+Number of transactions that will be serviced once the HPR queue goes critical is the smaller of this number and the number of transactions available.
+
+
+
+
+HPR_reg@0XF8006008
+
+
+31:0
+
+
+3ffffff
+
+
+
+
+
+3c0780f
+
+
+HPR Queue control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LPR_reg
+
+
+0XF800600C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_lpr_min_non_critical_x32
+
+
+10:0
+
+
+7ff
+
+
+1
+
+
+1
+
+
+Number of clocks that the LPR queue is guaranteed to be non-critical. Unit: 32 clocks
+
+
+
+
+reg_ddrc_lpr_max_starve_x32
+
+
+21:11
+
+
+3ff800
+
+
+2
+
+
+1000
+
+
+Number of clocks that the LPR queue can be starved before it goes critical. Unit: 32 clocks
+
+
+
+
+reg_ddrc_lpr_xact_run_length
+
+
+25:22
+
+
+3c00000
+
+
+8
+
+
+2000000
+
+
+Number of transactions that will be serviced once the LPR queue goes critical is the smaller of this number and the number of transactions available
+
+
+
+
+LPR_reg@0XF800600C
+
+
+31:0
+
+
+3ffffff
+
+
+
+
+
+2001001
+
+
+LPR Queue control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+WR_reg
+
+
+0XF8006010
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_w_min_non_critical_x32
+
+
+10:0
+
+
+7ff
+
+
+1
+
+
+1
+
+
+Number of clock cycles that the WR queue is guaranteed to be non-critical.
+
+
+
+
+reg_ddrc_w_xact_run_length
+
+
+14:11
+
+
+7800
+
+
+8
+
+
+4000
+
+
+Number of transactions that will be serviced once the WR queue goes critical is the smaller of this number and the number of transactions available
+
+
+
+
+reg_ddrc_w_max_starve_x32
+
+
+25:15
+
+
+3ff8000
+
+
+2
+
+
+10000
+
+
+Number of clocks that the Write queue can be starved before it goes critical. Unit: 32 clocks. FOR PERFORMANCE ONLY.
+
+
+
+
+WR_reg@0XF8006010
+
+
+31:0
+
+
+3ffffff
+
+
+
+
+
+14001
+
+
+WR Queue control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_param_reg0
+
+
+0XF8006014
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_t_rc
+
+
+5:0
+
+
+3f
+
+
+1a
+
+
+1a
+
+
+tRC - Min time between activates to same bank (spec: 65 ns for DDR2-400 and smaller for faster parts). DRAM Related. Default value is set for DDR3.
+
+
+
+
+reg_ddrc_t_rfc_min
+
+
+13:6
+
+
+3fc0
+
+
+a0
+
+
+2800
+
+
+tRFC(min) - Minimum time from refresh to refresh or activate (spec: 75nS to 195nS). DRAM Related. Default value is set for DDR3. Dynamic Bit Field.
+
+
+
+
+reg_ddrc_post_selfref_gap_x32
+
+
+20:14
+
+
+1fc000
+
+
+10
+
+
+40000
+
+
+Minimum time to wait after coming out of self refresh before doing anything. This must be bigger than all the constraints that exist. (spec: Maximum of tXSNR and tXSRD and tXSDLL which is 512 clocks). Unit: in multiples of 32 clocks. DRAM Related
+
+
+
+
+DRAM_param_reg0@0XF8006014
+
+
+31:0
+
+
+1fffff
+
+
+
+
+
+4281a
+
+
+DRAM Parameters 0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_param_reg1
+
+
+0XF8006018
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_wr2pre
+
+
+4:0
+
+
+1f
+
+
+12
+
+
+12
+
+
+Minimum time between write and precharge to same bank DDR and DDR3: WL + BL/2 + tWR LPDDR2: WL + BL/2 + tWR + 1 Unit: Clocks where, WL: write latency. BL: burst length. This must match the value programmed in the BL bit of the mode register to the DRAM. BST is not supported at present. tWR: write recovery time. This comes directly from the DRAM specs.
+
+
+
+
+reg_ddrc_powerdown_to_x32
+
+
+9:5
+
+
+3e0
+
+
+6
+
+
+c0
+
+
+After this many clocks of NOP or DESELECT the controller will put the DRAM into power down. This must be enabled in the Master Control Register. Unit: Multiples of 32 clocks.
+
+
+
+
+reg_ddrc_t_faw
+
+
+15:10
+
+
+fc00
+
+
+16
+
+
+5800
+
+
+tFAW - At most 4 banks must be activated in a rolling window of tFAW cycles. Unit: clocks. DRAM Related.
+
+
+
+
+reg_ddrc_t_ras_max
+
+
+21:16
+
+
+3f0000
+
+
+24
+
+
+240000
+
+
+tRAS(max) - Maximum time between activate and precharge to same bank. Maximum time that a page can be kept open (spec is 70 us). If this is zero. The page is closed after each transaction. Unit: Multiples of 1024 clocks DRAM related.
+
+
+
+
+reg_ddrc_t_ras_min
+
+
+26:22
+
+
+7c00000
+
+
+13
+
+
+4c00000
+
+
+tRAS(min) - Minimum time between activate and precharge to the same bank (spec is 45 ns). Unit: clocks DRAM related. Default value is set for DDR3.
+
+
+
+
+reg_ddrc_t_cke
+
+
+31:28
+
+
+f0000000
+
+
+4
+
+
+40000000
+
+
+Minimum number of cycles of CKE HIGH/LOW during power down and self refresh. DDR2 and DDR3: Set this to tCKE value. LPDDR2: Set this to the larger of tCKE or tCKESR. Unit: clocks.
+
+
+
+
+DRAM_param_reg1@0XF8006018
+
+
+31:0
+
+
+f7ffffff
+
+
+
+
+
+44e458d2
+
+
+DRAM Parameters 1
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_param_reg2
+
+
+0XF800601C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_write_latency
+
+
+4:0
+
+
+1f
+
+
+5
+
+
+5
+
+
+Time from write command to write data on DDRC to PHY Interface. (PHY adds an extra flop delay on the write data path; hence this value is one less than the write latency of the DRAM device itself). DDR2 and DDR3: WL -1 LPDDR2: WL Where WL: Write Latency of DRAM DRAM related. In non-LPDDR mode, the minimum DRAM Write Latency (DDR2) supported is 3. In LPDDR mode, the required DRAM Write Latency of 1 is supported. Since write latency (CWL) min is 3, and DDR2 CWL is CL-1, the min (DDR2) CL supported is 4
+
+
+
+
+reg_ddrc_rd2wr
+
+
+9:5
+
+
+3e0
+
+
+7
+
+
+e0
+
+
+Minimum time from read command to write command. Include time for bus turnaround and all per-bank, per-rank, and global constraints. DDR2 and DDR3: RL + BL/2 + 2 - WL LPDDR2: RL + BL/2 + RU (tDQSCKmax / tCK) + 1 - WL Write Pre-amble and DQ/DQS jitter timer is included in the above equation. DRAM RELATED.
+
+
+
+
+reg_ddrc_wr2rd
+
+
+14:10
+
+
+7c00
+
+
+e
+
+
+3800
+
+
+Minimum time from write command to read command. Includes time for bus turnaround and recovery times and all per-bank, per-rank, and global constraints. DDR2 and DDR3: WL + tWTR + BL/2 LPDDR2: WL + tWTR + BL/2 + 1 Unit: clocks. Where, WL: Write latency, BL: burst length. This should match the value. Programmed in the BL bit of the mode register to the DRAM. tWTR: internal WRITE to READ command delay. This comes directly from the DRAM specs.
+
+
+
+
+reg_ddrc_t_xp
+
+
+19:15
+
+
+f8000
+
+
+4
+
+
+20000
+
+
+tXP: Minimum time after power down exit to any operation. DRAM related.
+
+
+
+
+reg_ddrc_pad_pd
+
+
+22:20
+
+
+700000
+
+
+0
+
+
+0
+
+
+If pads have a power-saving mode, this is the greater of the time for the pads to enter power down or the time for the pads to exit power down. Used only in non-DFI designs. Unit: clocks.
+
+
+
+
+reg_ddrc_rd2pre
+
+
+27:23
+
+
+f800000
+
+
+4
+
+
+2000000
+
+
+Minimum time from read to precharge of same bank DDR2: AL + BL/2 + max(tRTP, 2) - 2 DDR3: AL + max (tRTP, 4) LPDDR2: BL/2 + tRTP - 1 AL: Additive Latency; BL: DRAM Burst Length; tRTP: value from spec. DRAM related.
+
+
+
+
+reg_ddrc_t_rcd
+
+
+31:28
+
+
+f0000000
+
+
+7
+
+
+70000000
+
+
+tRCD - AL Minimum time from activate to read or write command to same bank Min value for this is 1. AL = Additive Latency. DRAM Related.
+
+
+
+
+DRAM_param_reg2@0XF800601C
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+720238e5
+
+
+DRAM Parameters 2
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_param_reg3
+
+
+0XF8006020
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_t_ccd
+
+
+4:2
+
+
+1c
+
+
+4
+
+
+10
+
+
+tCCD - Minimum time between two reads or two writes (from bank a to bank b) is this value + 1. DRAM related.
+
+
+
+
+reg_ddrc_t_rrd
+
+
+7:5
+
+
+e0
+
+
+6
+
+
+c0
+
+
+tRRD - Minimum time between activates from bank A to bank B. (spec: 10ns or less) DRAM RELATED
+
+
+
+
+reg_ddrc_refresh_margin
+
+
+11:8
+
+
+f00
+
+
+2
+
+
+200
+
+
+Issue critical refresh or page close this many cycles before the critical refresh or page timer expires. It is recommended that this not be changed from the default value.
+
+
+
+
+reg_ddrc_t_rp
+
+
+15:12
+
+
+f000
+
+
+7
+
+
+7000
+
+
+tRP - Minimum time from precharge to activate of same bank. DRAM RELATED
+
+
+
+
+reg_ddrc_refresh_to_x32
+
+
+20:16
+
+
+1f0000
+
+
+8
+
+
+80000
+
+
+If the refresh timer (tRFC_nom, as known as tREFI) has expired at least once, but it has not expired burst_of_N_refresh times yet, then a 'speculative refresh' may be performed. A speculative refresh is a refresh performed at a time when refresh would be useful, but before it is absolutely required. When the DRAM bus is idle for a period of time determined by this refresh idle timeout and the refresh timer has expired at least once since the last refresh, then a 'speculative refresh' will be performed. Speculative refreshes will continue successively until there are no refreshes pending or until new reads or writes are issued to the controller. Dynamic Bit Field.
+
+
+
+
+reg_ddrc_mobile
+
+
+22:22
+
+
+400000
+
+
+0
+
+
+0
+
+
+0: DDR2 or DDR3 device. 1: LPDDR2 device.
+
+
+
+
+reg_ddrc_en_dfi_dram_clk_disable
+
+
+23:23
+
+
+800000
+
+
+0
+
+
+0
+
+
+Enables the assertion of ddrc_dfi_dram_clk_disable. In DDR2/DDR3, only asserted in Self Refresh. In mDDR/LPDDR2, can be asserted in following: - during normal operation (Clock Stop), - in Power Down - in Self Refresh - In Deep Power Down
+
+
+
+
+reg_ddrc_read_latency
+
+
+28:24
+
+
+1f000000
+
+
+7
+
+
+7000000
+
+
+Non-LPDDR2: not used. DDR2 and DDR3: Set to Read Latency, RL. Time from Read command to Read data on DRAM interface. It is used to calculate when DRAM clock may be stopped. Unit: DDR clock.
+
+
+
+
+reg_phy_mode_ddr1_ddr2
+
+
+29:29
+
+
+20000000
+
+
+1
+
+
+20000000
+
+
+unused
+
+
+
+
+reg_ddrc_dis_pad_pd
+
+
+30:30
+
+
+40000000
+
+
+0
+
+
+0
+
+
+1: disable the pad power down feature 0: Enable the pad power down feature.
+
+
+
+
+DRAM_param_reg3@0XF8006020
+
+
+31:0
+
+
+7fdffffc
+
+
+
+
+
+270872d0
+
+
+DRAM Parameters 3
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_param_reg4
+
+
+0XF8006024
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_en_2t_timing_mode
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+1: DDRC will use 2T timing 0: DDRC will use 1T timing
+
+
+
+
+reg_ddrc_prefer_write
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+1: Bank selector prefers writes over reads
+
+
+
+
+reg_ddrc_mr_wr
+
+
+6:6
+
+
+40
+
+
+0
+
+
+0
+
+
+A low to high signal on this signal will do a mode register write or read. Controller will accept this command, if this signal is detected high and "ddrc_reg_mr_wr_busy" is detected low.
+
+
+
+
+reg_ddrc_mr_addr
+
+
+8:7
+
+
+180
+
+
+0
+
+
+0
+
+
+DDR2 and DDR3: Mode register address. LPDDR2: not used. 00: MR0 01: MR1 10: MR2 11: MR3
+
+
+
+
+reg_ddrc_mr_data
+
+
+24:9
+
+
+1fffe00
+
+
+0
+
+
+0
+
+
+DDR2 and DDR3: Mode register write data. LPDDR2: The 16 bits are interpreted for reads and writes: Reads: MR Addr[7:0], Don't Care[7:0]. Writes: MR Addf[7:0], MR Data[7:0].
+
+
+
+
+ddrc_reg_mr_wr_busy
+
+
+25:25
+
+
+2000000
+
+
+0
+
+
+0
+
+
+Core must initiate a MR write / read operation only if this signal is low. This signal goes high in the clock after the controller accepts the write / read request. It goes low when (i) MR write command has been issued to the DRAM (ii) MR Read data has been returned to Controller. Any MR write / read command that is received when 'ddrc_reg_mr_wr_busy' is high is not accepted. 0: Indicates that the core can initiate a mode register write / read operation. 1: Indicates that mode register write / read operation is in progress.
+
+
+
+
+reg_ddrc_mr_type
+
+
+26:26
+
+
+4000000
+
+
+0
+
+
+0
+
+
+Indicates whether the Mode register operation is read or write 0: write 1: read
+
+
+
+
+reg_ddrc_mr_rdata_valid
+
+
+27:27
+
+
+8000000
+
+
+0
+
+
+0
+
+
+This bit indicates whether the Mode Register Read Data present at address 0xA9 is valid or not. This bit is 0 by default. This bit will be cleared (0), whenever a Mode Register Read command is issued. This bit will be set to 1, when the Mode Register Read Data is written to register 0xA9.
+
+
+
+
+DRAM_param_reg4@0XF8006024
+
+
+31:0
+
+
+fffffc3
+
+
+
+
+
+0
+
+
+DRAM Parameters 4
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_init_param
+
+
+0XF8006028
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_final_wait_x32
+
+
+6:0
+
+
+7f
+
+
+7
+
+
+7
+
+
+Cycles to wait after completing the DRAM init sequence before starting the dynamic scheduler. Units are in counts of a global timer that pulses every 32 clock cycles. Default value is set for DDR3.
+
+
+
+
+reg_ddrc_pre_ocd_x32
+
+
+10:7
+
+
+780
+
+
+0
+
+
+0
+
+
+Wait period before driving the 'OCD Complete' command to DRAM. Units are in counts of a global timer that pulses every 32 clock cycles. There is no known spec requirement for this. It may be set to zero.
+
+
+
+
+reg_ddrc_t_mrd
+
+
+13:11
+
+
+3800
+
+
+4
+
+
+2000
+
+
+tMRD - Cycles between Load Mode commands. DRAM related. Default value is set for DDR3.
+
+
+
+
+DRAM_init_param@0XF8006028
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+2007
+
+
+DRAM Initialization Parameters
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_EMR_reg
+
+
+0XF800602C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_emr2
+
+
+15:0
+
+
+ffff
+
+
+8
+
+
+8
+
+
+DDR2: Value loaded into EMR2 register DDR3: Value loaded into MR2 register LPDDR2: Value loaded into MR3 register
+
+
+
+
+reg_ddrc_emr3
+
+
+31:16
+
+
+ffff0000
+
+
+0
+
+
+0
+
+
+DDR2: Value loaded into EMR3 register DDR3: Value loaded into MR3 register. Set Bit[2:0] to 3'b000. These bits are set appropriately by the Controller during Read Data eye training and Read DQS gate leveling. LPDDR2: Unused
+
+
+
+
+DRAM_EMR_reg@0XF800602C
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+8
+
+
+DRAM EMR2, EMR3 access
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_EMR_MR_reg
+
+
+0XF8006030
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_mr
+
+
+15:0
+
+
+ffff
+
+
+930
+
+
+930
+
+
+DDR2: Value loaded into MR register. (Bit[8] is for DLL and the setting here is ignored. Controller sets this bit appropriately DDR3: Value loaded into MR0 register. LPDDR2: Value loaded into MR1 register
+
+
+
+
+reg_ddrc_emr
+
+
+31:16
+
+
+ffff0000
+
+
+4
+
+
+40000
+
+
+DDR2: Value loaded into EMR1register. (Bits[9:7] are for OCD and the setting in this reg is ignored. Controller sets this bits appropriately during initialization DDR3: Value loaded into MR1 register. Set Bit[7] to 0. This bit is set appropriately by the Controller during Write Leveling LPDDR2: Value loaded into MR2 register
+
+
+
+
+DRAM_EMR_MR_reg@0XF8006030
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+40930
+
+
+DRAM EMR, MR access
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_burst8_rdwr
+
+
+0XF8006034
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_burst_rdwr
+
+
+3:0
+
+
+f
+
+
+4
+
+
+4
+
+
+Controls the burst size used to access the DRAM. This must match the BL mode register setting in the DRAM. 0010: Burst length of 4 0100: Burst length of 8 1000: Burst length of 16 (LPDDR2 with ___-bit data) All other values are reserved
+
+
+
+
+reg_ddrc_pre_cke_x1024
+
+
+13:4
+
+
+3ff0
+
+
+105
+
+
+1050
+
+
+Clock cycles to wait after a DDR software reset before driving CKE high to start the DRAM initialization sequence. Units: 1024 clock cycles. DDR2 Specifications typically require this to be programmed for a delay of >= 200 uS. LPDDR2 - tINIT0 of 20 mS (max) + tINIT1 of 100 nS (min)
+
+
+
+
+reg_ddrc_post_cke_x1024
+
+
+25:16
+
+
+3ff0000
+
+
+1
+
+
+10000
+
+
+Clock cycles to wait after driving CKE high to start the DRAM initialization sequence. Units: 1024 clocks. DDR2 typically require a 400 ns delay, requiring this value to be programmed to 2 at all clock speeds. LPDDR2 - Typically require this to be programmed for a delay of 200 us.
+
+
+
+
+reg_ddrc_burstchop
+
+
+28:28
+
+
+10000000
+
+
+0
+
+
+0
+
+
+Feature not supported. When 1, Controller is out in burstchop mode.
+
+
+
+
+DRAM_burst8_rdwr@0XF8006034
+
+
+31:0
+
+
+13ff3fff
+
+
+
+
+
+11054
+
+
+DRAM Burst 8 read/write
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_disable_DQ
+
+
+0XF8006038
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_force_low_pri_n
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Read Transaction Priority disable. 0: read transactions forced to low priority (turns off Bypass). 1: HPR reads allowed if enabled in the AXI priority read registers.
+
+
+
+
+reg_ddrc_dis_dq
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+When 1, DDRC will not de-queue any transactions from the CAM. Bypass will also be disabled. All transactions will be queued in the CAM. This is for debug only; no reads or writes are issued to DRAM as long as this is asserted. Dynamic Bit Field.
+
+
+
+
+DRAM_disable_DQ@0XF8006038
+
+
+31:0
+
+
+3
+
+
+
+
+
+0
+
+
+DRAM Disable DQ
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_addr_map_bank
+
+
+0XF800603C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_addrmap_bank_b0
+
+
+3:0
+
+
+f
+
+
+7
+
+
+7
+
+
+Selects the address bits used as bank address bit 0. Valid Range: 0 to 14. Internal Base: 5. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_bank_b1
+
+
+7:4
+
+
+f0
+
+
+7
+
+
+70
+
+
+Selects the address bits used as bank address bit 1. Valid Range: 0 to 14; Internal Base: 6. The selected address bit for each of the bank address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_bank_b2
+
+
+11:8
+
+
+f00
+
+
+7
+
+
+700
+
+
+Selects the AXI address bit used as bank address bit 2. Valid range 0 to 14, and 15. Internal Base: 7. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, bank address bit 2 is set to 0.
+
+
+
+
+reg_ddrc_addrmap_col_b5
+
+
+15:12
+
+
+f000
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bits used as column address bits 6. Half bus width mode: Selects the address bits used as column address bits 7. Valid range is 0-7. Internal Base 8. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_col_b6
+
+
+19:16
+
+
+f0000
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bits used as column address bits 7. Half bus width mode: Selects the address bits used as column address bits 8. Valid range is 0-7. Internal Base 9. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+DRAM_addr_map_bank@0XF800603C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+777
+
+
+Row/Column address bits
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_addr_map_col
+
+
+0XF8006040
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_addrmap_col_b2
+
+
+3:0
+
+
+f
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bit used as column address bit 3. Half bus width mode: Selects the address bit used as column address bit 4. Valid Range: 0 to 7. Internal Base: 5 The selected address bit is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_col_b3
+
+
+7:4
+
+
+f0
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bit used as column address bit 4. Half bus width mode: Selects the address bit used as column address bit 5. Valid Range: 0 to 7 Internal Base: 6 The selected address bit is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_col_b4
+
+
+11:8
+
+
+f00
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bit used as column address bit 5. Half bus width mode: Selects the address bit used as column address bits 6. Valid Range: 0 to 7. Internal Base: 7. The selected address bit for each of the column address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_col_b7
+
+
+15:12
+
+
+f000
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bit used as column address bit 8. Half bus width mode: Selects the address bit used as column address bit 9. Valid Range: 0 to 7, and 15. Internal Base: 10. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10.In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.
+
+
+
+
+reg_ddrc_addrmap_col_b8
+
+
+19:16
+
+
+f0000
+
+
+0
+
+
+0
+
+
+Full bus width mode: Selects the address bit used as column address bit 9. Half bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 11 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.
+
+
+
+
+reg_ddrc_addrmap_col_b9
+
+
+23:20
+
+
+f00000
+
+
+f
+
+
+f00000
+
+
+Full bus width mode: Selects the address bit used as column address bit 11. (Column address bit 10 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Valid Range: 0 to 7, and 15 Internal Base: 12 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.
+
+
+
+
+reg_ddrc_addrmap_col_b10
+
+
+27:24
+
+
+f000000
+
+
+f
+
+
+f000000
+
+
+Full bus width mode: Selects the address bit used as column address bit 12. (Column address bit 11 in LPDDR2 mode) Half bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 13 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.
+
+
+
+
+reg_ddrc_addrmap_col_b11
+
+
+31:28
+
+
+f0000000
+
+
+f
+
+
+f0000000
+
+
+Full bus width mode: Selects the address bit used as column address bit 13. (Column address bit 12 in LPDDR2 mode) Half bus width mode: Unused. To make it unused, this should be set to 15. (Column address bit 13 in LPDDR2 mode) Valid Range: 0 to 7, and 15. Internal Base: 14. The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, this column address bit is set to 0. Note: Per JEDEC DDR2 spec, column address bit 10 is reserved for indicating auto-precharge, and hence no source address bit can be mapped to column address bit 10. In LPDDR2, there is a dedicated bit for auto-precharge in the CA bus, and hence column bit 10 is used.
+
+
+
+
+DRAM_addr_map_col@0XF8006040
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+fff00000
+
+
+Column address bits
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_addr_map_row
+
+
+0XF8006044
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_addrmap_row_b0
+
+
+3:0
+
+
+f
+
+
+6
+
+
+6
+
+
+Selects the AXI address bits used as row address bit 0. Valid Range: 0 to 11. Internal Base: 9 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field
+
+
+
+
+reg_ddrc_addrmap_row_b1
+
+
+7:4
+
+
+f0
+
+
+6
+
+
+60
+
+
+Selects the AXI address bits used as row address bit 1. Valid Range: 0 to 11. Internal Base: 10 The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_row_b2_11
+
+
+11:8
+
+
+f00
+
+
+6
+
+
+600
+
+
+Selects the AXI address bits used as row address bits 2 to 11. Valid Range: 0 to 11. Internal Base: 11 (for row address bit 2) to 20 (for row address bit 11) The selected address bit for each of the row address bits is determined by adding the Internal Base to the value of this field.
+
+
+
+
+reg_ddrc_addrmap_row_b12
+
+
+15:12
+
+
+f000
+
+
+6
+
+
+6000
+
+
+Selects the AXI address bit used as row address bit 12. Valid Range: 0 to 8, Internal Base: 21 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 12 is set to 0.
+
+
+
+
+reg_ddrc_addrmap_row_b13
+
+
+19:16
+
+
+f0000
+
+
+6
+
+
+60000
+
+
+Selects the AXI address bit used as row address bit 13. Valid Range: 0 to 7, Internal Base: 22 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 13 is set to 0.
+
+
+
+
+reg_ddrc_addrmap_row_b14
+
+
+23:20
+
+
+f00000
+
+
+6
+
+
+600000
+
+
+Selects theAXI address bit used as row address bit 14. Valid Range: 0 to 6, Internal Base: 23 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 14 is set to 0.
+
+
+
+
+reg_ddrc_addrmap_row_b15
+
+
+27:24
+
+
+f000000
+
+
+f
+
+
+f000000
+
+
+Selects the AXI address bit used as row address bit 15. Valid Range: 0 to 5, Internal Base: 24 The selected address bit is determined by adding the Internal Base to the value of this field. If set to 15, row address bit 15 is set to 0.
+
+
+
+
+DRAM_addr_map_row@0XF8006044
+
+
+31:0
+
+
+fffffff
+
+
+
+
+
+f666666
+
+
+Select DRAM row address bits
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DRAM_ODT_reg
+
+
+0XF8006048
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_local_odt
+
+
+13:12
+
+
+3000
+
+
+0
+
+
+0
+
+
+Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is in progress (where 'in progress' is defined as after a read command is issued and until all read data has been returned all the way to the controller.) Typically this is set to the value required to enable termination at the desired strength for read usage.
+
+
+
+
+reg_phy_wr_local_odt
+
+
+15:14
+
+
+c000
+
+
+3
+
+
+c000
+
+
+Value to drive on the 2-bit local_odt PHY outputs when write levelling is enabled for DQS.
+
+
+
+
+reg_phy_idle_local_odt
+
+
+17:16
+
+
+30000
+
+
+3
+
+
+30000
+
+
+Value to drive on the 2-bit local_odt PHY outputs when output enable is not asserted and a read is not in progress. Typically this is the value required to disable termination to save power when idle.
+
+
+
+
+DRAM_ODT_reg@0XF8006048
+
+
+31:0
+
+
+3f000
+
+
+
+
+
+3c000
+
+
+DRAM ODT control
+
+
+
+
+
Register ( slcr )phy_cmd_timeout_rddata_cpt
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_cmd_timeout_rddata_cpt
+
+
+0XF8006050
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_cmd_to_data
+
+
+3:0
+
+
+f
+
+
+0
+
+
+0
+
+
+Not used in DFI PHY.
+
+
+
+
+reg_phy_wr_cmd_to_data
+
+
+7:4
+
+
+f0
+
+
+0
+
+
+0
+
+
+Not used in DFI PHY.
+
+
+
+
+reg_phy_rdc_we_to_re_delay
+
+
+11:8
+
+
+f00
+
+
+8
+
+
+800
+
+
+This register value + 1 give the number of clock cycles between writing into the Read Capture FIFO and the read operation. The setting of this register determines the read data timing and depends upon total delay in the system for read operation which include fly-by delays, trace delay, clkout_invert etc. This is used only if reg_phy_use_fixed_re=1.
+
+
+
+
+reg_phy_rdc_fifo_rst_disable
+
+
+15:15
+
+
+8000
+
+
+0
+
+
+0
+
+
+When 1, disable counting the number of times the Read Data Capture FIFO has been reset when the FIFO was not empty.
+
+
+
+
+reg_phy_use_fixed_re
+
+
+16:16
+
+
+10000
+
+
+1
+
+
+10000
+
+
+When 1: PHY generates FIFO read enable after fixed number of clock cycles as defined by reg_phy_rdc_we_to_re_delay[3:0]. When 0: PHY uses the not_empty method to do the read enable generation. Note: This port must be set HIGH during training/leveling process i.e. when ddrc_dfi_wrlvl_en/ ddrc_dfi_rdlvl_en/ ddrc_dfi_rdlvl_gate_en port is set HIGH.
+
+
+
+
+reg_phy_rdc_fifo_rst_err_cnt_clr
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Clear/reset for counter rdc_fifo_rst_err_cnt[3:0]. 0: no clear, 1: clear. Note: This is a synchronous dynamic signal that must have timing closed.
+
+
+
+
+reg_phy_dis_phy_ctrl_rstn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the reset from Phy Ctrl macro. 1: PHY Ctrl macro reset port is always HIGH 0: PHY Ctrl macro gets power on reset.
+
+
+
+
+reg_phy_clk_stall_level
+
+
+19:19
+
+
+80000
+
+
+0
+
+
+0
+
+
+1: stall clock, for DLL aging control
+
+
+
+
+reg_phy_gatelvl_num_of_dq0
+
+
+27:24
+
+
+f000000
+
+
+7
+
+
+7000000
+
+
+This register value determines register determines the number of samples used for each ratio increment during Gate Training. Num_of_iteration = reg_phy_gatelvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.
+
+
+
+
+reg_phy_wrlvl_num_of_dq0
+
+
+31:28
+
+
+f0000000
+
+
+7
+
+
+70000000
+
+
+This register value determines register determines the number of samples used for each ratio increment during Write Leveling. Num_of_iteration = reg_phy_wrlvl_num_of_dq0 + 1 The recommended value for this register is 8. Accuracy is better with higher value, but this will cause leveling to run longer.
+
+
+
+
+phy_cmd_timeout_rddata_cpt@0XF8006050
+
+
+31:0
+
+
+ff0f8fff
+
+
+
+
+
+77010800
+
+
+PHY command time out and read data capture FIFO
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DLL_calib
+
+
+0XF8006058
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_dis_dll_calib
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+When 1, disable dll_calib generated by the controller. The core should issue the dll_calib signal using co_gs_dll_calib input. This input is changeable on the fly. When 0, controller will issue dll_calib periodically
+
+
+
+
+DLL_calib@0XF8006058
+
+
+31:0
+
+
+10000
+
+
+
+
+
+0
+
+
+DLL calibration
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ODT_delay_hold
+
+
+0XF800605C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_rd_odt_delay
+
+
+3:0
+
+
+f
+
+
+3
+
+
+3
+
+
+UNUSED
+
+
+
+
+reg_ddrc_wr_odt_delay
+
+
+7:4
+
+
+f0
+
+
+0
+
+
+0
+
+
+The delay, in clock cycles, from issuing a write command to setting ODT values associated with that command. ODT setting should remain constant for the entire time that DQS is driven by the controller. The suggested value for DDR2 is WL - 5 and for DDR3 is 0. WL is Write latency. DDR2 ODT has a 2-cycle on-time delay and a 2.5-cycle off-time delay. ODT is not applicable to LPDDR2.
+
+
+
+
+reg_ddrc_rd_odt_hold
+
+
+11:8
+
+
+f00
+
+
+0
+
+
+0
+
+
+Unused
+
+
+
+
+reg_ddrc_wr_odt_hold
+
+
+15:12
+
+
+f000
+
+
+5
+
+
+5000
+
+
+Cycles to hold ODT for a Write Command. When 0x0, ODT signal is ON for 1 cycle. When 0x1, it is ON for 2 cycles, etc. The values to program in different modes are : DRAM Burst of 4 -2, DRAM Burst of 8 -4
+
+
+
+
+ODT_delay_hold@0XF800605C
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+5003
+
+
+ODT delay and ODT hold
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg1
+
+
+0XF8006060
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_pageclose
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+If true, bank will be closed and kept closed if no transactions are available for it. If false, bank will remain open until there is a need to close it (to open a different page, or for page timeout or refresh timeout.) This does not apply when auto-refresh is used.
+
+
+
+
+reg_ddrc_lpr_num_entries
+
+
+6:1
+
+
+7e
+
+
+1f
+
+
+3e
+
+
+Number of entries in the low priority transaction store is this value plus 1. In this design, by default all read ports are treated as low priority and hence the value of 0x1F. The hpr_num_entries is 32 minus this value. Bit [6] is ignored.
+
+
+
+
+reg_ddrc_auto_pre_en
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+When set, most reads and writes will be issued with auto-precharge. (Exceptions can be made for collision cases.)
+
+
+
+
+reg_ddrc_refresh_update_level
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Toggle this signal to indicate that refresh register(s) have been updated. The value will be automatically updated when exiting soft reset. So it does not need to be toggled initially. Dynamic Bit Field.
+
+
+
+
+reg_ddrc_dis_wc
+
+
+9:9
+
+
+200
+
+
+0
+
+
+0
+
+
+Disable Write Combine: 0: enable 1: disable
+
+
+
+
+reg_ddrc_dis_collision_page_opt
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+When this is set to 0, auto-precharge will be disabled for the flushed command in a collision case. Collision cases are write followed by read to same address, read followed by write to same address, or write followed by write to same address with DIS_WC bit = 1 (where 'same address' comparisons exclude the two address bits representing critical word).
+
+
+
+
+reg_ddrc_selfref_en
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+If 1, then the controller will put the DRAM into self refresh when the transaction store is empty. Dynamic Bit Field.
+
+
+
+
+ctrl_reg1@0XF8006060
+
+
+31:0
+
+
+17ff
+
+
+
+
+
+3e
+
+
+Controller 1
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg2
+
+
+0XF8006064
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_go2critical_hysteresis
+
+
+12:5
+
+
+1fe0
+
+
+0
+
+
+0
+
+
+Describes the number of cycles that co_gs_go2critical_rd or co_gs_go2critical_wr must be asserted before the corresponding queue moves to the 'critical' state in the DDRC. The arbiter controls the co_gs_go2critical_* signals; it is designed for use with this hysteresis field set to 0.
+
+
+
+
+reg_arb_go2critical_en
+
+
+17:17
+
+
+20000
+
+
+1
+
+
+20000
+
+
+0: Keep reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC at 0. 1: Set reg_ddrc_go2critical_wr and reg_ddrc_go2critical_rd signals going to DDRC based on Urgent input coming from AXI master.
+
+
+
+
+ctrl_reg2@0XF8006064
+
+
+31:0
+
+
+21fe0
+
+
+
+
+
+20000
+
+
+Controller 2
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg3
+
+
+0XF8006068
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_wrlvl_ww
+
+
+7:0
+
+
+ff
+
+
+41
+
+
+41
+
+
+DDR2: not applicable. LPDDR2 and DDR3: Write leveling write-to-write delay. Specifies the minimum number of clock cycles from the assertion of a ddrc_dfi_wrlvl_strobe signal to the next ddrc_dfi_wrlvl_strobe signal. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode. Recommended value is: (RL + reg_phy_rdc_we_to_re_delay + 50)
+
+
+
+
+reg_ddrc_rdlvl_rr
+
+
+15:8
+
+
+ff00
+
+
+41
+
+
+4100
+
+
+DDR2 and LPDDR2: not applicable. DDR3: Read leveling read-to-read delay. Specifies the minimum number of clock cycles from the assertion of a read command to the next read command. Only applicable when connecting to PHYs operating in PHY RdLvl Evaluation mode.
+
+
+
+
+reg_ddrc_dfi_t_wlmrd
+
+
+25:16
+
+
+3ff0000
+
+
+28
+
+
+280000
+
+
+DDR2 and LPDDR2: not applicable. DDR3: First DQS/DQS# rising edge after write leveling mode is programmed. This is same as the tMLRD value from the DRAM spec.
+
+
+
+
+ctrl_reg3@0XF8006068
+
+
+31:0
+
+
+3ffffff
+
+
+
+
+
+284141
+
+
+Controller 3
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg4
+
+
+0XF800606C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+dfi_t_ctrlupd_interval_min_x1024
+
+
+7:0
+
+
+ff
+
+
+10
+
+
+10
+
+
+This is the minimum amount of time between Controller initiated DFI update requests (which will be executed whenever the controller is idle). Set this number higher to reduce the frequency of update requests, which can have a small impact on the latency of the first read request when the controller is idle. Units: 1024 clocks
+
+
+
+
+dfi_t_ctrlupd_interval_max_x1024
+
+
+15:8
+
+
+ff00
+
+
+16
+
+
+1600
+
+
+This is the maximum amount of time between Controller initiated DFI update requests. This timer resets with each update request; when the timer expires, traffic is blocked for a few cycles. PHY can use this idle time to recalibrate the delay lines to the DLLs. The DLL calibration is also used to reset PHY FIFO pointers in case of data capture errors. Updates are required to maintain calibration over PVT, but frequent updates may impact performance. Units: 1024 clocks
+
+
+
+
+ctrl_reg4@0XF800606C
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+1610
+
+
+Controller 4
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg5
+
+
+0XF8006078
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_dfi_t_ctrl_delay
+
+
+3:0
+
+
+f
+
+
+1
+
+
+1
+
+
+Specifies the number of DFI clock cycles after an assertion or deassertion of the DFI control signals that the control signals at the PHY-DRAM interface reflect the assertion or de-assertion. If the DFI clock and the memory clock are not phase-aligned, this timing parameter should be rounded up to the next integer value.
+
+
+
+
+reg_ddrc_dfi_t_dram_clk_disable
+
+
+7:4
+
+
+f0
+
+
+1
+
+
+10
+
+
+Specifies the number of DFI clock cycles from the assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the clock to the DRAM memory devices, at the PHY-DRAM boundary, maintains a low value. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.
+
+
+
+
+reg_ddrc_dfi_t_dram_clk_enable
+
+
+11:8
+
+
+f00
+
+
+1
+
+
+100
+
+
+Specifies the number of DFI clock cycles from the de-assertion of the ddrc_dfi_dram_clk_disable signal on the DFI until the first valid rising edge of the clock to the DRAM memory devices at the PHY-DRAM boundary. If the DFI clock and the memory clock are not phase aligned, this timing parameter should be rounded up to the next integer value.
+
+
+
+
+reg_ddrc_t_cksre
+
+
+15:12
+
+
+f000
+
+
+6
+
+
+6000
+
+
+This is the time after Self Refresh Entry that CK is maintained as a valid clock. Specifies the clock disable delay after SRE. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRE
+
+
+
+
+reg_ddrc_t_cksrx
+
+
+19:16
+
+
+f0000
+
+
+6
+
+
+60000
+
+
+This is the time before Self Refresh Exit that CK is maintained as a valid clock before issuing SRX. Specifies the clock stable time before SRX. Recommended settings: LPDDR2: 2 DDR2: 1 DDR3: tCKSRX
+
+
+
+
+reg_ddrc_t_ckesr
+
+
+25:20
+
+
+3f00000
+
+
+4
+
+
+400000
+
+
+Minimum CKE low width for Self Refresh entry to exit Timing in memory clock cycles. Recommended settings: LPDDR2: tCKESR DDR2: tCKE DDR3: tCKE+1
+
+
+
+
+ctrl_reg5@0XF8006078
+
+
+31:0
+
+
+3ffffff
+
+
+
+
+
+466111
+
+
+Controller register 5
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ctrl_reg6
+
+
+0XF800607C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_t_ckpde
+
+
+3:0
+
+
+f
+
+
+2
+
+
+2
+
+
+This is the time after Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after PDE. Recommended setting for LPDDR2: 2.
+
+
+
+
+reg_ddrc_t_ckpdx
+
+
+7:4
+
+
+f0
+
+
+2
+
+
+20
+
+
+This is the time before Power Down Exit that CK is maintained as a valid clock before issuing PDX. Specifies the clock stable time before PDX. Recommended setting for LPDDR2: 2.
+
+
+
+
+reg_ddrc_t_ckdpde
+
+
+11:8
+
+
+f00
+
+
+2
+
+
+200
+
+
+This is the time after Deep Power Down Entry that CK is maintained as a valid clock. Specifies the clock disable delay after DPDE. Recommended setting for LPDDR2: 2.
+
+
+
+
+reg_ddrc_t_ckdpdx
+
+
+15:12
+
+
+f000
+
+
+2
+
+
+2000
+
+
+This is the time before Deep Power Down Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before DPDX. Recommended setting for LPDDR2: 2.
+
+
+
+
+reg_ddrc_t_ckcsx
+
+
+19:16
+
+
+f0000
+
+
+3
+
+
+30000
+
+
+This is the time before Clock Stop Exit that CK is maintained as a valid clock before issuing DPDX. Specifies the clock stable time before next command after Clock Stop Exit. Recommended setting for LPDDR2: tXP + 2.
+
+
+
+
+ctrl_reg6@0XF800607C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+32222
+
+
+Controller register 6
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_T_ZQ
+
+
+0XF80060A4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_dis_auto_zq
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+1=disable controller generation of ZQCS command. Co_gs_zq_calib_short can be used instead to control ZQ calibration commands. 0=internally generate ZQCS commands based on reg_ddrc_t_zq_short_interval_x1024 This is only present for implementations supporting DDR3 and LPDDR2 devices.
+
+
+
+
+reg_ddrc_ddr3
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Indicates operating in DDR2/DDR3 mode. Default value is set for DDR3.
+
+
+
+
+reg_ddrc_t_mod
+
+
+11:2
+
+
+ffc
+
+
+200
+
+
+800
+
+
+Mode register set command update delay (minimum d'128)
+
+
+
+
+reg_ddrc_t_zq_long_nop
+
+
+21:12
+
+
+3ff000
+
+
+200
+
+
+200000
+
+
+DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCL (ZQ calibration long) command is issued to DRAM. Units: Clock cycles.
+
+
+
+
+reg_ddrc_t_zq_short_nop
+
+
+31:22
+
+
+ffc00000
+
+
+40
+
+
+10000000
+
+
+DDR2: not applicable. LPDDR2 and DDR3: Number of cycles of NOP required after a ZQCS (ZQ calibration short) command is issued to DRAM. Units: Clock cycles.
+
+
+
+
+CHE_T_ZQ@0XF80060A4
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+10200802
+
+
+ZQ parameters
+
+
+
+
+
Register ( slcr )CHE_T_ZQ_Short_Interval_Reg
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_T_ZQ_Short_Interval_Reg
+
+
+0XF80060A8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+t_zq_short_interval_x1024
+
+
+19:0
+
+
+fffff
+
+
+cb73
+
+
+cb73
+
+
+DDR2: not used. LPDDR2 and DDR3: Average interval to wait between automatically issuing ZQCS (ZQ calibration short) commands to DDR3 devices. Meaningless if reg_ddrc_dis_auto_zq=1. Units: 1024 Clock cycles.
+
+
+
+
+dram_rstn_x1024
+
+
+27:20
+
+
+ff00000
+
+
+69
+
+
+6900000
+
+
+Number of cycles to assert DRAM reset signal during init sequence. Units: 1024 Clock cycles. Applicable for DDR3 only.
+
+
+
+
+CHE_T_ZQ_Short_Interval_Reg@0XF80060A8
+
+
+31:0
+
+
+fffffff
+
+
+
+
+
+690cb73
+
+
+Misc parameters
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+deep_pwrdwn_reg
+
+
+0XF80060AC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+deeppowerdown_en
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+DDR2 and DDR3: not used. LPDDR2: 0: Brings Controller out of Deep Powerdown mode. 1: Puts DRAM into Deep Powerdown mode when the transaction store is empty. For performance only. Dynamic Bit Field.
+
+
+
+
+deeppowerdown_to_x1024
+
+
+8:1
+
+
+1fe
+
+
+ff
+
+
+1fe
+
+
+DDR2 and DDR3: not sued. LPDDR2: Minimum deep power down time. DDR exits from deep power down mode immediately after reg_ddrc_deeppowerdown_en is deasserted. Value from the spec is 500us. Units are in 1024 clock cycles. For performance only.
+
+
+
+
+deep_pwrdwn_reg@0XF80060AC
+
+
+31:0
+
+
+1ff
+
+
+
+
+
+1fe
+
+
+Deep powerdown (LPDDR2)
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+reg_2c
+
+
+0XF80060B0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+dfi_wrlvl_max_x1024
+
+
+11:0
+
+
+fff
+
+
+fff
+
+
+fff
+
+
+Write leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_wrlvl_resp) to a write leveling enable signal (ddrc_dfi_wrlvl_en). Only applicable when connecting to PHY's operating in 'PHY WrLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks
+
+
+
+
+dfi_rdlvl_max_x1024
+
+
+23:12
+
+
+fff000
+
+
+fff
+
+
+fff000
+
+
+Read leveling maximum time. Specifies the maximum number of clock cycles that the controller will wait for a response (phy_dfi_rdlvl_resp) to a read leveling enable signal (ddrc_dfi_rdlvl_en or ddrc_dfi_rdlvl_gate_en). Only applicable when connecting to PHY's operating in 'PHY RdLvl Evaluation' mode. Typical value 0xFFF Units 1024 clocks
+
+
+
+
+ddrc_reg_twrlvl_max_error
+
+
+24:24
+
+
+1000000
+
+
+0
+
+
+0
+
+
+When '1' indicates that the reg_ddrc_dfi_wrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If write leveling timed out, an error is indicated by the DDRC and this bit gets set. The value is held until it is cleared. Clearing is done by writing a '0' to this register. Only present in designs that support DDR3.
+
+
+
+
+ddrc_reg_trdlvl_max_error
+
+
+25:25
+
+
+2000000
+
+
+0
+
+
+0
+
+
+DDR2: not applicable. LPDDR2 and DDR3: When '1' indicates that the reg_ddrc_dfi_rdrlvl_max_x1024 timer has timed out. This is a Clear-on-Write register. If read leveling or gate training timed out, an error is indicated by the DDRC and this bit gets set. The value is held at that value until it is cleared. Clearing is done by writing a '0' to this register.
+
+
+
+
+reg_ddrc_dfi_wr_level_en
+
+
+26:26
+
+
+4000000
+
+
+1
+
+
+4000000
+
+
+0: Write leveling disabled. 1: Write leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs
+
+
+
+
+reg_ddrc_dfi_rd_dqs_gate_level
+
+
+27:27
+
+
+8000000
+
+
+1
+
+
+8000000
+
+
+0: Read DQS gate leveling is disabled. 1: Read DQS Gate Leveling mode has been enabled as part of init sequence; Valid only for DDR3 DFI designs
+
+
+
+
+reg_ddrc_dfi_rd_data_eye_train
+
+
+28:28
+
+
+10000000
+
+
+1
+
+
+10000000
+
+
+DDR2: not applicable. LPDDR2 and DDR3: 0: 1: Read Data Eye training mode has been enabled as part of init sequence.
+
+
+
+
+reg_2c@0XF80060B0
+
+
+31:0
+
+
+1fffffff
+
+
+
+
+
+1cffffff
+
+
+Training control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+reg_2d
+
+
+0XF80060B4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_skip_ocd
+
+
+9:9
+
+
+200
+
+
+1
+
+
+200
+
+
+This register must be kept at 1'b1. 1'b0 is NOT supported. 1: Indicates the controller to skip OCD adjustment step during DDR2 initialization. OCD_Default and OCD_Exit are performed instead. 0: Not supported.
+
+
+
+
+reg_2d@0XF80060B4
+
+
+31:0
+
+
+200
+
+
+
+
+
+200
+
+
+Misc Debug
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+dfi_timing
+
+
+0XF80060B8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_dfi_t_rddata_en
+
+
+4:0
+
+
+1f
+
+
+6
+
+
+6
+
+
+Time from the assertion of a READ command on the DFI interface to the assertion of the phy_dfi_rddata_en signal. DDR2 and DDR3: RL - 1 LPDDR: RL Where RL is read latency of DRAM.
+
+
+
+
+reg_ddrc_dfi_t_ctrlup_min
+
+
+14:5
+
+
+7fe0
+
+
+3
+
+
+60
+
+
+Specifies the minimum number of clock cycles that the ddrc_dfi_ctrlupd_req signal must be asserted.
+
+
+
+
+reg_ddrc_dfi_t_ctrlup_max
+
+
+24:15
+
+
+1ff8000
+
+
+40
+
+
+200000
+
+
+Specifies the maximum number of clock cycles that the ddrc_dfi_ctrlupd_req signal can assert.
+
+
+
+
+dfi_timing@0XF80060B8
+
+
+31:0
+
+
+1ffffff
+
+
+
+
+
+200066
+
+
+DFI timing
+
+
+
+
+
RESET ECC ERROR
+Register ( slcr )CHE_ECC_CONTROL_REG_OFFSET
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET
+
+
+0XF80060C4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+Clear_Uncorrectable_DRAM_ECC_error
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Writing 1 to this bit will clear the uncorrectable log valid bit and the uncorrectable error counters.
+
+
+
+
+Clear_Correctable_DRAM_ECC_error
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Writing 1 to this bit will clear the correctable log valid bit and the correctable error counters.
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET@0XF80060C4
+
+
+31:0
+
+
+3
+
+
+
+
+
+3
+
+
+ECC error clear
+
+
+
+
+
Register ( slcr )CHE_ECC_CONTROL_REG_OFFSET
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET
+
+
+0XF80060C4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+Clear_Uncorrectable_DRAM_ECC_error
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Writing 1 to this bit will clear the uncorrectable log valid bit and the uncorrectable error counters.
+
+
+
+
+Clear_Correctable_DRAM_ECC_error
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Writing 1 to this bit will clear the correctable log valid bit and the correctable error counters.
+
+
+
+
+CHE_ECC_CONTROL_REG_OFFSET@0XF80060C4
+
+
+31:0
+
+
+3
+
+
+
+
+
+0
+
+
+ECC error clear
+
+
+
+
+
Register ( slcr )CHE_CORR_ECC_LOG_REG_OFFSET
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_CORR_ECC_LOG_REG_OFFSET
+
+
+0XF80060C8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CORR_ECC_LOG_VALID
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Set to 1 when a correctable ECC error is captured. As long as this is 1 no further ECC errors will be captured. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x31)
+
+
+
+
+ECC_CORRECTED_BIT_NUM
+
+
+7:1
+
+
+fe
+
+
+0
+
+
+0
+
+
+Indicator of the bit number syndrome in error for single-bit errors. The field is 7-bit wide to handle 72-bits of data. This is an encoded value with ECC bits placed in between data. The encoding is given in section 5.4 Correctable bit number from the lowest error lane is reported here. There are only 13-valid bits going to an ECC lane (8-data + 5-ECC). Only 4-bits are needed to encode a max value of d'13. Bit[7] of this register is used to indicate the exact byte lane. When a error happens, if CORR_ECC_LOG_COL[0] from register 0x33 is 1'b0, then the error happened in Lane 0 or 1. If CORR_ECC_LOG_COL[0] is 1'b1, then the error happened in Lane 2 or 3. Bit[7] of this register indicates whether the error is from upper or lower byte lane. If it is 0, then it is lower byte lane and if it is 1, then it is upper byte lane. Together with CORR_ECC_LOG_COL[0] and bit[7] of this register, the exact byte lane with correctable error can be determined.
+
+
+
+
+CHE_CORR_ECC_LOG_REG_OFFSET@0XF80060C8
+
+
+31:0
+
+
+ff
+
+
+
+
+
+0
+
+
+ECC error correction
+
+
+
+
+
Register ( slcr )CHE_UNCORR_ECC_LOG_REG_OFFSET
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_UNCORR_ECC_LOG_REG_OFFSET
+
+
+0XF80060DC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNCORR_ECC_LOG_VALID
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Set to 1 when an uncorrectable ECC error is captured. As long as this is a 1, no further ECC errors will be captured. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x31).
+
+
+
+
+CHE_UNCORR_ECC_LOG_REG_OFFSET@0XF80060DC
+
+
+31:0
+
+
+1
+
+
+
+
+
+0
+
+
+ECC unrecoverable error status
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CHE_ECC_STATS_REG_OFFSET
+
+
+0XF80060F0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+STAT_NUM_CORR_ERR
+
+
+15:8
+
+
+ff00
+
+
+0
+
+
+0
+
+
+Returns the number of correctable ECC errors seen since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[1] of ECC CONTROL REGISTER (0x58).
+
+
+
+
+STAT_NUM_UNCORR_ERR
+
+
+7:0
+
+
+ff
+
+
+0
+
+
+0
+
+
+Returns the number of uncorrectable errors since the last read. Counter saturates at max value. This is cleared when a 1 is written to register bit[0] of ECC CONTROL REGISTER (0x58).
+
+
+
+
+CHE_ECC_STATS_REG_OFFSET@0XF80060F0
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+0
+
+
+ECC error count
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ECC_scrub
+
+
+0XF80060F4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_ecc_mode
+
+
+2:0
+
+
+7
+
+
+0
+
+
+0
+
+
+DRAM ECC Mode. The only valid values that works for this project are 000 (No ECC) and 100 (SEC/DED over 1-beat). To run the design in ECC mode, set reg_ddrc_data_bus_width to 2'b01 (Half bus width) and reg_ddrc_ecc_mode to 100. In this mode, there will be 16-data bits + 6-bit ECC on the DRAM bus. Controller must NOT be put in full bus width mode, when ECC is turned ON. 000 : No ECC, 001: Reserved 010: Parity 011: Reserved 100: SEC/DED over 1-beat 101: SEC/DED over multiple beats 110: Device Correction 111: Reserved
+
+
+
+
+reg_ddrc_dis_scrub
+
+
+3:3
+
+
+8
+
+
+1
+
+
+8
+
+
+0: Enable ECC scrubs (valid only when reg_ddrc_ecc_mode = 100). 1: Disable ECC scrubs
+
+
+
+
+ECC_scrub@0XF80060F4
+
+
+31:0
+
+
+f
+
+
+
+
+
+8
+
+
+ECC mode/scrub
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_rcvr_enable
+
+
+0XF8006114
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_dif_on
+
+
+3:0
+
+
+f
+
+
+0
+
+
+0
+
+
+Value to drive to IO receiver enable pins when turning it ON. When NOT in powerdown or self-refresh (when CKE=1) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter.
+
+
+
+
+reg_phy_dif_off
+
+
+7:4
+
+
+f0
+
+
+0
+
+
+0
+
+
+Value to drive to IO receiver enable pins when turning it OFF. When in powerdown or self-refresh (CKE=0) this value will be sent to the IOs to control receiver on/off. IOD is the size specified by the IO_DIFEN_SIZE parameter. Depending on the IO, one of these signals dif_on or dif_off can be used.
+
+
+
+
+phy_rcvr_enable@0XF8006114
+
+
+31:0
+
+
+ff
+
+
+
+
+
+0
+
+
+Phy receiver enable register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PHY_Config
+
+
+0XF8006118
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_data_slice_in_use
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.
+
+
+
+
+reg_phy_rdlvl_inc_mode
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_gatelvl_inc_mode
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_wrlvl_inc_mode
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_bist_shift_dq
+
+
+14:6
+
+
+7fc0
+
+
+0
+
+
+0
+
+
+Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.
+
+
+
+
+reg_phy_bist_err_clr
+
+
+23:15
+
+
+ff8000
+
+
+0
+
+
+0
+
+
+Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared
+
+
+
+
+reg_phy_dq_offset
+
+
+30:24
+
+
+7f000000
+
+
+40
+
+
+40000000
+
+
+Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.
+
+
+
+
+PHY_Config@0XF8006118
+
+
+31:0
+
+
+7fffffcf
+
+
+
+
+
+40000001
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PHY_Config
+
+
+0XF800611C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_data_slice_in_use
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.
+
+
+
+
+reg_phy_rdlvl_inc_mode
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_gatelvl_inc_mode
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_wrlvl_inc_mode
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_bist_shift_dq
+
+
+14:6
+
+
+7fc0
+
+
+0
+
+
+0
+
+
+Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.
+
+
+
+
+reg_phy_bist_err_clr
+
+
+23:15
+
+
+ff8000
+
+
+0
+
+
+0
+
+
+Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared
+
+
+
+
+reg_phy_dq_offset
+
+
+30:24
+
+
+7f000000
+
+
+40
+
+
+40000000
+
+
+Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.
+
+
+
+
+PHY_Config@0XF800611C
+
+
+31:0
+
+
+7fffffcf
+
+
+
+
+
+40000001
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PHY_Config
+
+
+0XF8006120
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_data_slice_in_use
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.
+
+
+
+
+reg_phy_rdlvl_inc_mode
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_gatelvl_inc_mode
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_wrlvl_inc_mode
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_bist_shift_dq
+
+
+14:6
+
+
+7fc0
+
+
+0
+
+
+0
+
+
+Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.
+
+
+
+
+reg_phy_bist_err_clr
+
+
+23:15
+
+
+ff8000
+
+
+0
+
+
+0
+
+
+Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared
+
+
+
+
+reg_phy_dq_offset
+
+
+30:24
+
+
+7f000000
+
+
+40
+
+
+40000000
+
+
+Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.
+
+
+
+
+PHY_Config@0XF8006120
+
+
+31:0
+
+
+7fffffcf
+
+
+
+
+
+40000001
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+PHY_Config
+
+
+0XF8006124
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_data_slice_in_use
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Data bus width selection for Read FIFO RE generation. One bit for each data slice. 0: read data responses are ignored. 1: data slice is valid. Note: The Phy Data Slice 0 must always be enabled.
+
+
+
+
+reg_phy_rdlvl_inc_mode
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_gatelvl_inc_mode
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_wrlvl_inc_mode
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+reserved
+
+
+
+
+reg_phy_bist_shift_dq
+
+
+14:6
+
+
+7fc0
+
+
+0
+
+
+0
+
+
+Determines whether early shifting is required for a particular DQ bit when reg_phy_bist_mode is 10. 0: PRBS pattern without any shift. 1: PRBS pattern shifted early by 1 bit.
+
+
+
+
+reg_phy_bist_err_clr
+
+
+23:15
+
+
+ff8000
+
+
+0
+
+
+0
+
+
+Clear the mismatch error flag from the BIST Checker. 0: No effect 1: sticky error flag is cleared
+
+
+
+
+reg_phy_dq_offset
+
+
+30:24
+
+
+7f000000
+
+
+40
+
+
+40000000
+
+
+Offset value from DQS to DQ. Default value: 0x40 (for 90 degree shift). This is only used when reg_phy_use_wr_level=1. #Note 1: When a port width (W) is multiple of N instances of Ranks or Slices, each instance will get W/N bits. Instance n will get (n+1)*(W/N) -1: n (W/N) bits where n (0, 1, to N-1) is the instance number of Rank or Slice.
+
+
+
+
+PHY_Config@0XF8006124
+
+
+31:0
+
+
+7fffffcf
+
+
+
+
+
+40000001
+
+
+PHY configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_init_ratio
+
+
+0XF800612C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wrlvl_init_ratio
+
+
+9:0
+
+
+3ff
+
+
+0
+
+
+0
+
+
+The user programmable init ratio used by Write Leveling FSM
+
+
+
+
+reg_phy_gatelvl_init_ratio
+
+
+19:10
+
+
+ffc00
+
+
+b0
+
+
+2c000
+
+
+The user programmable init ratio used Gate Leveling FSM
+
+
+
+
+phy_init_ratio@0XF800612C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+2c000
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_init_ratio
+
+
+0XF8006130
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wrlvl_init_ratio
+
+
+9:0
+
+
+3ff
+
+
+0
+
+
+0
+
+
+The user programmable init ratio used by Write Leveling FSM
+
+
+
+
+reg_phy_gatelvl_init_ratio
+
+
+19:10
+
+
+ffc00
+
+
+b1
+
+
+2c400
+
+
+The user programmable init ratio used Gate Leveling FSM
+
+
+
+
+phy_init_ratio@0XF8006130
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+2c400
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_init_ratio
+
+
+0XF8006134
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wrlvl_init_ratio
+
+
+9:0
+
+
+3ff
+
+
+3
+
+
+3
+
+
+The user programmable init ratio used by Write Leveling FSM
+
+
+
+
+reg_phy_gatelvl_init_ratio
+
+
+19:10
+
+
+ffc00
+
+
+bc
+
+
+2f000
+
+
+The user programmable init ratio used Gate Leveling FSM
+
+
+
+
+phy_init_ratio@0XF8006134
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+2f003
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_init_ratio
+
+
+0XF8006138
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wrlvl_init_ratio
+
+
+9:0
+
+
+3ff
+
+
+3
+
+
+3
+
+
+The user programmable init ratio used by Write Leveling FSM
+
+
+
+
+reg_phy_gatelvl_init_ratio
+
+
+19:10
+
+
+ffc00
+
+
+bb
+
+
+2ec00
+
+
+The user programmable init ratio used Gate Leveling FSM
+
+
+
+
+phy_init_ratio@0XF8006138
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+2ec03
+
+
+PHY init ratio register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_rd_dqs_cfg
+
+
+0XF8006140
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+35
+
+
+35
+
+
+Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications
+
+
+
+
+reg_phy_rd_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.
+
+
+
+
+reg_phy_rd_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.
+
+
+
+
+phy_rd_dqs_cfg@0XF8006140
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+35
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_rd_dqs_cfg
+
+
+0XF8006144
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+35
+
+
+35
+
+
+Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications
+
+
+
+
+reg_phy_rd_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.
+
+
+
+
+reg_phy_rd_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.
+
+
+
+
+phy_rd_dqs_cfg@0XF8006144
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+35
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_rd_dqs_cfg
+
+
+0XF8006148
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+35
+
+
+35
+
+
+Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications
+
+
+
+
+reg_phy_rd_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.
+
+
+
+
+reg_phy_rd_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.
+
+
+
+
+phy_rd_dqs_cfg@0XF8006148
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+35
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_rd_dqs_cfg
+
+
+0XF800614C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_rd_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+35
+
+
+35
+
+
+Ratio value for read DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. Provide a default value of 0x40 for most applications
+
+
+
+
+reg_phy_rd_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_rd_dqs_slave_ratio for the read DQS slave DLL 1: overwrite the delay/tap value for read DQS slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.
+
+
+
+
+reg_phy_rd_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for read DQS slave DLL with this value.
+
+
+
+
+phy_rd_dqs_cfg@0XF800614C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+35
+
+
+PHY read DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_wr_dqs_cfg
+
+
+0XF8006154
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+77
+
+
+77
+
+
+Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)
+
+
+
+
+reg_phy_wr_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.
+
+
+
+
+reg_phy_wr_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.
+
+
+
+
+phy_wr_dqs_cfg@0XF8006154
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+77
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_wr_dqs_cfg
+
+
+0XF8006158
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+77
+
+
+77
+
+
+Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)
+
+
+
+
+reg_phy_wr_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.
+
+
+
+
+reg_phy_wr_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.
+
+
+
+
+phy_wr_dqs_cfg@0XF8006158
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+77
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_wr_dqs_cfg
+
+
+0XF800615C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+83
+
+
+83
+
+
+Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)
+
+
+
+
+reg_phy_wr_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.
+
+
+
+
+reg_phy_wr_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.
+
+
+
+
+phy_wr_dqs_cfg@0XF800615C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+83
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_wr_dqs_cfg
+
+
+0XF8006160
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_dqs_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+83
+
+
+83
+
+
+Ratio value for write DQS slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQS in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line. (Used to program the manual training ratio value)
+
+
+
+
+reg_phy_wr_dqs_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_wr_dqs_slave_ratio for the write DQS slave DLL 1: overwrite the delay/tap value for write DQS slave DLL with the value of the reg_phy_wr_dqs_slave_delay bus.
+
+
+
+
+reg_phy_wr_dqs_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_dqs_slave_force is 1, replace delay/tap value for write DQS slave DLL with this value.
+
+
+
+
+phy_wr_dqs_cfg@0XF8006160
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+83
+
+
+PHY write DQS configuration register for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_we_cfg
+
+
+0XF8006168
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_fifo_we_slave_ratio
+
+
+10:0
+
+
+7ff
+
+
+105
+
+
+105
+
+
+Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.
+
+
+
+
+reg_phy_fifo_we_in_force
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units
+
+
+
+
+reg_phy_fifo_we_in_delay
+
+
+20:12
+
+
+1ff000
+
+
+0
+
+
+0
+
+
+Delay value to be used when reg_phy_fifo_we_in_force is set to 1.
+
+
+
+
+phy_we_cfg@0XF8006168
+
+
+31:0
+
+
+1fffff
+
+
+
+
+
+105
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_we_cfg
+
+
+0XF800616C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_fifo_we_slave_ratio
+
+
+10:0
+
+
+7ff
+
+
+106
+
+
+106
+
+
+Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.
+
+
+
+
+reg_phy_fifo_we_in_force
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units
+
+
+
+
+reg_phy_fifo_we_in_delay
+
+
+20:12
+
+
+1ff000
+
+
+0
+
+
+0
+
+
+Delay value to be used when reg_phy_fifo_we_in_force is set to 1.
+
+
+
+
+phy_we_cfg@0XF800616C
+
+
+31:0
+
+
+1fffff
+
+
+
+
+
+106
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_we_cfg
+
+
+0XF8006170
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_fifo_we_slave_ratio
+
+
+10:0
+
+
+7ff
+
+
+111
+
+
+111
+
+
+Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.
+
+
+
+
+reg_phy_fifo_we_in_force
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units
+
+
+
+
+reg_phy_fifo_we_in_delay
+
+
+20:12
+
+
+1ff000
+
+
+0
+
+
+0
+
+
+Delay value to be used when reg_phy_fifo_we_in_force is set to 1.
+
+
+
+
+phy_we_cfg@0XF8006170
+
+
+31:0
+
+
+1fffff
+
+
+
+
+
+111
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+phy_we_cfg
+
+
+0XF8006174
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_fifo_we_slave_ratio
+
+
+10:0
+
+
+7ff
+
+
+110
+
+
+110
+
+
+Ratio value to be used when reg_phy_fifo_we_in_force is set to 0.
+
+
+
+
+reg_phy_fifo_we_in_force
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_fifo_we_slave_ratio as ratio value for fifo_we_X slave DLL 1: overwrite the delay/tap value for fifo_we_X slave DLL with the value of the reg_phy_fifo_we_in_delay bus. i.e. The 'force' bit selects between specifying the delay in 'ratio' units or tap delay units
+
+
+
+
+reg_phy_fifo_we_in_delay
+
+
+20:12
+
+
+1ff000
+
+
+0
+
+
+0
+
+
+Delay value to be used when reg_phy_fifo_we_in_force is set to 1.
+
+
+
+
+phy_we_cfg@0XF8006174
+
+
+31:0
+
+
+1fffff
+
+
+
+
+
+110
+
+
+PHY FIFO write enable configuration for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+wr_data_slv
+
+
+0XF800617C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_data_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+b7
+
+
+b7
+
+
+Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.
+
+
+
+
+reg_phy_wr_data_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.
+
+
+
+
+reg_phy_wr_data_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.
+
+
+
+
+wr_data_slv@0XF800617C
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+b7
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+wr_data_slv
+
+
+0XF8006180
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_data_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+b7
+
+
+b7
+
+
+Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.
+
+
+
+
+reg_phy_wr_data_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.
+
+
+
+
+reg_phy_wr_data_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.
+
+
+
+
+wr_data_slv@0XF8006180
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+b7
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+wr_data_slv
+
+
+0XF8006184
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_data_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+c3
+
+
+c3
+
+
+Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.
+
+
+
+
+reg_phy_wr_data_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.
+
+
+
+
+reg_phy_wr_data_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.
+
+
+
+
+wr_data_slv@0XF8006184
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+c3
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+wr_data_slv
+
+
+0XF8006188
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_data_slave_ratio
+
+
+9:0
+
+
+3ff
+
+
+c3
+
+
+c3
+
+
+Ratio value for write data slave DLL. This is the fraction of a clock cycle represented by the shift to be applied to the write DQ muxes in units of 256ths. In other words, the full-cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.
+
+
+
+
+reg_phy_wr_data_slave_force
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+0: Selects reg_phy_wr_data_slave_ratio for write data slave DLL 1: overwrite the delay/tap value for write data slave DLL with the value of the reg_phy_wr_data_slave_force bus.
+
+
+
+
+reg_phy_wr_data_slave_delay
+
+
+19:11
+
+
+ff800
+
+
+0
+
+
+0
+
+
+If reg_phy_wr_data_slave_force is 1, replace delay/tap value for write data slave DLL with this value.
+
+
+
+
+wr_data_slv@0XF8006188
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+c3
+
+
+PHY write data slave ratio config for data slice 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+reg_64
+
+
+0XF8006190
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_bl2
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Reserved for future Use.
+
+
+
+
+reg_phy_at_spd_atpg
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+0: run scan test at slow clock speed but with high coverage 1: run scan test at full clock speed but with less coverage During normal function mode, this port must be set 0.
+
+
+
+
+reg_phy_bist_enable
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+Enable the internal BIST generation and checker logic when this port is set HIGH. Setting this port as 0 will stop the BIST generator/checker. In order to run BIST tests, this port must be set along with reg_phy_loopback.
+
+
+
+
+reg_phy_bist_force_err
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+This register bit is used to check that BIST checker is not giving false pass. When this port is set 1, data bit gets inverted before sending out to the external memory and BIST checker must return a mismatch error.
+
+
+
+
+reg_phy_bist_mode
+
+
+6:5
+
+
+60
+
+
+0
+
+
+0
+
+
+The mode bits select the pattern type generated by the BIST generator. All the patterns are transmitted continuously once enabled. 00: constant pattern (0 repeated on each DQ bit) 01: low freq pattern (00001111 repeated on each DQ bit) 10: PRBS pattern (2^7-1 PRBS pattern repeated on each DQ bit) Each DQ bit always has same data value except when early shifting in PRBS mode is requested 11: reserved
+
+
+
+
+reg_phy_invert_clkout
+
+
+7:7
+
+
+80
+
+
+1
+
+
+80
+
+
+Inverts the polarity of DRAM clock. 0: core clock is passed on to DRAM 1: inverted core clock is passed on to DRAM. Use this when CLK can arrive at a DRAM device ahead of DQS or coincidence with DQS based on board topology. This effectively delays the CLK to the DRAM device by half -cycle, providing a CLK edge that DQS can align to during leveling.
+
+
+
+
+reg_phy_sel_logic
+
+
+9:9
+
+
+200
+
+
+0
+
+
+0
+
+
+Selects one of the two read leveling algorithms.'b0: Select algorithm # 1'b1: Select algorithm # 2 Please refer to Read Data Eye Training section in PHY User Guide for details about the Read Leveling algorithms
+
+
+
+
+reg_phy_ctrl_slave_ratio
+
+
+19:10
+
+
+ffc00
+
+
+100
+
+
+40000
+
+
+Ratio value for address/command launch timing in phy_ctrl macro. This is the fraction of a clock cycle represented by the shift to be applied to the read DQS in units of 256ths. In other words, the full cycle tap value from the master DLL will be scaled by this number over 256 to get the delay value for the slave delay line.
+
+
+
+
+reg_phy_ctrl_slave_force
+
+
+20:20
+
+
+100000
+
+
+0
+
+
+0
+
+
+0: Use reg_phy_ctrl_slave_ratio for address/command timing slave DLL 1: overwrite the delay/tap value for address/command timing slave DLL with the value of the reg_phy_rd_dqs_slave_delay bus.
+
+
+
+
+reg_phy_ctrl_slave_delay
+
+
+27:21
+
+
+fe00000
+
+
+0
+
+
+0
+
+
+If reg_phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value. This is a bit value, the remaining 2 bits are in register 0x65 bits[19:18].
+
+
+
+
+reg_phy_lpddr
+
+
+29:29
+
+
+20000000
+
+
+0
+
+
+0
+
+
+0: DDR2 or DDR3. 1: LPDDR2.
+
+
+
+
+reg_phy_cmd_latency
+
+
+30:30
+
+
+40000000
+
+
+0
+
+
+0
+
+
+If set to 1, command comes to phy_ctrl through a flop.
+
+
+
+
+reg_64@0XF8006190
+
+
+31:0
+
+
+6ffffefe
+
+
+
+
+
+40080
+
+
+Training control 2
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+reg_65
+
+
+0XF8006194
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_phy_wr_rl_delay
+
+
+4:0
+
+
+1f
+
+
+2
+
+
+2
+
+
+This delay determines when to select the active rank's ratio logic delay for Write Data and Write DQS slave delay lines after PHY receives a write command at Control Interface. The programmed value must be (Write Latency - 4) with a minimum value of 1.
+
+
+
+
+reg_phy_rd_rl_delay
+
+
+9:5
+
+
+3e0
+
+
+4
+
+
+80
+
+
+This delay determines when to select the active rank's ratio logic delay for Read Data and Read DQS slave delay lines after PHY receives a read command at Control Interface. The programmed value must be (Read Latency - 3) with a minimum value of 1.
+
+
+
+
+reg_phy_dll_lock_diff
+
+
+13:10
+
+
+3c00
+
+
+f
+
+
+3c00
+
+
+The Maximum number of delay line taps variation allowed while maintaining the master DLL lock. When the PHY is in locked state and the variation on the clock exceeds the variation indicated by the register, the lock signal is deasserted
+
+
+
+
+reg_phy_use_wr_level
+
+
+14:14
+
+
+4000
+
+
+1
+
+
+4000
+
+
+Write Leveling training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by write leveling Note: This is a Synchronous dynamic signal that requires timing closure.
+
+
+
+
+reg_phy_use_rd_dqs_gate_level
+
+
+15:15
+
+
+8000
+
+
+1
+
+
+8000
+
+
+Read DQS Gate training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by DQS gate leveling Note: This is a Synchronous dynamic signal that requires timing closure.
+
+
+
+
+reg_phy_use_rd_data_eye_level
+
+
+16:16
+
+
+10000
+
+
+1
+
+
+10000
+
+
+Read Data Eye training control. 0: Use register programmed ratio values 1: Use ratio for delay line calculated by data eye leveling Note: This is a Synchronous dynamic signal that requires timing closure
+
+
+
+
+reg_phy_dis_calib_rst
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable the dll_calib (internally generated) signal from resetting the Read Capture FIFO pointers and portions of phy_data. Note: dll_calib is (i) generated by dfi_ctrl_upd_req or (ii) by the PHY when it detects that the clock frequency variation has exceeded the bounds set by reg_phy_dll_lock_diff or (iii) periodically throughout the leveling process. dll_calib will update the slave DL with PVT-compensated values according to master DLL outputs
+
+
+
+
+reg_phy_ctrl_slave_delay
+
+
+19:18
+
+
+c0000
+
+
+0
+
+
+0
+
+
+If reg-phy_rd_dqs_slave_force is 1, replace delay/tap value for address/command timing slave DLL with this value
+
+
+
+
+reg_65@0XF8006194
+
+
+31:0
+
+
+fffff
+
+
+
+
+
+1fc82
+
+
+Training control 3
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+page_mask
+
+
+0XF8006204
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_page_addr_mask
+
+
+31:0
+
+
+ffffffff
+
+
+0
+
+
+0
+
+
+Set this register based on the value programmed on the reg_ddrc_addrmap_* registers. Set the Column address bits to 0. Set the Page and Bank address bits to 1. This is used for calculating page_match inside the slave modules in Arbiter. The page_match is considered during the arbitration process. This mask applies to 64-bit address and not byte address. Setting this value to 0 disables transaction prioritization based on page/bank match.
+
+
+
+
+page_mask@0XF8006204
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+0
+
+
+Page mask
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_wr_port
+
+
+0XF8006208
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_wr_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_wr_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Write Port.
+
+
+
+
+reg_arb_disable_urgent_wr_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Write Port.
+
+
+
+
+reg_arb_dis_page_match_wr_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+axi_priority_wr_port@0XF8006208
+
+
+31:0
+
+
+703ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_wr_port
+
+
+0XF800620C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_wr_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_wr_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Write Port.
+
+
+
+
+reg_arb_disable_urgent_wr_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Write Port.
+
+
+
+
+reg_arb_dis_page_match_wr_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+axi_priority_wr_port@0XF800620C
+
+
+31:0
+
+
+703ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_wr_port
+
+
+0XF8006210
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_wr_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_wr_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Write Port.
+
+
+
+
+reg_arb_disable_urgent_wr_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Write Port.
+
+
+
+
+reg_arb_dis_page_match_wr_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+axi_priority_wr_port@0XF8006210
+
+
+31:0
+
+
+703ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_wr_port
+
+
+0XF8006214
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_wr_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Write Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_wr_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Write Port.
+
+
+
+
+reg_arb_disable_urgent_wr_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Write Port.
+
+
+
+
+reg_arb_dis_page_match_wr_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+axi_priority_wr_port@0XF8006214
+
+
+31:0
+
+
+703ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for write port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_rd_port
+
+
+0XF8006218
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_rd_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_rd_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Read Port.
+
+
+
+
+reg_arb_disable_urgent_rd_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Read Port.
+
+
+
+
+reg_arb_dis_page_match_rd_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+reg_arb_set_hpr_rd_portn
+
+
+19:19
+
+
+80000
+
+
+0
+
+
+0
+
+
+Enable reads to be generated as HPR for this Read Port.
+
+
+
+
+axi_priority_rd_port@0XF8006218
+
+
+31:0
+
+
+f03ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_rd_port
+
+
+0XF800621C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_rd_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_rd_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Read Port.
+
+
+
+
+reg_arb_disable_urgent_rd_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Read Port.
+
+
+
+
+reg_arb_dis_page_match_rd_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+reg_arb_set_hpr_rd_portn
+
+
+19:19
+
+
+80000
+
+
+0
+
+
+0
+
+
+Enable reads to be generated as HPR for this Read Port.
+
+
+
+
+axi_priority_rd_port@0XF800621C
+
+
+31:0
+
+
+f03ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_rd_port
+
+
+0XF8006220
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_rd_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_rd_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Read Port.
+
+
+
+
+reg_arb_disable_urgent_rd_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Read Port.
+
+
+
+
+reg_arb_dis_page_match_rd_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+reg_arb_set_hpr_rd_portn
+
+
+19:19
+
+
+80000
+
+
+0
+
+
+0
+
+
+Enable reads to be generated as HPR for this Read Port.
+
+
+
+
+axi_priority_rd_port@0XF8006220
+
+
+31:0
+
+
+f03ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+axi_priority_rd_port
+
+
+0XF8006224
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_arb_pri_rd_portn
+
+
+9:0
+
+
+3ff
+
+
+3ff
+
+
+3ff
+
+
+Priority of this Read Port n. Value in this register used to load the aging counters (when respective port request is asserted and grant is generated to that port). These register can be reprogrammed to set priority of each port. Lower the value more will be priority given to the port. For example if 0x82 (port 0) value is set to 'h3FF, and 0x83 (port 1) is set to 'h0FF, and both port0 and port1 have requests, in this case port1 will get high priority and grant will be given to port1.
+
+
+
+
+reg_arb_disable_aging_rd_portn
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable aging for this Read Port.
+
+
+
+
+reg_arb_disable_urgent_rd_portn
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Disable urgent for this Read Port.
+
+
+
+
+reg_arb_dis_page_match_rd_portn
+
+
+18:18
+
+
+40000
+
+
+0
+
+
+0
+
+
+Disable the page match feature.
+
+
+
+
+reg_arb_set_hpr_rd_portn
+
+
+19:19
+
+
+80000
+
+
+0
+
+
+0
+
+
+Enable reads to be generated as HPR for this Read Port.
+
+
+
+
+axi_priority_rd_port@0XF8006224
+
+
+31:0
+
+
+f03ff
+
+
+
+
+
+3ff
+
+
+AXI Priority control for read port 0.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+lpddr_ctrl0
+
+
+0XF80062A8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_lpddr2
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+0: DDR2 or DDR3 in use. 1: LPDDR2 in Use.
+
+
+
+
+reg_ddrc_derate_enable
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+0: Timing parameter derating is disabled. 1: Timing parameter derating is enabled using MR4 read value. This feature should only be enabled after LPDDR2 initialization is completed
+
+
+
+
+reg_ddrc_mr4_margin
+
+
+11:4
+
+
+ff0
+
+
+0
+
+
+0
+
+
+UNUSED
+
+
+
+
+lpddr_ctrl0@0XF80062A8
+
+
+31:0
+
+
+ff5
+
+
+
+
+
+0
+
+
+LPDDR2 Control 0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+lpddr_ctrl1
+
+
+0XF80062AC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_mr4_read_interval
+
+
+31:0
+
+
+ffffffff
+
+
+0
+
+
+0
+
+
+Interval between two MR4 reads, USED to derate the timing parameters.
+
+
+
+
+lpddr_ctrl1@0XF80062AC
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+0
+
+
+LPDDR2 Control 1
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+lpddr_ctrl2
+
+
+0XF80062B0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_min_stable_clock_x1
+
+
+3:0
+
+
+f
+
+
+5
+
+
+5
+
+
+Time to wait after the first CKE high, tINIT2. Units: 1 clock cycle. LPDDR2 typically requires 5 x tCK delay.
+
+
+
+
+reg_ddrc_idle_after_reset_x32
+
+
+11:4
+
+
+ff0
+
+
+12
+
+
+120
+
+
+Idle time after the reset command, tINIT4. Units: 32 clock cycles.
+
+
+
+
+reg_ddrc_t_mrw
+
+
+21:12
+
+
+3ff000
+
+
+5
+
+
+5000
+
+
+Time to wait during load mode register writes. Present only in designs configured to support LPDDR2. LPDDR2 typically requires value of 5.
+
+
+
+
+lpddr_ctrl2@0XF80062B0
+
+
+31:0
+
+
+3fffff
+
+
+
+
+
+5125
+
+
+LPDDR2 Control 2
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+lpddr_ctrl3
+
+
+0XF80062B4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_max_auto_init_x1024
+
+
+7:0
+
+
+ff
+
+
+a8
+
+
+a8
+
+
+Maximum duration of the auto initialization, tINIT5. Units: 1024 clock cycles. LPDDR2 typically requires 10 us.
+
+
+
+
+reg_ddrc_dev_zqinit_x32
+
+
+17:8
+
+
+3ff00
+
+
+12
+
+
+1200
+
+
+ZQ initial calibration, tZQINIT. Units: 32 clock cycles. LPDDR2 typically requires 1 us.
+
+
+
+
+lpddr_ctrl3@0XF80062B4
+
+
+31:0
+
+
+3ffff
+
+
+
+
+
+12a8
+
+
+LPDDR2 Control 3
+
+
+
+
+
POLL ON DCI STATUS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DCI_STATUS
+
+
+0XF8000B74
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+DONE
+
+
+13:13
+
+
+2000
+
+
+1
+
+
+2000
+
+
+DCI done signal
+
+
+
+
+DDRIOB_DCI_STATUS@0XF8000B74
+
+
+31:0
+
+
+2000
+
+
+
+
+
+2000
+
+
+tobe
+
+
+
+
+
UNLOCK DDR
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+ddrc_ctrl
+
+
+0XF8006000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reg_ddrc_soft_rstb
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Active low soft reset. Update during normal operation. 0: Resets the controller 1: Takes the controller out of reset. Dynamic Bit Field. Note: Software changes DRAM controller register values only when the controller is in the reset state, except for bit fields that can be dymanically updated.
+
+
+
+
+reg_ddrc_powerdown_en
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Controller power down control. Update during normal operation. Enable the controller to powerdown after it becomes idle. Dynamic Bit Field. 0: disable 1: enable
+
+
+
+
+reg_ddrc_data_bus_width
+
+
+3:2
+
+
+c
+
+
+0
+
+
+0
+
+
+DDR bus width control 00: 32-bit 01: 16-bit 1x: reserved
+
+
+
+
+reg_ddrc_burst8_refresh
+
+
+6:4
+
+
+70
+
+
+0
+
+
+0
+
+
+Refresh timeout. Programmed value plus one will be the number of refresh timeouts that will be allowed to accumulate before traffic is blocked and the refreshes are forced to execute. Closing pages to perform a refresh is a one-time penalty that must be paid for each group of refreshes; therefore, performing refreshes in a burst reduces the per-refresh penalty of these page closings. Higher numbers for burst_of_N_refresh slightly increases utilization; lower numbers decreases the worst-case latency associated with refreshes. 0: single refresh 1: burst-of-2 ... 7: burst-of-8 refresh
+
+
+
+
+reg_ddrc_rdwr_idle_gap
+
+
+13:7
+
+
+3f80
+
+
+1
+
+
+80
+
+
+When the preferred transaction store is empty for this many clock cycles, switch to the alternate transaction store if it is non-empty. The read transaction store (both high and low priority) is the default preferred transaction store and the write transaction store is the alternate store. When 'Prefer write over read' is set this is reversed.
+
+
+
+
+reg_ddrc_dis_rd_bypass
+
+
+14:14
+
+
+4000
+
+
+0
+
+
+0
+
+
+Only present in designs supporting read bypass. For Debug only. 0: Do not disable bypass path for high priority read page hits. 1: disable bypass path for high priority read page hits.
+
+
+
+
+reg_ddrc_dis_act_bypass
+
+
+15:15
+
+
+8000
+
+
+0
+
+
+0
+
+
+Only present in designs supporting activate bypass. For Debug only. 0: Do not disable bypass path for high priority read activates. 1: disable bypass path for high priority read activates.
+
+
+
+
+reg_ddrc_dis_auto_refresh
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Disable auto-refresh. 0: do not disable auto-refresh. 1: disable auto-refresh. Dynamic Bit Field. Note: When this transitions from 0 to 1, any pending refreshes will be immediately scheduled by the controller.
+
+
+
+
+ddrc_ctrl@0XF8006000
+
+
+31:0
+
+
+1ffff
+
+
+
+
+
+81
+
+
+DDRC Control
+
+
+
+
+
CHECK DDR STATUS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+mode_sts_reg
+
+
+0XF8006054
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+ddrc_reg_operating_mode
+
+
+2:0
+
+
+7
+
+
+1
+
+
+1
+
+
+Gives the status of the controller. 0: DDRC Init 1: Normal operation 2: Powerdown mode 3: Self-refresh mode 4 and above: deep power down mode (LPDDR2 only)
+
+
+
+
+mode_sts_reg@0XF8006054
+
+
+31:0
+
+
+7
+
+
+
+
+
+1
+
+
+tobe
+
+
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+SLCR_UNLOCK
+
+
+
+0XF8000008
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
+DDRIOB_ADDR0
+
+
+
+0XF8000B40
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for A[14:0], CKE and DRST_B
+
+
+
+
+
+DDRIOB_ADDR1
+
+
+
+0XF8000B44
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for BA[2:0], ODT, CS_B, WE_B, RAS_B and CAS_B
+
+
+
+
+
+DDRIOB_DATA0
+
+
+
+0XF8000B48
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for Data 15:0
+
+
+
+
+
+DDRIOB_DATA1
+
+
+
+0XF8000B4C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for Data 31:16
+
+
+
+
+
+DDRIOB_DIFF0
+
+
+
+0XF8000B50
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for DQS 1:0
+
+
+
+
+
+DDRIOB_DIFF1
+
+
+
+0XF8000B54
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for DQS 3:2
+
+
+
+
+
+DDRIOB_CLOCK
+
+
+
+0XF8000B58
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for Clock Output
+
+
+
+
+
+DDRIOB_DRIVE_SLEW_ADDR
+
+
+
+0XF8000B5C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Drive and Slew controls for Address and Command pins of the DDR Interface
+
+
+
+
+
+DDRIOB_DRIVE_SLEW_DATA
+
+
+
+0XF8000B60
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Drive and Slew controls for DQ pins of the DDR Interface
+
+
+
+
+
+DDRIOB_DRIVE_SLEW_DIFF
+
+
+
+0XF8000B64
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Drive and Slew controls for DQS pins of the DDR Interface
+
+
+
+
+
+DDRIOB_DRIVE_SLEW_CLOCK
+
+
+
+0XF8000B68
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Drive and Slew controls for Clock pins of the DDR Interface
+
+
+
+
+
+DDRIOB_DDR_CTRL
+
+
+
+0XF8000B6C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Buffer Control
+
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+
+0XF8000B70
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB DCI Config
+
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+
+0XF8000B70
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB DCI Config
+
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+
+0XF8000B70
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB DCI Config
+
+
+
+
+
+MIO_PIN_00
+
+
+
+0XF8000700
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 0 Control
+
+
+
+
+
+MIO_PIN_01
+
+
+
+0XF8000704
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 1 Control
+
+
+
+
+
+MIO_PIN_02
+
+
+
+0XF8000708
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 2 Control
+
+
+
+
+
+MIO_PIN_03
+
+
+
+0XF800070C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 3 Control
+
+
+
+
+
+MIO_PIN_04
+
+
+
+0XF8000710
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 4 Control
+
+
+
+
+
+MIO_PIN_05
+
+
+
+0XF8000714
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 5 Control
+
+
+
+
+
+MIO_PIN_06
+
+
+
+0XF8000718
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 6 Control
+
+
+
+
+
+MIO_PIN_07
+
+
+
+0XF800071C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 7 Control
+
+
+
+
+
+MIO_PIN_08
+
+
+
+0XF8000720
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 8 Control
+
+
+
+
+
+MIO_PIN_09
+
+
+
+0XF8000724
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 9 Control
+
+
+
+
+
+MIO_PIN_10
+
+
+
+0XF8000728
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 10 Control
+
+
+
+
+
+MIO_PIN_11
+
+
+
+0XF800072C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 11 Control
+
+
+
+
+
+MIO_PIN_12
+
+
+
+0XF8000730
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 12 Control
+
+
+
+
+
+MIO_PIN_13
+
+
+
+0XF8000734
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 13 Control
+
+
+
+
+
+MIO_PIN_14
+
+
+
+0XF8000738
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 14 Control
+
+
+
+
+
+MIO_PIN_15
+
+
+
+0XF800073C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 15 Control
+
+
+
+
+
+MIO_PIN_16
+
+
+
+0XF8000740
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 16 Control
+
+
+
+
+
+MIO_PIN_17
+
+
+
+0XF8000744
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 17 Control
+
+
+
+
+
+MIO_PIN_18
+
+
+
+0XF8000748
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 18 Control
+
+
+
+
+
+MIO_PIN_19
+
+
+
+0XF800074C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 19 Control
+
+
+
+
+
+MIO_PIN_20
+
+
+
+0XF8000750
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 20 Control
+
+
+
+
+
+MIO_PIN_21
+
+
+
+0XF8000754
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 21 Control
+
+
+
+
+
+MIO_PIN_22
+
+
+
+0XF8000758
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 22 Control
+
+
+
+
+
+MIO_PIN_23
+
+
+
+0XF800075C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 23 Control
+
+
+
+
+
+MIO_PIN_24
+
+
+
+0XF8000760
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 24 Control
+
+
+
+
+
+MIO_PIN_25
+
+
+
+0XF8000764
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 25 Control
+
+
+
+
+
+MIO_PIN_26
+
+
+
+0XF8000768
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 26 Control
+
+
+
+
+
+MIO_PIN_27
+
+
+
+0XF800076C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 27 Control
+
+
+
+
+
+MIO_PIN_28
+
+
+
+0XF8000770
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 28 Control
+
+
+
+
+
+MIO_PIN_29
+
+
+
+0XF8000774
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 29 Control
+
+
+
+
+
+MIO_PIN_30
+
+
+
+0XF8000778
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 30 Control
+
+
+
+
+
+MIO_PIN_31
+
+
+
+0XF800077C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 31 Control
+
+
+
+
+
+MIO_PIN_32
+
+
+
+0XF8000780
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 32 Control
+
+
+
+
+
+MIO_PIN_33
+
+
+
+0XF8000784
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 33 Control
+
+
+
+
+
+MIO_PIN_34
+
+
+
+0XF8000788
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 34 Control
+
+
+
+
+
+MIO_PIN_35
+
+
+
+0XF800078C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 35 Control
+
+
+
+
+
+MIO_PIN_36
+
+
+
+0XF8000790
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 36 Control
+
+
+
+
+
+MIO_PIN_37
+
+
+
+0XF8000794
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 37 Control
+
+
+
+
+
+MIO_PIN_38
+
+
+
+0XF8000798
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 38 Control
+
+
+
+
+
+MIO_PIN_39
+
+
+
+0XF800079C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 39 Control
+
+
+
+
+
+MIO_PIN_40
+
+
+
+0XF80007A0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 40 Control
+
+
+
+
+
+MIO_PIN_41
+
+
+
+0XF80007A4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 41 Control
+
+
+
+
+
+MIO_PIN_42
+
+
+
+0XF80007A8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 42 Control
+
+
+
+
+
+MIO_PIN_43
+
+
+
+0XF80007AC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 43 Control
+
+
+
+
+
+MIO_PIN_44
+
+
+
+0XF80007B0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 44 Control
+
+
+
+
+
+MIO_PIN_45
+
+
+
+0XF80007B4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 45 Control
+
+
+
+
+
+MIO_PIN_46
+
+
+
+0XF80007B8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 46 Control
+
+
+
+
+
+MIO_PIN_47
+
+
+
+0XF80007BC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 47 Control
+
+
+
+
+
+MIO_PIN_48
+
+
+
+0XF80007C0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 48 Control
+
+
+
+
+
+MIO_PIN_49
+
+
+
+0XF80007C4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 49 Control
+
+
+
+
+
+MIO_PIN_50
+
+
+
+0XF80007C8
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 50 Control
+
+
+
+
+
+MIO_PIN_51
+
+
+
+0XF80007CC
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 51 Control
+
+
+
+
+
+MIO_PIN_52
+
+
+
+0XF80007D0
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 52 Control
+
+
+
+
+
+MIO_PIN_53
+
+
+
+0XF80007D4
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+MIO Pin 53 Control
+
+
+
+
+
+SD0_WP_CD_SEL
+
+
+
+0XF8000830
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+SDIO 0 WP CD select
+
+
+
+
+
+SLCR_LOCK
+
+
+
+0XF8000004
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+SLCR SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_UNLOCK
+
+
+0XF8000008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNLOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+df0d
+
+
+df0d
+
+
+Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_UNLOCK@0XF8000008
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+df0d
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
OCM REMAPPING
+DDRIOB SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_ADDR0
+
+
+0XF8000B40
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+0
+
+
+0
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+0
+
+
+0
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_ADDR0@0XF8000B40
+
+
+31:0
+
+
+fff
+
+
+
+
+
+600
+
+
+DDR IOB Config for A[14:0], CKE and DRST_B
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_ADDR1
+
+
+0XF8000B44
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+0
+
+
+0
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+0
+
+
+0
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_ADDR1@0XF8000B44
+
+
+31:0
+
+
+fff
+
+
+
+
+
+600
+
+
+DDR IOB Config for BA[2:0], ODT, CS_B, WE_B, RAS_B and CAS_B
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DATA0
+
+
+0XF8000B48
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+1
+
+
+2
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+3
+
+
+60
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_DATA0@0XF8000B48
+
+
+31:0
+
+
+fff
+
+
+
+
+
+672
+
+
+DDR IOB Config for Data 15:0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DATA1
+
+
+0XF8000B4C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+1
+
+
+2
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+3
+
+
+60
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_DATA1@0XF8000B4C
+
+
+31:0
+
+
+fff
+
+
+
+
+
+672
+
+
+DDR IOB Config for Data 31:16
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DIFF0
+
+
+0XF8000B50
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+2
+
+
+4
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+3
+
+
+60
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_DIFF0@0XF8000B50
+
+
+31:0
+
+
+fff
+
+
+
+
+
+674
+
+
+DDR IOB Config for DQS 1:0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DIFF1
+
+
+0XF8000B54
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+2
+
+
+4
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+3
+
+
+60
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_DIFF1@0XF8000B54
+
+
+31:0
+
+
+fff
+
+
+
+
+
+674
+
+
+DDR IOB Config for DQS 3:2
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_CLOCK
+
+
+0XF8000B58
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_INP_POWER
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+INP_TYPE
+
+
+2:1
+
+
+6
+
+
+0
+
+
+0
+
+
+Input buffer control: 00: Input off (input signal to selected controller is driven Low). 01: Vref based differential receiver for SSTL, HSTL. 10: Differential input receiver. 11: LVCMOS receiver.
+
+
+
+
+DCI_UPDATE_B
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+DCI Update Enable: 0: disable 1: enable
+
+
+
+
+TERM_EN
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+Tri State Termination Enable: 0: disable 1: enable
+
+
+
+
+DCI_TYPE
+
+
+6:5
+
+
+60
+
+
+0
+
+
+0
+
+
+DCI Mode Selection: 00: DCI Disabled (DDR2/3 ADDR and CLOCK) 01: DCI Drive (LPDDR2) 10: reserved 11: DCI Termination (DDR2/3 DATA and DIFF)
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+OUTPUT_EN
+
+
+10:9
+
+
+600
+
+
+3
+
+
+600
+
+
+Enables output mode to enable output ties to 00: ibuf 01 and 10: reserved 11: obuf
+
+
+
+
+PULLUP_EN
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+enables pullup on output 0: no pullup 1: pullup enabled
+
+
+
+
+DDRIOB_CLOCK@0XF8000B58
+
+
+31:0
+
+
+fff
+
+
+
+
+
+600
+
+
+DDR IOB Config for Clock Output
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DRIVE_SLEW_ADDR
+
+
+0XF8000B5C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_DRIVE_P
+
+
+6:0
+
+
+7f
+
+
+1c
+
+
+1c
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_DRIVE_N
+
+
+13:7
+
+
+3f80
+
+
+c
+
+
+600
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_P
+
+
+18:14
+
+
+7c000
+
+
+3
+
+
+c000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_N
+
+
+23:19
+
+
+f80000
+
+
+3
+
+
+180000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_GTL
+
+
+26:24
+
+
+7000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_RTERM
+
+
+31:27
+
+
+f8000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DRIVE_SLEW_ADDR@0XF8000B5C
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+18c61c
+
+
+Drive and Slew controls for Address and Command pins of the DDR Interface
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DRIVE_SLEW_DATA
+
+
+0XF8000B60
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_DRIVE_P
+
+
+6:0
+
+
+7f
+
+
+1c
+
+
+1c
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_DRIVE_N
+
+
+13:7
+
+
+3f80
+
+
+c
+
+
+600
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_P
+
+
+18:14
+
+
+7c000
+
+
+6
+
+
+18000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_N
+
+
+23:19
+
+
+f80000
+
+
+1f
+
+
+f80000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_GTL
+
+
+26:24
+
+
+7000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_RTERM
+
+
+31:27
+
+
+f8000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DRIVE_SLEW_DATA@0XF8000B60
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+f9861c
+
+
+Drive and Slew controls for DQ pins of the DDR Interface
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DRIVE_SLEW_DIFF
+
+
+0XF8000B64
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_DRIVE_P
+
+
+6:0
+
+
+7f
+
+
+1c
+
+
+1c
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_DRIVE_N
+
+
+13:7
+
+
+3f80
+
+
+c
+
+
+600
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_P
+
+
+18:14
+
+
+7c000
+
+
+6
+
+
+18000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_N
+
+
+23:19
+
+
+f80000
+
+
+1f
+
+
+f80000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_GTL
+
+
+26:24
+
+
+7000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_RTERM
+
+
+31:27
+
+
+f8000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DRIVE_SLEW_DIFF@0XF8000B64
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+f9861c
+
+
+Drive and Slew controls for DQS pins of the DDR Interface
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DRIVE_SLEW_CLOCK
+
+
+0XF8000B68
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_DRIVE_P
+
+
+6:0
+
+
+7f
+
+
+1c
+
+
+1c
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_DRIVE_N
+
+
+13:7
+
+
+3f80
+
+
+c
+
+
+600
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_P
+
+
+18:14
+
+
+7c000
+
+
+6
+
+
+18000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_SLEW_N
+
+
+23:19
+
+
+f80000
+
+
+1f
+
+
+f80000
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_GTL
+
+
+26:24
+
+
+7000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_RTERM
+
+
+31:27
+
+
+f8000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DRIVE_SLEW_CLOCK@0XF8000B68
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+f9861c
+
+
+Drive and Slew controls for Clock pins of the DDR Interface
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DDR_CTRL
+
+
+0XF8000B6C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+VREF_INT_EN
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Enables VREF internal generator
+
+
+
+
+VREF_SEL
+
+
+4:1
+
+
+1e
+
+
+4
+
+
+8
+
+
+Specifies DDR IOB Vref generator output: 0001: VREF = 0.6V for LPDDR2 with 1.2V IO 0100: VREF = 0.75V for DDR3 with 1.5V IO 1000: VREF = 0.90V for DDR2 with 1.8V IO
+
+
+
+
+VREF_EXT_EN
+
+
+6:5
+
+
+60
+
+
+0
+
+
+0
+
+
+Enables External VREF input x0: Disable External VREF for lower 16 bits x1: Enable External VREF for lower 16 bits 0x: Disable External VREF for upper 16 bits 1x: Enable External VREF for upper 16 bits
+
+
+
+
+reserved_VREF_PULLUP_EN
+
+
+8:7
+
+
+180
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+REFIO_EN
+
+
+9:9
+
+
+200
+
+
+1
+
+
+200
+
+
+Enables VRP,VRN 0: VRP/VRN not used 1: VRP/VRN used as refio
+
+
+
+
+reserved_REFIO_TEST
+
+
+11:10
+
+
+c00
+
+
+3
+
+
+c00
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_REFIO_PULLUP_EN
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_DRST_B_PULLUP_EN
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_CKE_PULLUP_EN
+
+
+14:14
+
+
+4000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DDR_CTRL@0XF8000B6C
+
+
+31:0
+
+
+7fff
+
+
+
+
+
+e09
+
+
+DDR IOB Buffer Control
+
+
+
+
+
ASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+0XF8000B70
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+RESET
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+At least toggle once to initialize flops in DCI system
+
+
+
+
+DDRIOB_DCI_CTRL@0XF8000B70
+
+
+31:0
+
+
+1
+
+
+
+
+
+1
+
+
+DDR IOB DCI Config
+
+
+
+
+
DEASSERT RESET
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+0XF8000B70
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+RESET
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+At least toggle once to initialize flops in DCI system
+
+
+
+
+reserved_VRN_OUT
+
+
+5:5
+
+
+20
+
+
+1
+
+
+20
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DCI_CTRL@0XF8000B70
+
+
+31:0
+
+
+21
+
+
+
+
+
+20
+
+
+DDR IOB DCI Config
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DCI_CTRL
+
+
+0XF8000B70
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+RESET
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+At least toggle once to initialize flops in DCI system
+
+
+
+
+ENABLE
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+DCI System Enable. Set to 1 if any IOs in DDR IO Bank use DCI Termination. DDR2, DDR3 and LPDDR2 (Silicon Revision 2.0+) configurations require this bit set to 1
+
+
+
+
+reserved_VRP_TRI
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_VRN_TRI
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_VRP_OUT
+
+
+4:4
+
+
+10
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_VRN_OUT
+
+
+5:5
+
+
+20
+
+
+1
+
+
+20
+
+
+Reserved. Do not modify.
+
+
+
+
+NREF_OPT1
+
+
+7:6
+
+
+c0
+
+
+0
+
+
+0
+
+
+DCI Calibration. Use the values in the Calibration Table.
+
+
+
+
+NREF_OPT2
+
+
+10:8
+
+
+700
+
+
+0
+
+
+0
+
+
+DCI Calibration. Use the values in the Calibration Table.
+
+
+
+
+NREF_OPT4
+
+
+13:11
+
+
+3800
+
+
+1
+
+
+800
+
+
+DCI Calibration. Use the values in the Calibration Table.
+
+
+
+
+PREF_OPT1
+
+
+15:14
+
+
+c000
+
+
+0
+
+
+0
+
+
+DCI Calibration. Use the values in the Calibration Table.
+
+
+
+
+PREF_OPT2
+
+
+19:17
+
+
+e0000
+
+
+0
+
+
+0
+
+
+DCI Calibration. Use the values in the Calibration Table.
+
+
+
+
+UPDATE_CONTROL
+
+
+20:20
+
+
+100000
+
+
+0
+
+
+0
+
+
+DCI Update Mode. Use the values in the Calibration Table.
+
+
+
+
+reserved_INIT_COMPLETE
+
+
+21:21
+
+
+200000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_TST_CLK
+
+
+22:22
+
+
+400000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_TST_HLN
+
+
+23:23
+
+
+800000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_TST_HLP
+
+
+24:24
+
+
+1000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_TST_RST
+
+
+25:25
+
+
+2000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_INT_DCI_EN
+
+
+26:26
+
+
+4000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+DDRIOB_DCI_CTRL@0XF8000B70
+
+
+31:0
+
+
+7feffff
+
+
+
+
+
+823
+
+
+DDR IOB DCI Config
+
+
+
+
+
MIO PROGRAMMING
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_00
+
+
+0XF8000700
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Tri-state enable, active high. 0: disable 1: enable
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 chip select, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Chip Select 0, Output 10: NAND Flash Chip Select, Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 0 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Select IO Buffer Edge Rate, applicable when IO_Type is LVCMOS18, LVCMOS25 or LVCMOS33. 0: Slow CMOS edge 1: Fast CMOS edge
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Select the IO Buffer Type. 000: Reserved 001: LVCMOS18 010: LVCMOS25 011, 101, 110, 111: LVCMOS33 100: HSTL
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Enables Pullup on IO Buffer pin 0: disable 1: enable
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Disable HSTL Input Buffer to save power when it is an output-only (IO_Type must be HSTL). 0: enable 1: disable
+
+
+
+
+MIO_PIN_00@0XF8000700
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 0 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_01
+
+
+0XF8000704
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Chip Select, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM Address Bit 25, Output 10: SRAM/NOR Chip Select 1, Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 1 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_01@0XF8000704
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 1 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_02
+
+
+0XF8000708
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 0, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 8, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash ALEn, Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 2 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_02@0XF8000708
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 2 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_03
+
+
+0XF800070C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 1, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 9, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data bit 0, Input/Output 10: NAND WE_B, Output 11: SDIO 1 Card Power, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 3 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_03@0XF800070C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 3 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_04
+
+
+0XF8000710
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 2, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 10, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 1, Input/Output 10: NAND Flash IO Bit 2, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 4 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_04@0XF8000710
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 4 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_05
+
+
+0XF8000714
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 IO Bit 3, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 11, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 2, Input/Output 10: NAND Flash IO Bit 0, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 5 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_05@0XF8000714
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 5 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_06
+
+
+0XF8000718
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 0 Clock, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 12, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 3, Input/Output 10: NAND Flash IO Bit 1, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 6 (bank 0), Input/Output others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_06@0XF8000718
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 6 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_07
+
+
+0XF800071C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 13, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR OE_B, Output 10: NAND Flash CLE_B, Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 7 (bank 0), Output-only others: reserved
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_07@0XF800071C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 7 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_08
+
+
+0XF8000720
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI Feedback Clock, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 14, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash RD_B, Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 8 (bank 0), Output-only 001: CAN 1 Tx, Output 010: SRAM/NOR BLS_B, Output 011 to 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_08@0XF8000720
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+602
+
+
+MIO Pin 8 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_09
+
+
+0XF8000724
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 Flash Memory Clock, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 15, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 6, Input/Output 10: NAND Flash IO Bit 4, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 9 (bank 0), Input/Output 001: CAN 1 Rx, Input 010 to 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_09@0XF8000724
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 9 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_10
+
+
+0XF8000728
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 0, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 7, Input/Output 10: NAND Flash IO Bit 5, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 10 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 101: SPI 1 MOSI, Input/Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_10@0XF8000728
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 10 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_11
+
+
+0XF800072C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 1, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 4, Input/Output 10: NAND Flash IO Bit 6, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 11 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_11@0XF800072C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 11 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_12
+
+
+0XF8000730
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 2, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Wait, Input 10: NAND Flash IO Bit 7, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 12 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_12@0XF8000730
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 12 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_13
+
+
+0XF8000734
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Quad SPI 1 IO Bit 3, Input/Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Data Bit 5, Input/Output 10: NAND Flash IO Bit 3, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 13 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_13@0XF8000734
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 13 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_14
+
+
+0XF8000738
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1= Not Used
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: NAND Flash Busy, Input 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 14 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 slave select 1, Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_14@0XF8000738
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 14 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_15
+
+
+0XF800073C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1= Not Used
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 0, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 15 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+3
+
+
+600
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_15@0XF800073C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+600
+
+
+MIO Pin 15 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_16
+
+
+0XF8000740
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Clock, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 4, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 1, Output 10: NAND Flash IO Bit 8, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 16 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_16@0XF8000740
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 16 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_17
+
+
+0XF8000744
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 0, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 5, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 2, Output 10: NAND Flash IO Bit 9, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 17 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110 TTC 1 Clock, Input 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_17@0XF8000744
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 17 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_18
+
+
+0XF8000748
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 1, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 6, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 3, Output 10: NAND Flash IO Bit 10, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 18 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_18@0XF8000748
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 18 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_19
+
+
+0XF800074C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 2, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 7, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 4, Output 10: NAND Flash IO Bit 11, Input/Output 111: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 19 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_19@0XF800074C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 19 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_20
+
+
+0XF8000750
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII TxD Bit 3, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 5, Output 10: NAND Flash IO Bit 12, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 20 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_20@0XF8000750
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 20 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_21
+
+
+0XF8000754
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Tx Control, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 6, Output 10: NAND Flash IO Bit 13, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 21 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_21@0XF8000754
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+202
+
+
+MIO Pin 21 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_22
+
+
+0XF8000758
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Clock, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 2, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 7, Output 10: NAND Flash IO Bit 14, Input/Output 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 22 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 101: SPI 1 MOSI, Input/Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_22@0XF8000758
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 22 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_23
+
+
+0XF800075C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD 0, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 3, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 8, Output 10: NAND Flash IO Bit 15, Input/Output 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 23 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_23@0XF800075C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 23 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_24
+
+
+0XF8000760
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 1, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Clock output, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 9, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 24 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_24@0XF8000760
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 24 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_25
+
+
+0XF8000764
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit2, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Control Signal, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 10, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 25 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_25@0XF8000764
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 25 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_26
+
+
+0XF8000768
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII RxD Bit 3, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 0, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 11, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 26 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 Slave Select 1, Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_26@0XF8000768
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 26 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_27
+
+
+0XF800076C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 0 RGMII Rx Control, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: Trace Port Data Bit 1, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 12, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 27 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_27@0XF800076C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+203
+
+
+MIO Pin 27 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_28
+
+
+0XF8000770
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Clock, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 4, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 13, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 28 (bank 0), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_28@0XF8000770
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 28 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_29
+
+
+0XF8000774
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 0, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Direction, Input
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 14, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 29 (bank 0), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110: TTC 1 Clock, Input 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_29@0XF8000774
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+205
+
+
+MIO Pin 29 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_30
+
+
+0XF8000778
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 1, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Stop, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 15, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 30 (bank 0), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_30@0XF8000778
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 30 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_31
+
+
+0XF800077C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 2, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Next, Input
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 16, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 31 (bank 0), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_31@0XF800077C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+205
+
+
+MIO Pin 31 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_32
+
+
+0XF8000780
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII TxD Bit 3, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 0, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 17, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 32 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_32@0XF8000780
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 32 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_33
+
+
+0XF8000784
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Tx Control, Output
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 1, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 18, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 33 (Bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_33@0XF8000784
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 33 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_34
+
+
+0XF8000788
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Clock, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 2, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 19, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 34 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: PJTAG TDI, Input 100: SDIO 1 IO Bit 0, Input/Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_34@0XF8000788
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 34 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_35
+
+
+0XF800078C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD data Bit 0, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 3, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 20, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 35 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_35@0XF800078C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 35 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_36
+
+
+0XF8000790
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Data Bit 1
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Clock, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 21, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 36 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Clock, Input/Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_36@0XF8000790
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+205
+
+
+MIO Pin 36 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_37
+
+
+0XF8000794
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD Data Bit 2, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 5, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 22, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 37 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Slave Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_37@0XF8000794
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 37 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_38
+
+
+0XF8000798
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII RxD Data Bit 3, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 6, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 23, Output 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 38 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: SWDT Clock, Input 100: SDIO 1 IO Bit 2, Input/Output 101: SPI 1 Slave Select 1, Output 110: reserved 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_38@0XF8000798
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 38 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_39
+
+
+0XF800079C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: Ethernet 1 RGMII Rx Control, Input
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 0 ULPI Data Bit 7, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: SRAM/NOR Address Bit 24, Output 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 39 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_39@0XF800079C
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+204
+
+
+MIO Pin 39 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_40
+
+
+0XF80007A0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 4, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 40 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 Clock, Input/Output 101: SPI 0 Serial Clock, Input/Output 110: TTC 1 Wave, Output 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_40@0XF80007A0
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 40 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_41
+
+
+0XF80007A4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Direction, Input
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 41 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 Command, Input/Output 101: SPI 0 MISO, Input/Output 110: TTC 1 Clock, Input 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_41@0XF80007A4
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 41 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_42
+
+
+0XF80007A8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1= Not Used
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Stop, Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 42 (bank 1), Input/Output 001: CAN 0 Rx, Input 010: I2C 0 Serial Clock, Input/Ouput 011: reserved 100: SDIO 0 IO Bit 0, Input/Output 101: SPI 0 Slave Select 0, Input/Output 110: TTC 0 Wave, Output 111: UART 0 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_42@0XF80007A8
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 42 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_43
+
+
+0XF80007AC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Next, Input
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 43 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 1, Input/Output 101: SPI 0 Slave Select 1, Output 110: TTC 0 Clock, Input 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_43@0XF80007AC
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 43 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_44
+
+
+0XF80007B0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 0, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 44 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: reserved 100: SDIO 0 IO Bit 2, Input/Output 101: SPI 0 Slave Select 2, Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_44@0XF80007B0
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 44 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_45
+
+
+0XF80007B4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 1, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 45 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: reserved 100: SDIO 0 IO Bit 3, Input/Output 101: SPI 0 MOSI, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_45@0XF80007B4
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 45 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_46
+
+
+0XF80007B8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_46@0XF80007B8
+
+
+31:0
+
+
+3f01
+
+
+
+
+
+201
+
+
+MIO Pin 46 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_47
+
+
+0XF80007BC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 3, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 47 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: PJTAG TDO, Output 100: SDIO 1 Command, Input/Output 101: SPI 1 MISO, Input/Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_47@0XF80007BC
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+200
+
+
+MIO Pin 47 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_48
+
+
+0XF80007C0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Clock, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+7
+
+
+e0
+
+
+Level 3 Mux Select 000: GPIO 48 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: PJTAG TCK, Input 100: SDIO 1 Clock, Input/Output 101: SPI 1 Serial Clock, Input/Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_48@0XF80007C0
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+2e0
+
+
+MIO Pin 48 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_49
+
+
+0XF80007C4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 5, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+7
+
+
+e0
+
+
+Level 3 Mux Select 000: GPIO 49 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: PJTAG TMS, Input 100: SDIO 1 IO Bit 1, Input/Output 101: SPI 1 Select 0, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_49@0XF80007C4
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+2e1
+
+
+MIO Pin 49 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_50
+
+
+0XF80007C8
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_50@0XF80007C8
+
+
+31:0
+
+
+3f01
+
+
+
+
+
+201
+
+
+MIO Pin 50 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_51
+
+
+0XF80007CC
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: USB 1 ULPI Data Bit 7, Input/Output
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+0
+
+
+0
+
+
+Level 3 Mux Select 000: GPIO 51 (bank 1), Input/Output 001: CAN 0 Tx, Output 010: I2C 0 Serial Data, Input/Output 011: SWDT Reset, Output 100: SDIO 1 IO Bit 3, Input/Output 101: SPI 1 Slave Select 2, Output 110: reserved 111: UART 0 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_51@0XF80007CC
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+200
+
+
+MIO Pin 51 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_52
+
+
+0XF80007D0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 0 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 52 (bank 1), Input/Output 001: CAN 1 Tx, Output 010: I2C 1 Serial Clock, Input/Output 011: SWDT Clock, Input 100: MDIO 0 Clock, Output 101: MDIO 1 Clock, Output 110: reserved 111: UART 1 TxD, Output
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_52@0XF80007D0
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 52 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MIO_PIN_53
+
+
+0XF80007D4
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+TRI_ENABLE
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[TRI_ENABLE]
+
+
+
+
+L0_SEL
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+Level 0 Mux Select 0: Level 1 Mux 1: reserved
+
+
+
+
+L1_SEL
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+Level 1 Mux Select 0: Level 2 Mux 1: reserved
+
+
+
+
+L2_SEL
+
+
+4:3
+
+
+18
+
+
+0
+
+
+0
+
+
+Level 2 Mux Select 00: Level 3 Mux 01: reserved 10: reserved 11: SDIO 1 Power Control, Output
+
+
+
+
+L3_SEL
+
+
+7:5
+
+
+e0
+
+
+4
+
+
+80
+
+
+Level 3 Mux Select 000: GPIO 53 (bank 1), Input/Output 001: CAN 1 Rx, Input 010: I2C 1 Serial Data, Input/Output 011: SWDT Reset, Output 100: MDIO 0 Data, Input/Output 101: MDIO 1 Data, Input/Output 110: reserved 111: UART 1 RxD, Input
+
+
+
+
+Speed
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[Speed]
+
+
+
+
+IO_Type
+
+
+11:9
+
+
+e00
+
+
+1
+
+
+200
+
+
+Operates the same as MIO_PIN_00[IO_Type]
+
+
+
+
+PULLUP
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[PULLUP]
+
+
+
+
+DisableRcvr
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Operates the same as MIO_PIN_00[DisableRcvr]
+
+
+
+
+MIO_PIN_53@0XF80007D4
+
+
+31:0
+
+
+3fff
+
+
+
+
+
+280
+
+
+MIO Pin 53 Control
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SD0_WP_CD_SEL
+
+
+0XF8000830
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+SDIO0_WP_SEL
+
+
+5:0
+
+
+3f
+
+
+32
+
+
+32
+
+
+SDIO 0 WP Select. Values 53:0 select MIO input (any pin except 7 and 8) Values 63:54 select EMIO input
+
+
+
+
+SDIO0_CD_SEL
+
+
+21:16
+
+
+3f0000
+
+
+2e
+
+
+2e0000
+
+
+SDIO 0 CD Select. Values 53:0 select MIO input (any pin except bits 7 and 8) Values 63:54 select EMIO input
+
+
+
+
+SD0_WP_CD_SEL@0XF8000830
+
+
+31:0
+
+
+3f003f
+
+
+
+
+
+2e0032
+
+
+SDIO 0 WP CD select
+
+
+
+
+
LOCK IT BACK
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_LOCK
+
+
+0XF8000004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+LOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+767b
+
+
+767b
+
+
+Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_LOCK@0XF8000004
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+767b
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+SLCR_UNLOCK
+
+
+
+0XF8000008
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
+DDRIOB_DATA0
+
+
+
+0XF8000B48
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for Data 15:0
+
+
+
+
+
+DDRIOB_DATA1
+
+
+
+0XF8000B4C
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for Data 31:16
+
+
+
+
+
+DDRIOB_DIFF0
+
+
+
+0XF8000B50
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for DQS 1:0
+
+
+
+
+
+DDRIOB_DIFF1
+
+
+
+0XF8000B54
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+DDR IOB Config for DQS 3:2
+
+
+
+
+
+SLCR_LOCK
+
+
+
+0XF8000004
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+Baud_rate_divider_reg0
+
+
+
+0XE0001034
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Baud Rate Divider Register
+
+
+
+
+
+Baud_rate_gen_reg0
+
+
+
+0XE0001018
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Baud Rate Generator Register.
+
+
+
+
+
+Control_reg0
+
+
+
+0XE0001000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+UART Control Register
+
+
+
+
+
+mode_reg0
+
+
+
+0XE0001004
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+UART Mode Register
+
+
+
+
+
+Config_reg
+
+
+
+0XE000D000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+SPI configuration register
+
+
+
+
+
+CTRL
+
+
+
+0XF8007000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.
+
+
+
+
+
+DIRM_0
+
+
+
+0XE000A204
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Direction mode (GPIO Bank0, MIO)
+
+
+
+
+
+MASK_DATA_0_LSW
+
+
+
+0XE000A000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
+OEN_0
+
+
+
+0XE000A208
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Output enable (GPIO Bank0, MIO)
+
+
+
+
+
+MASK_DATA_0_LSW
+
+
+
+0XE000A000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
+MASK_DATA_0_LSW
+
+
+
+0XE000A000
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+SLCR SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_UNLOCK
+
+
+0XF8000008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNLOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+df0d
+
+
+df0d
+
+
+Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_UNLOCK@0XF8000008
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+df0d
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
DDR TERM/IBUF_DISABLE_MODE SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DATA0
+
+
+0XF8000B48
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+1
+
+
+80
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+1
+
+
+100
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+DDRIOB_DATA0@0XF8000B48
+
+
+31:0
+
+
+180
+
+
+
+
+
+180
+
+
+DDR IOB Config for Data 15:0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DATA1
+
+
+0XF8000B4C
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+1
+
+
+80
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+1
+
+
+100
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+DDRIOB_DATA1@0XF8000B4C
+
+
+31:0
+
+
+180
+
+
+
+
+
+180
+
+
+DDR IOB Config for Data 31:16
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DIFF0
+
+
+0XF8000B50
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+1
+
+
+80
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+1
+
+
+100
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+DDRIOB_DIFF0@0XF8000B50
+
+
+31:0
+
+
+180
+
+
+
+
+
+180
+
+
+DDR IOB Config for DQS 1:0
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DDRIOB_DIFF1
+
+
+0XF8000B54
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+IBUF_DISABLE_MODE
+
+
+7:7
+
+
+80
+
+
+1
+
+
+80
+
+
+Use ibuf_disable_into control ibuf 0: ibuf is enabled 1: use ibuf_disable_in_to control enable NOTE: This must be 0 during DRAM init/training and can only be set to 1 after init/training completes.
+
+
+
+
+TERM_DISABLE_MODE
+
+
+8:8
+
+
+100
+
+
+1
+
+
+100
+
+
+Termination is used during read transactions and may be disabled (automatically by hardware) when there are no reads taking place through the DDR Interface. Disabling termination reduces power consumption. 0: termination always enabled 1: use 'dynamic_dci_ts' to disable termination when not in use NOTE: This bit must be 0 during DRAM init/training. It may be set to 1 after init/training completes.
+
+
+
+
+DDRIOB_DIFF1@0XF8000B54
+
+
+31:0
+
+
+180
+
+
+
+
+
+180
+
+
+DDR IOB Config for DQS 3:2
+
+
+
+
+
LOCK IT BACK
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_LOCK
+
+
+0XF8000004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+LOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+767b
+
+
+767b
+
+
+Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_LOCK@0XF8000004
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+767b
+
+
+SLCR Write Protection Lock
+
+
+
+
+
SRAM/NOR SET OPMODE
+UART REGISTERS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+Baud_rate_divider_reg0
+
+
+0XE0001034
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+BDIV
+
+
+7:0
+
+
+ff
+
+
+6
+
+
+6
+
+
+Baud rate divider value: 0 - 3: ignored 4 - 255: Baud rate
+
+
+
+
+Baud_rate_divider_reg0@0XE0001034
+
+
+31:0
+
+
+ff
+
+
+
+
+
+6
+
+
+Baud Rate Divider Register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+Baud_rate_gen_reg0
+
+
+0XE0001018
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CD
+
+
+15:0
+
+
+ffff
+
+
+3e
+
+
+3e
+
+
+Baud Rate Clock Divisor Value: 0: Disables baud_sample 1: Clock divisor bypass (baud_sample = sel_clk) 2 - 65535: baud_sample
+
+
+
+
+Baud_rate_gen_reg0@0XE0001018
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+3e
+
+
+Baud Rate Generator Register.
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+Control_reg0
+
+
+0XE0001000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+STPBRK
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Stop transmitter break: 0: no affect 1: stop transmission of the break after a minimum of one character length and transmit a high level during 12 bit periods. It can be set regardless of the value of STTBRK.
+
+
+
+
+STTBRK
+
+
+7:7
+
+
+80
+
+
+0
+
+
+0
+
+
+Start transmitter break: 0: no affect 1: start to transmit a break after the characters currently present in the FIFO and the transmit shift register have been transmitted. It can only be set if STPBRK (Stop transmitter break) is not high.
+
+
+
+
+RSTTO
+
+
+6:6
+
+
+40
+
+
+0
+
+
+0
+
+
+Restart receiver timeout counter: 1: receiver timeout counter is restarted. This bit is self clearing once the restart has completed.
+
+
+
+
+TXDIS
+
+
+5:5
+
+
+20
+
+
+0
+
+
+0
+
+
+Transmit disable: 0: enable transmitter 1: disable transmitter
+
+
+
+
+TXEN
+
+
+4:4
+
+
+10
+
+
+1
+
+
+10
+
+
+Transmit enable: 0: disable transmitter 1: enable transmitter, provided the TXDIS field is set to 0.
+
+
+
+
+RXDIS
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+Receive disable: 0: enable 1: disable, regardless of the value of RXEN
+
+
+
+
+RXEN
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Receive enable: 0: disable 1: enable When set to one, the receiver logic is enabled, provided the RXDIS field is set to zero.
+
+
+
+
+TXRES
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Software reset for Tx data path: 0: no affect 1: transmitter logic is reset and all pending transmitter data is discarded This bit is self clearing once the reset has completed.
+
+
+
+
+RXRES
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Software reset for Rx data path: 0: no affect 1: receiver logic is reset and all pending receiver data is discarded. This bit is self clearing once the reset has completed.
+
+
+
+
+Control_reg0@0XE0001000
+
+
+31:0
+
+
+1ff
+
+
+
+
+
+17
+
+
+UART Control Register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+mode_reg0
+
+
+0XE0001004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+CHMODE
+
+
+9:8
+
+
+300
+
+
+0
+
+
+0
+
+
+Channel mode: Defines the mode of operation of the UART. 00: normal 01: automatic echo 10: local loopback 11: remote loopback
+
+
+
+
+NBSTOP
+
+
+7:6
+
+
+c0
+
+
+0
+
+
+0
+
+
+Number of stop bits: Defines the number of stop bits to detect on receive and to generate on transmit. 00: 1 stop bit 01: 1.5 stop bits 10: 2 stop bits 11: reserved
+
+
+
+
+PAR
+
+
+5:3
+
+
+38
+
+
+4
+
+
+20
+
+
+Parity type select: Defines the expected parity to check on receive and the parity to generate on transmit. 000: even parity 001: odd parity 010: forced to 0 parity (space) 011: forced to 1 parity (mark) 1xx: no parity
+
+
+
+
+CHRL
+
+
+2:1
+
+
+6
+
+
+0
+
+
+0
+
+
+Character length select: Defines the number of bits in each character. 11: 6 bits 10: 7 bits 0x: 8 bits
+
+
+
+
+CLKS
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+Clock source select: This field defines whether a pre-scalar of 8 is applied to the baud rate generator input clock. 0: clock source is uart_ref_clk 1: clock source is uart_ref_clk/8
+
+
+
+
+mode_reg0@0XE0001004
+
+
+31:0
+
+
+3ff
+
+
+
+
+
+20
+
+
+UART Mode Register
+
+
+
+
+
QSPI REGISTERS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+Config_reg
+
+
+0XE000D000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+Holdb_dr
+
+
+19:19
+
+
+80000
+
+
+1
+
+
+80000
+
+
+If set, Holdb and WPn pins are actively driven by the qspi controller in 1-bit and 2-bit modes . If not set, then external pull up is required on HOLDb and WPn pins . Note that this bit doesn't affect the quad(4-bit) mode as Controller always drives these pins in quad mode. It is highly recommended to set this bit always(irrespective of mode of operation) while using QSPI
+
+
+
+
+Config_reg@0XE000D000
+
+
+31:0
+
+
+80000
+
+
+
+
+
+80000
+
+
+SPI configuration register
+
+
+
+
+
PL POWER ON RESET REGISTERS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+CTRL
+
+
+0XF8007000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+PCFG_POR_CNT_4K
+
+
+29:29
+
+
+20000000
+
+
+0
+
+
+0
+
+
+This register controls which POR timer the PL will use for power-up. 0 - Use 64k timer 1 - Use 4k timer
+
+
+
+
+CTRL@0XF8007000
+
+
+31:0
+
+
+20000000
+
+
+
+
+
+0
+
+
+Control Register : This register defines basic control registers. Some of the register bits can be locked by control bits in the LOCK Register 0x004.
+
+
+
+
+
SMC TIMING CALCULATION REGISTER UPDATE
+NAND SET CYCLE
+OPMODE
+DIRECT COMMAND
+SRAM/NOR CS0 SET CYCLE
+DIRECT COMMAND
+NOR CS0 BASE ADDRESS
+SRAM/NOR CS1 SET CYCLE
+DIRECT COMMAND
+NOR CS1 BASE ADDRESS
+USB RESET
+USB0 RESET
+DIR MODE BANK 0
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+DIRM_0
+
+
+0XE000A204
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+DIRECTION_0
+
+
+31:0
+
+
+ffffffff
+
+
+80
+
+
+80
+
+
+Direction mode 0: input 1: output Each bit configures the corresponding pin within the 32-bit bank NOTE: bits[8:7] of bank0 cannot be used as inputs. The DIRM bits can be set to 0, but reading DATA_RO does not reflect the input value. See the GPIO chapter for more information.
+
+
+
+
+DIRM_0@0XE000A204
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+80
+
+
+Direction mode (GPIO Bank0, MIO)
+
+
+
+
+
DIR MODE BANK 1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MASK_DATA_0_LSW
+
+
+0XE000A000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+MASK_0_LSW
+
+
+31:16
+
+
+ffff0000
+
+
+ff7f
+
+
+ff7f0000
+
+
+On a write, only bits with a corresponding deasserted mask will change the output value. 0: pin value is updated 1: pin is masked Each bit controls the corresponding pin within the 16-bit half-bank. Reads return 0's.
+
+
+
+
+DATA_0_LSW
+
+
+15:0
+
+
+ffff
+
+
+80
+
+
+80
+
+
+On a write, these are the data values for the corresponding GPIO output bits. Each bit controls the corresponding pin within the 16-bit half-bank. Reads return the previous value written to this register or DATA_0[15:0]. Reads do not return the value on the GPIO pin.
+
+
+
+
+MASK_DATA_0_LSW@0XE000A000
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+ff7f0080
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE BANK 0
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+OEN_0
+
+
+0XE000A208
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+OP_ENABLE_0
+
+
+31:0
+
+
+ffffffff
+
+
+80
+
+
+80
+
+
+Output enables 0: disabled 1: enabled Each bit configures the corresponding pin within the 32-bit bank
+
+
+
+
+OEN_0@0XE000A208
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+80
+
+
+Output enable (GPIO Bank0, MIO)
+
+
+
+
+
OUTPUT ENABLE BANK 1
+MASK_DATA_0_LSW LOW BANK [15:0]
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MASK_DATA_0_LSW
+
+
+0XE000A000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+MASK_0_LSW
+
+
+31:16
+
+
+ffff0000
+
+
+ff7f
+
+
+ff7f0000
+
+
+On a write, only bits with a corresponding deasserted mask will change the output value. 0: pin value is updated 1: pin is masked Each bit controls the corresponding pin within the 16-bit half-bank. Reads return 0's.
+
+
+
+
+DATA_0_LSW
+
+
+15:0
+
+
+ffff
+
+
+0
+
+
+0
+
+
+On a write, these are the data values for the corresponding GPIO output bits. Each bit controls the corresponding pin within the 16-bit half-bank. Reads return the previous value written to this register or DATA_0[15:0]. Reads do not return the value on the GPIO pin.
+
+
+
+
+MASK_DATA_0_LSW@0XE000A000
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+ff7f0000
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+MASK_DATA_0_LSW
+
+
+0XE000A000
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+MASK_0_LSW
+
+
+31:16
+
+
+ffff0000
+
+
+ff7f
+
+
+ff7f0000
+
+
+On a write, only bits with a corresponding deasserted mask will change the output value. 0: pin value is updated 1: pin is masked Each bit controls the corresponding pin within the 16-bit half-bank. Reads return 0's.
+
+
+
+
+DATA_0_LSW
+
+
+15:0
+
+
+ffff
+
+
+80
+
+
+80
+
+
+On a write, these are the data values for the corresponding GPIO output bits. Each bit controls the corresponding pin within the 16-bit half-bank. Reads return the previous value written to this register or DATA_0[15:0]. Reads do not return the value on the GPIO pin.
+
+
+
+
+MASK_DATA_0_LSW@0XE000A000
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+ff7f0080
+
+
+Maskable Output Data (GPIO Bank0, MIO, Lower 16bits)
+
+
+
+
+
MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+USB1 RESET
+DIR MODE BANK 0
+DIR MODE BANK 1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE BANK 0
+OUTPUT ENABLE BANK 1
+MASK_DATA_0_LSW LOW BANK [15:0]
+MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+ENET RESET
+ENET0 RESET
+DIR MODE BANK 0
+DIR MODE BANK 1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE BANK 0
+OUTPUT ENABLE BANK 1
+MASK_DATA_0_LSW LOW BANK [15:0]
+MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+ENET1 RESET
+DIR MODE BANK 0
+DIR MODE BANK 1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE BANK 0
+OUTPUT ENABLE BANK 1
+MASK_DATA_0_LSW LOW BANK [15:0]
+MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+I2C RESET
+I2C0 RESET
+DIR MODE GPIO BANK0
+DIR MODE GPIO BANK1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE
+OUTPUT ENABLE
+MASK_DATA_0_LSW LOW BANK [15:0]
+MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+I2C1 RESET
+DIR MODE GPIO BANK0
+DIR MODE GPIO BANK1
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+OUTPUT ENABLE
+OUTPUT ENABLE
+MASK_DATA_0_LSW LOW BANK [15:0]
+MASK_DATA_0_MSW LOW BANK [31:16]
+MASK_DATA_1_LSW LOW BANK [47:32]
+MASK_DATA_1_MSW LOW BANK [53:48]
+ADD 1 MS DELAY
+MASK_DATA_0_LSW HIGH BANK [15:0]
+MASK_DATA_0_MSW HIGH BANK [31:16]
+MASK_DATA_1_LSW HIGH BANK [47:32]
+MASK_DATA_1_MSW HIGH BANK [53:48]
+NOR CHIP SELECT
+DIR MODE BANK 0
+MASK_DATA_0_LSW HIGH BANK [15:0]
+OUTPUT ENABLE BANK 0
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+SLCR_UNLOCK
+
+
+
+0XF8000008
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
+LVL_SHFTR_EN
+
+
+
+0XF8000900
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+Level Shifters Enable
+
+
+
+
+
+FPGA_RST_CTRL
+
+
+
+0XF8000240
+
+
+32
+
+
+RW
+
+
+0x000000
+
+
+FPGA Software Reset Control
+
+
+
+
+
+SLCR_LOCK
+
+
+
+0XF8000004
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+SLCR SETTINGS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_UNLOCK
+
+
+0XF8000008
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+UNLOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+df0d
+
+
+df0d
+
+
+Write the unlock key, 0xDF0D, to enable writes to the slcr registers. All slcr registers, 0xF800_0000 to 0xF800_0B74, are writeable until locked using the SLCR_LOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_UNLOCK@0XF8000008
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+df0d
+
+
+SLCR Write Protection Unlock
+
+
+
+
+
ENABLING LEVEL SHIFTER
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LVL_SHFTR_EN
+
+
+0XF8000900
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+USER_LVL_INP_EN_0
+
+
+3:3
+
+
+8
+
+
+1
+
+
+8
+
+
+Level shifter enable to drive signals from PL to PS
+
+
+
+
+USER_LVL_OUT_EN_0
+
+
+2:2
+
+
+4
+
+
+1
+
+
+4
+
+
+Level shifter enable to drive signals from PS to PL
+
+
+
+
+USER_LVL_INP_EN_1
+
+
+1:1
+
+
+2
+
+
+1
+
+
+2
+
+
+Level shifter enable to drive signals from PL to PS
+
+
+
+
+USER_LVL_OUT_EN_1
+
+
+0:0
+
+
+1
+
+
+1
+
+
+1
+
+
+Level shifter enable to drive signals from PS to PL
+
+
+
+
+LVL_SHFTR_EN@0XF8000900
+
+
+31:0
+
+
+f
+
+
+
+
+
+f
+
+
+Level Shifters Enable
+
+
+
+
+
FPGA RESETS TO 0
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+FPGA_RST_CTRL
+
+
+0XF8000240
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+reserved_3
+
+
+31:25
+
+
+fe000000
+
+
+0
+
+
+0
+
+
+Reserved. Writes are ignored, read data is zero.
+
+
+
+
+reserved_FPGA_ACP_RST
+
+
+24:24
+
+
+1000000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_AXDS3_RST
+
+
+23:23
+
+
+800000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_AXDS2_RST
+
+
+22:22
+
+
+400000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_AXDS1_RST
+
+
+21:21
+
+
+200000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_AXDS0_RST
+
+
+20:20
+
+
+100000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_2
+
+
+19:18
+
+
+c0000
+
+
+0
+
+
+0
+
+
+Reserved. Writes are ignored, read data is zero.
+
+
+
+
+reserved_FSSW1_FPGA_RST
+
+
+17:17
+
+
+20000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FSSW0_FPGA_RST
+
+
+16:16
+
+
+10000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_1
+
+
+15:14
+
+
+c000
+
+
+0
+
+
+0
+
+
+Reserved. Writes are ignored, read data is zero.
+
+
+
+
+reserved_FPGA_FMSW1_RST
+
+
+13:13
+
+
+2000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_FMSW0_RST
+
+
+12:12
+
+
+1000
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_DMA3_RST
+
+
+11:11
+
+
+800
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_DMA2_RST
+
+
+10:10
+
+
+400
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_DMA1_RST
+
+
+9:9
+
+
+200
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved_FPGA_DMA0_RST
+
+
+8:8
+
+
+100
+
+
+0
+
+
+0
+
+
+Reserved. Do not modify.
+
+
+
+
+reserved
+
+
+7:4
+
+
+f0
+
+
+0
+
+
+0
+
+
+Reserved. Writes are ignored, read data is zero.
+
+
+
+
+FPGA3_OUT_RST
+
+
+3:3
+
+
+8
+
+
+0
+
+
+0
+
+
+PL Reset 3 (FCLKRESETN3 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN3 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)
+
+
+
+
+FPGA2_OUT_RST
+
+
+2:2
+
+
+4
+
+
+0
+
+
+0
+
+
+PL Reset 2 (FCLKRESETN2 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN2 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)
+
+
+
+
+FPGA1_OUT_RST
+
+
+1:1
+
+
+2
+
+
+0
+
+
+0
+
+
+PL Reset 1 (FCLKRESETN1 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN1 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)
+
+
+
+
+FPGA0_OUT_RST
+
+
+0:0
+
+
+1
+
+
+0
+
+
+0
+
+
+PL Reset 0 (FCLKRESETN0 output signal). Refer to the PS7 wrapper in EDK for possible signal inversion. Logic level on the FCLKRESETN0 signal: 0: De-assert reset (High logic level). 1: Assert Reset (Low logic state)
+
+
+
+
+FPGA_RST_CTRL@0XF8000240
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+0
+
+
+FPGA Software Reset Control
+
+
+
+
+
AFI REGISTERS
+AFI0 REGISTERS
+AFI1 REGISTERS
+AFI2 REGISTERS
+AFI3 REGISTERS
+LOCK IT BACK
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+SLCR_LOCK
+
+
+0XF8000004
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+LOCK_KEY
+
+
+15:0
+
+
+ffff
+
+
+767b
+
+
+767b
+
+
+Write the lock key, 0x767B, to write protect the slcr registers: all slcr registers, 0xF800_0000 to 0xF800_0B74, are write protected until the unlock key is written to the SLCR_UNLOCK register. A read of this register returns zero.
+
+
+
+
+SLCR_LOCK@0XF8000004
+
+
+31:0
+
+
+ffff
+
+
+
+
+
+767b
+
+
+SLCR Write Protection Lock
+
+
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+
+LAR
+
+
+
+0XF8898FB0
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+Lock Access Register
+
+
+
+
+
+LAR
+
+
+
+0XF8899FB0
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+Lock Access Register
+
+
+
+
+
+LAR
+
+
+
+0XF8809FB0
+
+
+32
+
+
+WO
+
+
+0x000000
+
+
+Lock Access Register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+CROSS TRIGGER CONFIGURATIONS
+UNLOCKING CTI REGISTERS
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LAR
+
+
+0XF8898FB0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+KEY
+
+
+31:0
+
+
+ffffffff
+
+
+c5acce55
+
+
+c5acce55
+
+
+Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.
+
+
+
+
+LAR@0XF8898FB0
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+c5acce55
+
+
+Lock Access Register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LAR
+
+
+0XF8899FB0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+KEY
+
+
+31:0
+
+
+ffffffff
+
+
+c5acce55
+
+
+c5acce55
+
+
+Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.
+
+
+
+
+LAR@0XF8899FB0
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+c5acce55
+
+
+Lock Access Register
+
+
+
+
+
+
+
+
+Register Name
+
+
+Address
+
+
+Width
+
+
+Type
+
+
+Reset Value
+
+
+Description
+
+
+
+
+LAR
+
+
+0XF8809FB0
+
+
+32
+
+
+rw
+
+
+0x00000000
+
+
+--
+
+
+
+
+
+
+
+Field Name
+
+
+Bits
+
+
+Mask
+
+
+Value
+
+
+Shifted Value
+
+
+Description
+
+
+
+
+KEY
+
+
+31:0
+
+
+ffffffff
+
+
+c5acce55
+
+
+c5acce55
+
+
+Write Access Code. Write behavior depends on PADDRDBG31 pin: - PADDRDBG31=0 (lower 2GB): After reset (via PRESETDBGn), CTI is locked, i.e., writes to all other registers using lower 2GB addresses are ignored. To unlock, 0xC5ACCE55 must be written this register. After the required registers are written, to lock again, write a value other than 0xC5ACCE55 to this register. - PADDRDBG31=1 (upper 2GB): CTI is unlocked when upper 2GB addresses are used to write to all the registers. However, write to this register is ignored using a upper 2GB address! Note: read from this register always returns 0, regardless of PADDRDBG31.
+
+
+
+
+LAR@0XF8809FB0
+
+
+31:0
+
+
+ffffffff
+
+
+
+
+
+c5acce55
+
+
+Lock Access Register
+
+
+
+
+
ENABLING CTI MODULES AND CHANNELS
+MAPPING CPU0, CPU1 AND FTM EVENTS TO CTM CHANNELS
+
+
+
+
+
+