soc.def 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107
  1. #
  2. # Copyright 2017-2021 NXP
  3. #
  4. # SPDX-License-Identifier: BSD-3-Clause
  5. #
  6. #
  7. #------------------------------------------------------------------------------
  8. #
  9. # This file contains the basic architecture definitions that drive the build
  10. #
  11. # -----------------------------------------------------------------------------
  12. CORE_TYPE := a53
  13. CACHE_LINE := 6
  14. # set to GIC400 or GIC500
  15. GIC := GIC400
  16. # set to CCI400 or CCN504 or CCN508
  17. INTERCONNECT := CCI400
  18. # indicate layerscape chassis level - set to 3=LSCH3 or 2=LSCH2
  19. CHASSIS := 2
  20. # TZC IP Details TZC used is TZC380 or TZC400
  21. TZC_ID := TZC380
  22. # CONSOLE Details available is NS16550 or PL011
  23. CONSOLE := NS16550
  24. # Select the DDR PHY generation to be used
  25. PLAT_DDR_PHY := PHY_GEN1
  26. PHYS_SYS := 64
  27. # ddr controller - set to MMDC or NXP
  28. DDRCNTLR := NXP
  29. # ddr phy - set to NXP or SNPS
  30. DDRPHY := NXP
  31. # Area of OCRAM reserved by ROM code
  32. NXP_ROM_RSVD := 0x5900
  33. # Max Size of CSF header. Required to define BL2 TEXT LIMIT in soc.def
  34. # Input to CST create_hdr_esbc tool
  35. CSF_HDR_SZ := 0x3000
  36. # In IMAGE_BL2, compile time flag for handling Cache coherency
  37. # with CAAM for BL2 running from OCRAM
  38. SEC_MEM_NON_COHERENT := yes
  39. # OCRAM MAP
  40. OCRAM_START_ADDR := 0x10000000
  41. OCRAM_SIZE := 0x20000
  42. # BL2 binary is placed at start of OCRAM.
  43. # Also used by create_pbl.mk.
  44. BL2_BASE := 0x10000000
  45. # After BL2 bin, OCRAM is used by ROM Code:
  46. # (OCRAM_START_ADDR + BL2_BIN_SIZE) -> (NXP_ROM_RSVD - 1)
  47. # After ROM Code, OCRAM is used by CSF header.
  48. # (OCRAM_START_ADDR + BL2_TEXT_LIMIT + NXP_ROM_RSVD) -> (CSF_HDR_SZ - 1)
  49. # BL2_HDR_LOC has to be (OCRAM_START_ADDR + OCRAM_SIZE - NXP_ROM_RSVD - CSF_HDR_SZ)
  50. # This value should be greater than BL2_TEXT_LIMIT
  51. # Input to CST create_hdr_isbc tool
  52. BL2_HDR_LOC_HDR ?= $(shell echo $$(( $(OCRAM_START_ADDR) + $(OCRAM_SIZE) - $(NXP_ROM_RSVD) - $(CSF_HDR_SZ))))
  53. # Covert to HEX to be used by create_pbl.mk
  54. BL2_HDR_LOC := $$(echo "obase=16; ${BL2_HDR_LOC_HDR}" | bc)
  55. # Core Errata
  56. ERRATA_A53_855873 := 1
  57. ERRATA_A53_1530924 := 1
  58. # SoC ERRATAS to be enabled
  59. ERRATA_SOC_A008850 := 1
  60. ERRATA_SOC_A010539 := 1
  61. ERRATA_SOC_A009660 := 1
  62. # DDR Errata
  63. ERRATA_DDR_A009663 := 1
  64. ERRATA_DDR_A009942 := 1
  65. # enable dynamic memory mapping
  66. PLAT_XLAT_TABLES_DYNAMIC := 1
  67. # Define Endianness of each module
  68. NXP_GUR_ENDIANNESS := BE
  69. NXP_DDR_ENDIANNESS := BE
  70. NXP_SEC_ENDIANNESS := BE
  71. NXP_SFP_ENDIANNESS := BE
  72. NXP_SNVS_ENDIANNESS := BE
  73. NXP_ESDHC_ENDIANNESS := BE
  74. NXP_QSPI_ENDIANNESS := BE
  75. NXP_FSPI_ENDIANNESS := BE
  76. NXP_SCFG_ENDIANNESS := BE
  77. NXP_GPIO_ENDIANNESS := BE
  78. NXP_IFC_ENDIANNESS := BE
  79. NXP_SFP_VER := 3_2
  80. # OCRAM ECC Enabled
  81. OCRAM_ECC_EN := yes