aboutsummaryrefslogtreecommitdiff
path: root/src/soc/nvidia/tegra210/romstage.c
diff options
context:
space:
mode:
authorTom Warren <twarren@nvidia.com>2015-08-03 14:58:11 -0700
committerPatrick Georgi <pgeorgi@google.com>2015-08-28 06:40:08 +0000
commit0bdb88b106ec65e3d1296d61545e09ecdab0794f (patch)
tree614cf5525dc17f6a36ed5abeffc6d81bb0d621f4 /src/soc/nvidia/tegra210/romstage.c
parent84fb0bfdbbfc298849bb246c1b192505f5aca10d (diff)
Smaug: Add NVDEC and TSEC carveouts
The NV security team requested that coreboot allocate the NVDEC and TSEC carveouts. Added code to set up NVDEC (1 region, 1MB) and TSEC (2 regions, splitting 2MB), and set their lock bits. Kernel/trusted code should be able to use the regions now. Note that this change sets the UNLOCKED bit in Carveout1Cfg0 and Carveout4Cfg0/5Cfg0 (bit 1) to 0 in the BCT .inc files (both 3GB and 4GB BCTs) so that the BOMs can be written. Any future revisions to these BCT files should take this into account. BUG=None BRANCH=None TEST=Built and booted on my P5 A44. Saw the carveout regions in the boot spew, and CBMEM living just below the last region (TSEC). Dumped the MC GeneralizedCarveoutX registers and verified their values (same as BCT, with only BOM/CFG0 changed). Signed-off-by: Patrick Georgi <patrick@georgi-clan.de> Original-Commit-Id: a34b0772cd721193640b322768ce5fcbb4624f23 Original-Change-Id: I2abc872fa1cc4ea669409ffc9f2e66dbbc4efcd0 Original-Signed-off-by: Tom Warren <twarren@nvidia.com> Original-Reviewed-on: https://chromium-review.googlesource.com/290452 Original-Reviewed-by: Furquan Shaikh <furquan@chromium.org> Original-(cherry picked from commit f3bbf25397db4d17044e9cfd135ecf73df0ffa60) Original-Reviewed-on: https://chromium-review.googlesource.com/291081 Original-Commit-Queue: Furquan Shaikh <furquan@chromium.org> Original-Trybot-Ready: Furquan Shaikh <furquan@chromium.org> Original-Tested-by: Furquan Shaikh <furquan@chromium.org> Change-Id: I924dfdae7b7c9b877cb1c93fd94f0ef98b728ac5 Reviewed-on: http://review.coreboot.org/11381 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/soc/nvidia/tegra210/romstage.c')
-rw-r--r--src/soc/nvidia/tegra210/romstage.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/src/soc/nvidia/tegra210/romstage.c b/src/soc/nvidia/tegra210/romstage.c
index c029e937b3..d8d191bbd1 100644
--- a/src/soc/nvidia/tegra210/romstage.c
+++ b/src/soc/nvidia/tegra210/romstage.c
@@ -67,7 +67,10 @@ void romstage(void)
*/
trustzone_region_init();
+ /* Now do various other carveouts */
gpu_region_init();
+ nvdec_region_init();
+ tsec_region_init();
/*
* When romstage is running it's always on the reboot path -- never a