rockchip: rk3288: sdram: use constants in ddrconf table
From: Heiko Stuebner <heiko@...> Date: Sat, 18 Feb 2017 16:45:41 +0100
Commit-Message
Use defines to describe the bit shifts used to create the table for ddrconf register values. Signed-off-by: Heiko Stuebner <heiko@...>
Patch-Comment
arch/arm/include/asm/arch-rockchip/ddr_rk3288.h | 8 ++++++++ arch/arm/mach-rockchip/rk3288/sdram_rk3288.c | 20 ++++++++++---------- 2 files changed, 18 insertions(+), 10 deletions(-)
Statistics
- 18 lines added
- 10 lines removed
Changes
--------------- arch/arm/include/asm/arch-rockchip/ddr_rk3288.h ----------------
index fccabcd2c0..9a59075afc 100644
@@ -425,6 +425,14 @@ enum {
#define START_CMD (1u << 31)
+/*
+ * DDRCONF
+ * [5:4] row(13+n)
+ * [1:0] col(9+n), assume bw=2
+ */
+#define DDRCONF_ROW_SHIFT 4
+#define DDRCONF_COL_SHIFT 0
+
/* DEVTODEV */
#define BUSWRTORD_SHIFT 4
#define BUSRDTOWR_SHIFT 2
----------------- arch/arm/mach-rockchip/rk3288/sdram_rk3288.c -----------------
index be3d713202..41661046af 100644
@@ -596,16 +596,16 @@ static void dram_all_config(const struct dram_info *dram,
const int ddrconf_table[] = {
/* row col,bw */
0,
+ ((1 << DDRCONF_ROW_SHIFT) | 1 << DDRCONF_COL_SHIFT),
+ ((2 << DDRCONF_ROW_SHIFT) | 1 << DDRCONF_COL_SHIFT),
+ ((3 << DDRCONF_ROW_SHIFT) | 1 << DDRCONF_COL_SHIFT),
+ ((4 << DDRCONF_ROW_SHIFT) | 1 << DDRCONF_COL_SHIFT),
+ ((1 << DDRCONF_ROW_SHIFT) | 2 << DDRCONF_COL_SHIFT),
+ ((2 << DDRCONF_ROW_SHIFT) | 2 << DDRCONF_COL_SHIFT),
+ ((3 << DDRCONF_ROW_SHIFT) | 2 << DDRCONF_COL_SHIFT),
+ ((1 << DDRCONF_ROW_SHIFT) | 0 << DDRCONF_COL_SHIFT),
+ ((2 << DDRCONF_ROW_SHIFT) | 0 << DDRCONF_COL_SHIFT),
+ ((3 << DDRCONF_ROW_SHIFT) | 0 << DDRCONF_COL_SHIFT),
0,
0,
0,