driver/ddr/fsl: Add general MMDC driver and reuse common MMDC driver for ls1012a

This general MMDC driver adds basic support for Freescale MMDC
(Multi Mode DDR Controller). Currently MMDC is integrated on ARMv8
LS1012A SoC for DDR3L, there will be a update to this driver to
support more flexible configuration if new features (DDR4, multiple
controllers/chip selections, etc) are implimented in future.

Meantime, reuse common MMDC driver for LS1012ARDB/LS1012AQDS/
LS1012AFRDM.

Signed-off-by: Shengzhou Liu <Shengzhou.Liu@nxp.com>
Reviewed-by: York Sun <york.sun@nxp.com>
diff --git a/include/configs/ls1012afrdm.h b/include/configs/ls1012afrdm.h
index 19ad194..136d648 100644
--- a/include/configs/ls1012afrdm.h
+++ b/include/configs/ls1012afrdm.h
@@ -9,19 +9,33 @@
 
 #include "ls1012a_common.h"
 
+/* DDR */
 #define CONFIG_DIMM_SLOTS_PER_CTLR	1
 #define CONFIG_CHIP_SELECTS_PER_CTRL	1
 #define CONFIG_NR_DRAM_BANKS		2
 #define CONFIG_SYS_SDRAM_SIZE		0x20000000
-
-#define CONFIG_SYS_MMDC_CORE_CONTROL_1		0x04180000
-#define CONFIG_SYS_MMDC_CORE_CONTROL_2		0x84180000
-
+#define CONFIG_CHIP_SELECTS_PER_CTRL	1
 #define CONFIG_CMD_MEMINFO
 #define CONFIG_CMD_MEMTEST
 #define CONFIG_SYS_MEMTEST_START	0x80000000
 #define CONFIG_SYS_MEMTEST_END		0x9fffffff
 
+/* DDR board-specific timing parameters */
+#define CONFIG_MMDC_MDCTL	0x04180000
+#define CONFIG_MMDC_MDPDC	0x00030035
+#define CONFIG_MMDC_MDOTC	0x12554000
+#define CONFIG_MMDC_MDCFG0	0xbabf7954
+#define CONFIG_MMDC_MDCFG1	0xdb328f64
+#define CONFIG_MMDC_MDCFG2	0x01ff00db
+#define CONFIG_MMDC_MDMISC	0x00001680
+#define CONFIG_MMDC_MDREF	0x0f3c8000
+#define CONFIG_MMDC_MDRWD	0x00002000
+#define CONFIG_MMDC_MDOR	0x00bf1023
+#define CONFIG_MMDC_MDASP	0x0000003f
+#define CONFIG_MMDC_MPODTCTRL	0x0000022a
+#define CONFIG_MMDC_MPZQHWCTRL	0xa1390003
+
+
 /*
 * USB
 */