summaryrefslogtreecommitdiffstats
path: root/plat/nxp/soc-ls1046a/soc.def
blob: e6b37c0505b9b2a39efc7b575f5a9cfe8425a489 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
#
# Copyright 2022 NXP
#
# SPDX-License-Identifier: BSD-3-Clause
#
#
#------------------------------------------------------------------------------
#
# This file contains the basic architecture definitions that drive the build
#
# -----------------------------------------------------------------------------

CORE_TYPE	:=	a72

CACHE_LINE	:=	6

# set to GIC400 or GIC500
GIC		:=	GIC400

# set to CCI400 or CCN504 or CCN508
INTERCONNECT	:=	CCI400

# indicate layerscape chassis level - set to 3=LSCH3 or 2=LSCH2
CHASSIS		:=	2

# TZC IP Details TZC used is TZC380 or TZC400
TZC_ID		:=	TZC400

# CONSOLE Details available is NS16550 or PL011
CONSOLE		:=	NS16550

 # Select the DDR PHY generation to be used
PLAT_DDR_PHY	:=      PHY_GEN1

PHYS_SYS	:=	64

# ddr controller - set to MMDC or NXP
DDRCNTLR	:=	NXP

# ddr phy - set to NXP or SNPS
DDRPHY		:=	NXP

# Area of OCRAM reserved by ROM code
NXP_ROM_RSVD	:= 0x5900

# Max Size of CSF header. Required to define BL2 TEXT LIMIT in soc.def
# Input to CST create_hdr_esbc tool
CSF_HDR_SZ	:= 0x3000

# In IMAGE_BL2, compile time flag for handling Cache coherency
# with CAAM for BL2 running from OCRAM
SEC_MEM_NON_COHERENT	:= yes

# OCRAM MAP
OCRAM_START_ADDR	:=	0x10000000
OCRAM_SIZE		:=	0x20000

# BL2 binary is placed at  start of OCRAM.
# Also used by create_pbl.mk.
BL2_BASE		:=	0x10000000

# After BL2 bin, OCRAM is used by ROM Code:
# (OCRAM_START_ADDR + BL2_BIN_SIZE) ->  (NXP_ROM_RSVD - 1)

# After ROM Code, OCRAM is used by CSF header.
# (OCRAM_START_ADDR + BL2_TEXT_LIMIT + NXP_ROM_RSVD) -> (CSF_HDR_SZ - 1)

# BL2_HDR_LOC has to be (OCRAM_START_ADDR + OCRAM_SIZE - NXP_ROM_RSVD - CSF_HDR_SZ)
# This value should be greater than BL2_TEXT_LIMIT
# Input to CST create_hdr_isbc tool
BL2_HDR_LOC_HDR		?=	$(shell echo $$(( $(OCRAM_START_ADDR) + $(OCRAM_SIZE) - $(NXP_ROM_RSVD) - $(CSF_HDR_SZ))))
# Covert to HEX to be used by create_pbl.mk
BL2_HDR_LOC		:=	$$(echo "obase=16; ${BL2_HDR_LOC_HDR}" | bc)

# Core Errata
ERRATA_A72_859971	:=	1

# SoC ERRATAS
ERRATA_SOC_A008850	:=      1
ERRATA_SOC_A010539	:= 	1

# DDR Errata
ERRATA_DDR_A008511	:=	1
ERRATA_DDR_A009803	:=	1
ERRATA_DDR_A009942	:=	1
ERRATA_DDR_A010165	:=	1

# enable dynamic memory mapping
PLAT_XLAT_TABLES_DYNAMIC :=	1

# Define Endianness of each module
NXP_GUR_ENDIANNESS	:=	BE
NXP_DDR_ENDIANNESS	:=	BE
NXP_SEC_ENDIANNESS	:=	BE
NXP_SFP_ENDIANNESS	:=	BE
NXP_SNVS_ENDIANNESS	:=	BE
NXP_ESDHC_ENDIANNESS	:=	BE
NXP_QSPI_ENDIANNESS	:=	BE
NXP_FSPI_ENDIANNESS	:=	BE
NXP_SCFG_ENDIANNESS	:=	BE
NXP_GPIO_ENDIANNESS	:=	BE
NXP_IFC_ENDIANNESS	:=	BE

NXP_SFP_VER		:= 3_2

# OCRAM ECC Enabled
OCRAM_ECC_EN		:=	yes