mirror of
https://github.com/brain-hackers/u-boot-brain
synced 2024-09-11 07:13:21 +09:00
![Shengzhou Liu](/assets/img/avatar_default.png)
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>
116 lines
3.0 KiB
C
116 lines
3.0 KiB
C
/*
|
|
* Copyright 2016 Freescale Semiconductor, Inc.
|
|
*
|
|
* SPDX-License-Identifier: GPL-2.0+
|
|
*/
|
|
|
|
#ifndef __LS1012ARDB_H__
|
|
#define __LS1012ARDB_H__
|
|
|
|
#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 0x40000000
|
|
#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 0x05180000
|
|
#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
|
|
*/
|
|
#define CONFIG_HAS_FSL_XHCI_USB
|
|
|
|
#ifdef CONFIG_HAS_FSL_XHCI_USB
|
|
#define CONFIG_USB_XHCI_FSL
|
|
#define CONFIG_USB_MAX_CONTROLLER_COUNT 1
|
|
#define CONFIG_SYS_USB_XHCI_MAX_ROOT_PORTS 2
|
|
#endif
|
|
|
|
/*
|
|
* I2C IO expander
|
|
*/
|
|
|
|
#define I2C_MUX_IO1_ADDR 0x24
|
|
#define __SW_BOOT_MASK 0xFC
|
|
#define __SW_BOOT_EMU 0x10
|
|
#define __SW_BOOT_BANK1 0x00
|
|
#define __SW_BOOT_BANK2 0x01
|
|
#define __SW_REV_MASK 0x07
|
|
#define __SW_REV_A 0xF8
|
|
#define __SW_REV_B 0xF0
|
|
|
|
/* MMC */
|
|
#define CONFIG_MMC
|
|
#ifdef CONFIG_MMC
|
|
#define CONFIG_FSL_ESDHC
|
|
#define CONFIG_SYS_FSL_MMC_HAS_CAPBLT_VS33
|
|
#define CONFIG_GENERIC_MMC
|
|
#define CONFIG_DOS_PARTITION
|
|
#endif
|
|
|
|
/* SATA */
|
|
#define CONFIG_LIBATA
|
|
#define CONFIG_SCSI
|
|
#define CONFIG_SCSI_AHCI
|
|
#define CONFIG_SCSI_AHCI_PLAT
|
|
#define CONFIG_CMD_SCSI
|
|
#define CONFIG_DOS_PARTITION
|
|
#define CONFIG_BOARD_LATE_INIT
|
|
|
|
#define CONFIG_SYS_SATA AHCI_BASE_ADDR
|
|
|
|
#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1
|
|
#define CONFIG_SYS_SCSI_MAX_LUN 1
|
|
#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
|
|
CONFIG_SYS_SCSI_MAX_LUN)
|
|
#define CONFIG_PCI /* Enable PCI/PCIE */
|
|
#define CONFIG_PCIE1 /* PCIE controller 1 */
|
|
#define CONFIG_PCIE_LAYERSCAPE /* Use common FSL Layerscape PCIe code */
|
|
#define FSL_PCIE_COMPAT "fsl,ls1043a-pcie"
|
|
|
|
#define CONFIG_SYS_PCI_64BIT
|
|
|
|
#define CONFIG_SYS_PCIE_CFG0_PHYS_OFF 0x00000000
|
|
#define CONFIG_SYS_PCIE_CFG0_SIZE 0x00001000 /* 4k */
|
|
#define CONFIG_SYS_PCIE_CFG1_PHYS_OFF 0x00001000
|
|
#define CONFIG_SYS_PCIE_CFG1_SIZE 0x00001000 /* 4k */
|
|
|
|
#define CONFIG_SYS_PCIE_IO_BUS 0x00000000
|
|
#define CONFIG_SYS_PCIE_IO_PHYS_OFF 0x00010000
|
|
#define CONFIG_SYS_PCIE_IO_SIZE 0x00010000 /* 64k */
|
|
|
|
#define CONFIG_SYS_PCIE_MEM_BUS 0x08000000
|
|
#define CONFIG_SYS_PCIE_MEM_PHYS_OFF 0x04000000
|
|
#define CONFIG_SYS_PCIE_MEM_SIZE 0x80000000 /* 128M */
|
|
|
|
#define CONFIG_NET_MULTI
|
|
#define CONFIG_PCI_PNP
|
|
#define CONFIG_PCI_SCAN_SHOW
|
|
#define CONFIG_CMD_PCI
|
|
|
|
#define CONFIG_CMD_MEMINFO
|
|
#define CONFIG_CMD_MEMTEST
|
|
#define CONFIG_SYS_MEMTEST_START 0x80000000
|
|
#define CONFIG_SYS_MEMTEST_END 0x9fffffff
|
|
|
|
#endif /* __LS1012ARDB_H__ */
|