blob: 56d8f3247f54a16707a591583e8d7e645c7aeabf [file] [log] [blame]
Wang Huan8ce6bec2014-09-05 13:52:34 +08001/*
2 * Copyright 2014, Freescale Semiconductor
3 *
4 * SPDX-License-Identifier: GPL-2.0+
5 */
6
7#ifndef _ASM_ARMV7_LS102XA_CONFIG_
8#define _ASM_ARMV7_LS102XA_CONFIG_
9
Wang Huan8ce6bec2014-09-05 13:52:34 +080010#define OCRAM_BASE_ADDR 0x10000000
Hongbo Zhang912b3812016-07-21 18:09:39 +080011#define OCRAM_SIZE 0x00010000
Xiubo Li563e3ce2014-11-21 17:40:57 +080012#define OCRAM_BASE_S_ADDR 0x10010000
13#define OCRAM_S_SIZE 0x00010000
Wang Huan8ce6bec2014-09-05 13:52:34 +080014
15#define CONFIG_SYS_IMMR 0x01000000
chenhui zhao0c789872014-10-22 18:20:22 +080016#define CONFIG_SYS_DCSRBAR 0x20000000
Wang Huan8ce6bec2014-09-05 13:52:34 +080017
Alison Wangab98bb52014-12-09 17:38:14 +080018#define CONFIG_SYS_DCSR_DCFG_ADDR (CONFIG_SYS_DCSRBAR + 0x00220000)
19
Wang Huan8ce6bec2014-09-05 13:52:34 +080020#define CONFIG_SYS_FSL_DDR_ADDR (CONFIG_SYS_IMMR + 0x00080000)
21#define CONFIG_SYS_CCI400_ADDR (CONFIG_SYS_IMMR + 0x00180000)
Xiubo Li54de0652014-11-21 17:40:58 +080022#define CONFIG_SYS_FSL_CSU_ADDR (CONFIG_SYS_IMMR + 0x00510000)
Wang Huan8ce6bec2014-09-05 13:52:34 +080023#define CONFIG_SYS_IFC_ADDR (CONFIG_SYS_IMMR + 0x00530000)
24#define CONFIG_SYS_FSL_ESDHC_ADDR (CONFIG_SYS_IMMR + 0x00560000)
25#define CONFIG_SYS_FSL_SCFG_ADDR (CONFIG_SYS_IMMR + 0x00570000)
Ruchika Gupta901ae762014-10-15 11:39:06 +053026#define CONFIG_SYS_FSL_SEC_ADDR (CONFIG_SYS_IMMR + 0x700000)
27#define CONFIG_SYS_FSL_JR0_ADDR (CONFIG_SYS_IMMR + 0x710000)
gaurav rana8b5ea652015-02-27 09:46:17 +053028#define CONFIG_SYS_SEC_MON_ADDR (CONFIG_SYS_IMMR + 0x00e90000)
29#define CONFIG_SYS_SFP_ADDR (CONFIG_SYS_IMMR + 0x00e80200)
Wang Huan8ce6bec2014-09-05 13:52:34 +080030#define CONFIG_SYS_FSL_SERDES_ADDR (CONFIG_SYS_IMMR + 0x00ea0000)
31#define CONFIG_SYS_FSL_GUTS_ADDR (CONFIG_SYS_IMMR + 0x00ee0000)
32#define CONFIG_SYS_FSL_LS1_CLK_ADDR (CONFIG_SYS_IMMR + 0x00ee1000)
Hongbo Zhang4f6e6102016-07-21 18:09:38 +080033#define CONFIG_SYS_FSL_RCPM_ADDR (CONFIG_SYS_IMMR + 0x00ee2000)
Wang Huan8ce6bec2014-09-05 13:52:34 +080034#define CONFIG_SYS_NS16550_COM1 (CONFIG_SYS_IMMR + 0x011c0500)
35#define CONFIG_SYS_NS16550_COM2 (CONFIG_SYS_IMMR + 0x011d0500)
Wang Huan4779d4a2014-09-05 13:52:48 +080036#define CONFIG_SYS_DCU_ADDR (CONFIG_SYS_IMMR + 0x01ce0000)
Rajesh Bhagat386f2e42016-06-07 18:59:34 +053037#define CONFIG_SYS_XHCI_USB1_ADDR (CONFIG_SYS_IMMR + 0x02100000)
38#define CONFIG_SYS_EHCI_USB1_ADDR (CONFIG_SYS_IMMR + 0x07600000)
Wang Huan8ce6bec2014-09-05 13:52:34 +080039
Alison Wanga825bb32015-01-16 17:21:34 +080040#define CONFIG_SYS_FSL_SEC_OFFSET 0x00700000
Alex Porosanu177fca82016-04-29 15:17:58 +030041#define CONFIG_SYS_FSL_JR0_OFFSET 0x00710000
Wang Huan8ce6bec2014-09-05 13:52:34 +080042#define CONFIG_SYS_TSEC1_OFFSET 0x01d10000
43#define CONFIG_SYS_TSEC2_OFFSET 0x01d50000
44#define CONFIG_SYS_TSEC3_OFFSET 0x01d90000
45#define CONFIG_SYS_MDIO1_OFFSET 0x01d24000
46
47#define TSEC_BASE_ADDR (CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET)
48#define MDIO_BASE_ADDR (CONFIG_SYS_IMMR + CONFIG_SYS_MDIO1_OFFSET)
49
50#define SCTR_BASE_ADDR (CONFIG_SYS_IMMR + 0x01b00000)
51
52#define I2C1_BASE_ADDR (CONFIG_SYS_IMMR + 0x01180000)
53#define I2C2_BASE_ADDR (CONFIG_SYS_IMMR + 0x01190000)
54#define I2C3_BASE_ADDR (CONFIG_SYS_IMMR + 0x011a0000)
55
56#define WDOG1_BASE_ADDR (CONFIG_SYS_IMMR + 0x01ad0000)
57
58#define QSPI0_BASE_ADDR (CONFIG_SYS_IMMR + 0x00550000)
59#define DSPI1_BASE_ADDR (CONFIG_SYS_IMMR + 0x01100000)
60
61#define LPUART_BASE (CONFIG_SYS_IMMR + 0x01950000)
62
Minghuan Liana4d6b612014-10-31 13:43:44 +080063#define CONFIG_SYS_PCIE1_ADDR (CONFIG_SYS_IMMR + 0x2400000)
64#define CONFIG_SYS_PCIE2_ADDR (CONFIG_SYS_IMMR + 0x2500000)
65
Minghuan Lian6c9afed2015-01-21 17:29:17 +080066#define CONFIG_SYS_PCIE1_PHYS_BASE 0x4000000000ULL
67#define CONFIG_SYS_PCIE2_PHYS_BASE 0x4800000000ULL
68#define CONFIG_SYS_PCIE1_VIRT_ADDR 0x24000000UL
69#define CONFIG_SYS_PCIE2_VIRT_ADDR 0x34000000UL
70#define CONFIG_SYS_PCIE_MMAP_SIZE (192 * 1024 * 1024) /* 192M */
71/*
72 * TLB will map VIRT_ADDR to (PHYS_BASE + VIRT_ADDR)
73 * So 40bit PCIe PHY addr can directly be converted to a 32bit virtual addr.
74 */
75#define CONFIG_SYS_PCIE1_PHYS_ADDR (CONFIG_SYS_PCIE1_PHYS_BASE + \
76 CONFIG_SYS_PCIE1_VIRT_ADDR)
77#define CONFIG_SYS_PCIE2_PHYS_ADDR (CONFIG_SYS_PCIE2_PHYS_BASE + \
78 CONFIG_SYS_PCIE2_VIRT_ADDR)
79
tang yuantian9f51db22015-10-16 16:06:05 +080080/* SATA */
81#define AHCI_BASE_ADDR (CONFIG_SYS_IMMR + 0x02200000)
82#define CONFIG_BOARD_LATE_INIT
Simon Glass8706b812016-05-01 11:36:02 -060083#define CONFIG_SCSI
tang yuantian9f51db22015-10-16 16:06:05 +080084#define CONFIG_LIBATA
85#define CONFIG_SCSI_AHCI
86#define CONFIG_SCSI_AHCI_PLAT
87#define CONFIG_SYS_SCSI_MAX_SCSI_ID 1
88#define CONFIG_SYS_SCSI_MAX_LUN 1
89#define CONFIG_SYS_SCSI_MAX_DEVICE (CONFIG_SYS_SCSI_MAX_SCSI_ID * \
90 CONFIG_SYS_SCSI_MAX_LUN)
tang yuantian9f51db22015-10-16 16:06:05 +080091#define CONFIG_DOS_PARTITION
92#define CONFIG_SYS_FSL_ERRATUM_A008407
93
Wang Huan8ce6bec2014-09-05 13:52:34 +080094#ifdef CONFIG_DDR_SPD
95#define CONFIG_SYS_FSL_DDR_BE
96#define CONFIG_VERY_BIG_RAM
York Sunba3c0802014-09-11 13:32:07 -070097#ifdef CONFIG_SYS_FSL_DDR4
98#define CONFIG_SYS_FSL_DDRC_GEN4
99#else
Wang Huan8ce6bec2014-09-05 13:52:34 +0800100#define CONFIG_SYS_FSL_DDRC_ARM_GEN3
York Sunba3c0802014-09-11 13:32:07 -0700101#endif
Wang Huan8ce6bec2014-09-05 13:52:34 +0800102#define CONFIG_SYS_FSL_DDR
103#define CONFIG_SYS_LS1_DDR_BLOCK1_SIZE ((phys_size_t)2 << 30)
104#define CONFIG_MAX_MEM_MAPPED CONFIG_SYS_LS1_DDR_BLOCK1_SIZE
105#endif
106
107#define CONFIG_SYS_FSL_IFC_BE
108#define CONFIG_SYS_FSL_ESDHC_BE
109#define CONFIG_SYS_FSL_WDOG_BE
110#define CONFIG_SYS_FSL_DSPI_BE
111#define CONFIG_SYS_FSL_QSPI_BE
Wang Huan4779d4a2014-09-05 13:52:48 +0800112#define CONFIG_SYS_FSL_DCU_BE
gaurav rana8b5ea652015-02-27 09:46:17 +0530113#define CONFIG_SYS_FSL_SEC_MON_LE
Ruchika Gupta901ae762014-10-15 11:39:06 +0530114#define CONFIG_SYS_FSL_SEC_LE
gaurav rana8b5ea652015-02-27 09:46:17 +0530115#define CONFIG_SYS_FSL_SFP_VER_3_2
116#define CONFIG_SYS_FSL_SFP_BE
117#define CONFIG_SYS_FSL_SRK_LE
Wang Huan4779d4a2014-09-05 13:52:48 +0800118
119#define DCU_LAYER_MAX_NUM 16
Wang Huan8ce6bec2014-09-05 13:52:34 +0800120
121#define CONFIG_SYS_FSL_SRDS_1
122
123#ifdef CONFIG_LS102XA
124#define CONFIG_MAX_CPUS 2
125#define CONFIG_SYS_FSL_IFC_BANK_COUNT 8
126#define CONFIG_NUM_DDR_CONTROLLERS 1
York Sunba3c0802014-09-11 13:32:07 -0700127#define CONFIG_SYS_FSL_DDR_VER FSL_DDR_VER_5_0
Ruchika Gupta901ae762014-10-15 11:39:06 +0530128#define CONFIG_SYS_FSL_SEC_COMPAT 5
Nikhil Badolad3d6e702014-10-17 11:35:46 +0530129#define CONFIG_USB_MAX_CONTROLLER_COUNT 1
York Sun70acb342014-12-08 15:30:55 -0800130#define CONFIG_SYS_FSL_ERRATUM_A008378
Shengzhou Liubdda96c2015-12-16 16:45:41 +0800131#define CONFIG_SYS_FSL_ERRATUM_A009663
Alex Porosanub4848d02016-04-29 15:17:59 +0300132#define CONFIG_SYS_FSL_MAX_NUM_OF_SEC 1
Wang Huan8ce6bec2014-09-05 13:52:34 +0800133#else
134#error SoC not defined
135#endif
136
Alison Wang92fc30d2014-12-26 13:14:01 +0800137#define FSL_IFC_COMPAT "fsl,ifc"
Alison Wang88a931f2016-02-29 14:50:20 +0800138#define FSL_QSPI_COMPAT "fsl,ls1021a-qspi"
139#define FSL_DSPI_COMPAT "fsl,ls1021a-v1.0-dspi"
Alison Wang92fc30d2014-12-26 13:14:01 +0800140
Wang Huan8ce6bec2014-09-05 13:52:34 +0800141#endif /* _ASM_ARMV7_LS102XA_CONFIG_ */