xref: /openbmc/u-boot/arch/arm/include/asm/arch-ls102xa/config.h (revision 83d290c56fab2d38cd1ab4c4cc7099559c1d5046)
1*83d290c5STom Rini /* SPDX-License-Identifier: GPL-2.0+ */
2d60a2099SWang Huan /*
3d60a2099SWang Huan  * Copyright 2014, Freescale Semiconductor
4d60a2099SWang Huan  */
5d60a2099SWang Huan 
6d60a2099SWang Huan #ifndef _ASM_ARMV7_LS102XA_CONFIG_
7d60a2099SWang Huan #define _ASM_ARMV7_LS102XA_CONFIG_
8d60a2099SWang Huan 
9d60a2099SWang Huan #define OCRAM_BASE_ADDR				0x10000000
103288628aSHongbo Zhang #define OCRAM_SIZE				0x00010000
111a2826f6SXiubo Li #define OCRAM_BASE_S_ADDR			0x10010000
121a2826f6SXiubo Li #define OCRAM_S_SIZE				0x00010000
13d60a2099SWang Huan 
14d60a2099SWang Huan #define CONFIG_SYS_IMMR				0x01000000
15306fa012Schenhui zhao #define CONFIG_SYS_DCSRBAR			0x20000000
16d60a2099SWang Huan 
178ab967b6SAlison Wang #define CONFIG_SYS_DCSR_DCFG_ADDR	(CONFIG_SYS_DCSRBAR + 0x00220000)
18295a24b3SYork Sun #define SYS_FSL_DCSR_RCPM_ADDR	(CONFIG_SYS_DCSRBAR + 0x00222000)
198ab967b6SAlison Wang 
20295a24b3SYork Sun #define SYS_FSL_GIC_ADDR			(CONFIG_SYS_IMMR + 0x00400000)
21d60a2099SWang Huan #define CONFIG_SYS_FSL_DDR_ADDR			(CONFIG_SYS_IMMR + 0x00080000)
22e87f3b30SXiubo Li #define CONFIG_SYS_FSL_CSU_ADDR                 (CONFIG_SYS_IMMR + 0x00510000)
23d60a2099SWang Huan #define CONFIG_SYS_IFC_ADDR			(CONFIG_SYS_IMMR + 0x00530000)
24d60a2099SWang Huan #define CONFIG_SYS_FSL_ESDHC_ADDR		(CONFIG_SYS_IMMR + 0x00560000)
25d60a2099SWang Huan #define CONFIG_SYS_FSL_SCFG_ADDR		(CONFIG_SYS_IMMR + 0x00570000)
264ba4a095SRuchika Gupta #define CONFIG_SYS_FSL_SEC_ADDR			(CONFIG_SYS_IMMR + 0x700000)
274ba4a095SRuchika Gupta #define CONFIG_SYS_FSL_JR0_ADDR			(CONFIG_SYS_IMMR + 0x710000)
28e04916a7Sgaurav rana #define CONFIG_SYS_SEC_MON_ADDR			(CONFIG_SYS_IMMR + 0x00e90000)
29e04916a7Sgaurav rana #define CONFIG_SYS_SFP_ADDR			(CONFIG_SYS_IMMR + 0x00e80200)
30d60a2099SWang Huan #define CONFIG_SYS_FSL_SERDES_ADDR		(CONFIG_SYS_IMMR + 0x00ea0000)
31d60a2099SWang Huan #define CONFIG_SYS_FSL_GUTS_ADDR		(CONFIG_SYS_IMMR + 0x00ee0000)
32d60a2099SWang Huan #define CONFIG_SYS_FSL_LS1_CLK_ADDR		(CONFIG_SYS_IMMR + 0x00ee1000)
33aeb901f2SHongbo Zhang #define CONFIG_SYS_FSL_RCPM_ADDR		(CONFIG_SYS_IMMR + 0x00ee2000)
34d60a2099SWang Huan #define CONFIG_SYS_NS16550_COM1			(CONFIG_SYS_IMMR + 0x011c0500)
35d60a2099SWang Huan #define CONFIG_SYS_NS16550_COM2			(CONFIG_SYS_IMMR + 0x011d0500)
36327def50SWang Huan #define CONFIG_SYS_DCU_ADDR			(CONFIG_SYS_IMMR + 0x01ce0000)
379729dc95SRajesh Bhagat #define CONFIG_SYS_XHCI_USB1_ADDR		(CONFIG_SYS_IMMR + 0x02100000)
389729dc95SRajesh Bhagat #define CONFIG_SYS_EHCI_USB1_ADDR		(CONFIG_SYS_IMMR + 0x07600000)
39d60a2099SWang Huan 
408133574eSAlison Wang #define CONFIG_SYS_FSL_SEC_OFFSET		0x00700000
41e99d7193SAlex Porosanu #define CONFIG_SYS_FSL_JR0_OFFSET		0x00710000
42d60a2099SWang Huan #define CONFIG_SYS_TSEC1_OFFSET			0x01d10000
43d60a2099SWang Huan #define CONFIG_SYS_TSEC2_OFFSET			0x01d50000
44d60a2099SWang Huan #define CONFIG_SYS_TSEC3_OFFSET			0x01d90000
45d60a2099SWang Huan #define CONFIG_SYS_MDIO1_OFFSET			0x01d24000
46d60a2099SWang Huan 
47d60a2099SWang Huan #define TSEC_BASE_ADDR	(CONFIG_SYS_IMMR + CONFIG_SYS_TSEC1_OFFSET)
48d60a2099SWang Huan #define MDIO_BASE_ADDR	(CONFIG_SYS_IMMR + CONFIG_SYS_MDIO1_OFFSET)
49d60a2099SWang Huan 
50d60a2099SWang Huan #define SCTR_BASE_ADDR				(CONFIG_SYS_IMMR + 0x01b00000)
51d60a2099SWang Huan 
52d60a2099SWang Huan #define I2C1_BASE_ADDR				(CONFIG_SYS_IMMR + 0x01180000)
53d60a2099SWang Huan #define I2C2_BASE_ADDR				(CONFIG_SYS_IMMR + 0x01190000)
54d60a2099SWang Huan #define I2C3_BASE_ADDR				(CONFIG_SYS_IMMR + 0x011a0000)
55d60a2099SWang Huan 
56d60a2099SWang Huan #define WDOG1_BASE_ADDR				(CONFIG_SYS_IMMR + 0x01ad0000)
57d60a2099SWang Huan 
58d60a2099SWang Huan #define QSPI0_BASE_ADDR				(CONFIG_SYS_IMMR + 0x00550000)
59d60a2099SWang Huan #define DSPI1_BASE_ADDR				(CONFIG_SYS_IMMR + 0x01100000)
60d60a2099SWang Huan 
61d60a2099SWang Huan #define LPUART_BASE				(CONFIG_SYS_IMMR + 0x01950000)
62d60a2099SWang Huan 
63da419027SMinghuan Lian #define CONFIG_SYS_PCIE1_ADDR			(CONFIG_SYS_IMMR + 0x2400000)
64da419027SMinghuan Lian #define CONFIG_SYS_PCIE2_ADDR			(CONFIG_SYS_IMMR + 0x2500000)
65da419027SMinghuan Lian 
66636ef956SMinghuan Lian #define CONFIG_SYS_PCIE1_PHYS_BASE		0x4000000000ULL
67636ef956SMinghuan Lian #define CONFIG_SYS_PCIE2_PHYS_BASE		0x4800000000ULL
68636ef956SMinghuan Lian #define CONFIG_SYS_PCIE1_VIRT_ADDR		0x24000000UL
69636ef956SMinghuan Lian #define CONFIG_SYS_PCIE2_VIRT_ADDR		0x34000000UL
70636ef956SMinghuan Lian #define CONFIG_SYS_PCIE_MMAP_SIZE		(192 * 1024 * 1024) /* 192M */
71636ef956SMinghuan Lian /*
72636ef956SMinghuan Lian  * TLB will map VIRT_ADDR to (PHYS_BASE + VIRT_ADDR)
73636ef956SMinghuan Lian  * So 40bit PCIe PHY addr can directly be converted to a 32bit virtual addr.
74636ef956SMinghuan Lian  */
75636ef956SMinghuan Lian #define CONFIG_SYS_PCIE1_PHYS_ADDR		(CONFIG_SYS_PCIE1_PHYS_BASE + \
76636ef956SMinghuan Lian 						 CONFIG_SYS_PCIE1_VIRT_ADDR)
77636ef956SMinghuan Lian #define CONFIG_SYS_PCIE2_PHYS_ADDR		(CONFIG_SYS_PCIE2_PHYS_BASE + \
78636ef956SMinghuan Lian 						 CONFIG_SYS_PCIE2_VIRT_ADDR)
79636ef956SMinghuan Lian 
804632ad77Stang yuantian /* SATA */
814632ad77Stang yuantian #define AHCI_BASE_ADDR				(CONFIG_SYS_IMMR + 0x02200000)
824632ad77Stang yuantian #define CONFIG_SCSI_AHCI_PLAT
834632ad77Stang yuantian #define CONFIG_SYS_SCSI_MAX_SCSI_ID		1
844632ad77Stang yuantian #define CONFIG_SYS_SCSI_MAX_LUN		1
854632ad77Stang yuantian #define CONFIG_SYS_SCSI_MAX_DEVICE		(CONFIG_SYS_SCSI_MAX_SCSI_ID * \
864632ad77Stang yuantian 						CONFIG_SYS_SCSI_MAX_LUN)
87d60a2099SWang Huan #ifdef CONFIG_DDR_SPD
88d60a2099SWang Huan #define CONFIG_VERY_BIG_RAM
89d60a2099SWang Huan #define CONFIG_SYS_LS1_DDR_BLOCK1_SIZE		((phys_size_t)2 << 30)
90d60a2099SWang Huan #define CONFIG_MAX_MEM_MAPPED			CONFIG_SYS_LS1_DDR_BLOCK1_SIZE
91d60a2099SWang Huan #endif
92d60a2099SWang Huan 
93d60a2099SWang Huan #define CONFIG_SYS_FSL_IFC_BE
94d60a2099SWang Huan #define CONFIG_SYS_FSL_ESDHC_BE
95d60a2099SWang Huan #define CONFIG_SYS_FSL_WDOG_BE
96d60a2099SWang Huan #define CONFIG_SYS_FSL_DSPI_BE
97d60a2099SWang Huan #define CONFIG_SYS_FSL_QSPI_BE
98327def50SWang Huan #define CONFIG_SYS_FSL_DCU_BE
99e04916a7Sgaurav rana #define CONFIG_SYS_FSL_SEC_MON_LE
100e04916a7Sgaurav rana #define CONFIG_SYS_FSL_SFP_VER_3_2
101e04916a7Sgaurav rana #define CONFIG_SYS_FSL_SFP_BE
102e04916a7Sgaurav rana #define CONFIG_SYS_FSL_SRK_LE
103327def50SWang Huan 
104327def50SWang Huan #define DCU_LAYER_MAX_NUM			16
105d60a2099SWang Huan 
10673fb5838SYork Sun #ifdef CONFIG_ARCH_LS1021A
1073f041f01SNikhil Badola #define CONFIG_USB_MAX_CONTROLLER_COUNT		1
108404bf454SAlex Porosanu #define CONFIG_SYS_FSL_MAX_NUM_OF_SEC		1
109d60a2099SWang Huan #else
110d60a2099SWang Huan #error SoC not defined
111d60a2099SWang Huan #endif
112d60a2099SWang Huan 
11333d2e465SAlison Wang #define FSL_IFC_COMPAT		"fsl,ifc"
114b2f3addbSAlison Wang #define FSL_QSPI_COMPAT		"fsl,ls1021a-qspi"
115b2f3addbSAlison Wang #define FSL_DSPI_COMPAT		"fsl,ls1021a-v1.0-dspi"
11633d2e465SAlison Wang 
117d60a2099SWang Huan #endif /* _ASM_ARMV7_LS102XA_CONFIG_ */
118