feat(plat/arm): improve dram bank lookup
Next generation neoverse reference designs, such as RD-V3, can have
more than two non-contiguous DRAM banks. On such platforms, these
banks are spread across the system memory map.
This change modifies the common platform granule handlers to more
efficiently translate address-to-index and index-to-address on
platforms with a large number of DRAM banks. To support this arm
platforms have now have a common config option to select the
maximum number of DRAM banks - PLAT_ARM_MAX_DRAM_BANKS.
Change-Id: I6d5b02f8d3052d6b189f21ef48d1f684acb63b86
Signed-off-by: Harry Moulton <harry.moulton@arm.com>
Signed-off-by: Vivek Gautam <vivek.gautam@arm.com>
diff --git a/docs/getting_started/build-options.rst b/docs/getting_started/build-options.rst
index 4718195..42c798d 100644
--- a/docs/getting_started/build-options.rst
+++ b/docs/getting_started/build-options.rst
@@ -291,7 +291,8 @@
RMM_CBMC_VIEWER_OUTPUT ,ON | OFF ,OFF ,"Generate report of CBMC results using the tool cbmc-viewer"
RMM_CBMC_SINGLE_TESTBENCH , ,OFF ,"Run CBMC on a single testbench instead on all of them"
RMM_CCA_DA ,ON | OFF ,OFF ,"Enable Device Assignment support in RMM (experimental)"
- ATTEST_PLAT_TOKEN_SIZE , ,0x1000 ,"Maximum size in bytes expected for the Attestation platform token"
+ ATTEST_PLAT_TOKEN_SIZE , ,0x1000 ,"Maximum size in bytes expected for the Attestation platform token"
+ PLAT_ARM_MAX_DRAM_BANKS , ,2 ,"Maximum number of DRAM banks allowed in Arm platform layer"
.. _llvm_build: