[sw/silicon_creator] Move chip-level constants to chip.h
This commit moves chip-level constants from manifest.h and
manifest_size.h to chip.h and removes manifest_size.h
Fixes #9045
Signed-off-by: Alphan Ulusoy <alphan@google.com>
diff --git a/sw/device/lib/testing/test_rom/BUILD b/sw/device/lib/testing/test_rom/BUILD
index f163411..bea9ccc 100644
--- a/sw/device/lib/testing/test_rom/BUILD
+++ b/sw/device/lib/testing/test_rom/BUILD
@@ -94,7 +94,7 @@
"//sw/device/silicon_creator/lib:epmp",
"//sw/device/silicon_creator/lib:error",
"//sw/device/silicon_creator/lib:keymgr_binding",
- "//sw/device/silicon_creator/lib:manifest_size",
+ "//sw/device/silicon_creator/lib/base:chip",
"//sw/device/silicon_creator/lib/base:sec_mmio",
"//sw/device/silicon_creator/lib/sigverify:rsa_key",
],
diff --git a/sw/device/silicon_creator/lib/BUILD b/sw/device/silicon_creator/lib/BUILD
index 0b75b45..cd5d1bd 100644
--- a/sw/device/silicon_creator/lib/BUILD
+++ b/sw/device/silicon_creator/lib/BUILD
@@ -191,11 +191,6 @@
],
)
-cc_library(
- name = "manifest_size",
- hdrs = ["manifest_size.h"],
-)
-
dual_cc_library(
name = "manifest",
srcs = dual_inputs(
@@ -219,10 +214,10 @@
":epmp",
":error",
":keymgr_binding",
- ":manifest_size",
"//sw/device/lib/base:macros",
"//sw/device/silicon_creator/lib/drivers:lifecycle",
"//sw/device/silicon_creator/lib/sigverify:rsa_key",
+ "//sw/device/silicon_creator/lib/base:chip",
],
),
)
diff --git a/sw/device/silicon_creator/lib/base/BUILD b/sw/device/silicon_creator/lib/base/BUILD
index 4e4c390..8d16117 100644
--- a/sw/device/silicon_creator/lib/base/BUILD
+++ b/sw/device/silicon_creator/lib/base/BUILD
@@ -81,3 +81,8 @@
name = "static_critical_sections",
fragments = ["static_critical.ld"],
)
+
+cc_library(
+ name = "chip",
+ hdrs = ["chip.h"],
+)
diff --git a/sw/device/silicon_creator/lib/base/chip.h b/sw/device/silicon_creator/lib/base/chip.h
new file mode 100644
index 0000000..9ffaab7
--- /dev/null
+++ b/sw/device/silicon_creator/lib/base/chip.h
@@ -0,0 +1,40 @@
+// Copyright lowRISC contributors.
+// Licensed under the Apache License, Version 2.0, see LICENSE for details.
+// SPDX-License-Identifier: Apache-2.0
+
+#ifndef OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_BASE_CHIP_H_
+#define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_BASE_CHIP_H_
+
+/**
+ * @file
+ * @brief Chip-level constants.
+ */
+
+/**
+ * Manifest size for boot stages stored in flash (in bytes).
+ */
+#define MANIFEST_SIZE 896
+
+/**
+ * ROM_EXT manifest identifier (ASCII "OTRE").
+ */
+#define MANIFEST_IDENTIFIER_ROM_EXT 0x4552544f
+
+/**
+ * Allowed bounds for the `length` field of a ROM_EXT manifest.
+ */
+#define MANIFEST_LENGTH_FIELD_ROM_EXT_MIN MANIFEST_SIZE
+#define MANIFEST_LENGTH_FIELD_ROM_EXT_MAX 0x10000
+
+/**
+ * First owner boot stage manifest identifier (ASCII "OTSO").
+ */
+#define MANIFEST_IDENTIFIER_OWNER_STAGE 0x4f53544f
+
+/**
+ * Allowed bounds for the `length` field of a first owner boot stage manifest.
+ */
+#define MANIFEST_LENGTH_FIELD_OWNER_STAGE_MIN MANIFEST_SIZE
+#define MANIFEST_LENGTH_FIELD_OWNER_STAGE_MAX 0x70000
+
+#endif // OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_BASE_CHIP_H_
diff --git a/sw/device/silicon_creator/lib/manifest.c b/sw/device/silicon_creator/lib/manifest.c
index c1b90b9..77d8583 100644
--- a/sw/device/silicon_creator/lib/manifest.c
+++ b/sw/device/silicon_creator/lib/manifest.c
@@ -4,6 +4,8 @@
#include "sw/device/silicon_creator/lib/manifest.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
+
#include "hw/top_earlgrey/sw/autogen/top_earlgrey.h"
static_assert(MANIFEST_LENGTH_FIELD_ROM_EXT_MIN >= MANIFEST_SIZE,
diff --git a/sw/device/silicon_creator/lib/manifest.h b/sw/device/silicon_creator/lib/manifest.h
index 6d430f0..6f167b7 100644
--- a/sw/device/silicon_creator/lib/manifest.h
+++ b/sw/device/silicon_creator/lib/manifest.h
@@ -8,11 +8,11 @@
#include <stddef.h>
#include "sw/device/lib/base/macros.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
#include "sw/device/silicon_creator/lib/drivers/lifecycle.h"
#include "sw/device/silicon_creator/lib/epmp.h"
#include "sw/device/silicon_creator/lib/error.h"
#include "sw/device/silicon_creator/lib/keymgr_binding_value.h"
-#include "sw/device/silicon_creator/lib/manifest_size.h"
#include "sw/device/silicon_creator/lib/sigverify/rsa_key.h"
#ifdef __cplusplus
@@ -242,29 +242,6 @@
size_t length;
} manifest_digest_region_t;
-/**
- * ROM_EXT manifest identifier (ASCII "OTRE").
- */
-#define MANIFEST_IDENTIFIER_ROM_EXT 0x4552544f
-
-/**
- * First owner boot stage manifest identifier (ASCII "OTSO").
- */
-#define MANIFEST_IDENTIFIER_OWNER_STAGE 0x4f53544f
-
-/**
- * Allowed bounds for the `length` field of a ROM_EXT manifest.
- */
-// TODO(#9045): Move ROM_EXT size to a common location.
-#define MANIFEST_LENGTH_FIELD_ROM_EXT_MIN MANIFEST_SIZE
-#define MANIFEST_LENGTH_FIELD_ROM_EXT_MAX 0x10000
-
-/**
- * Allowed bounds for the `length` field of a first owner boot stage manifest.
- */
-#define MANIFEST_LENGTH_FIELD_OWNER_STAGE_MIN MANIFEST_SIZE
-#define MANIFEST_LENGTH_FIELD_OWNER_STAGE_MAX 0x70000
-
#if defined(OT_PLATFORM_RV32) || defined(MANIFEST_UNIT_TEST_)
/**
* Checks the fields of a manifest.
diff --git a/sw/device/silicon_creator/lib/manifest_size.h b/sw/device/silicon_creator/lib/manifest_size.h
deleted file mode 100644
index 89db79f..0000000
--- a/sw/device/silicon_creator/lib/manifest_size.h
+++ /dev/null
@@ -1,13 +0,0 @@
-// Copyright lowRISC contributors.
-// Licensed under the Apache License, Version 2.0, see LICENSE for details.
-// SPDX-License-Identifier: Apache-2.0
-
-#ifndef OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_MANIFEST_SIZE_H_
-#define OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_MANIFEST_SIZE_H_
-
-/**
- * Manifest size for boot stages stored in flash (in bytes).
- */
-#define MANIFEST_SIZE 896
-
-#endif // OPENTITAN_SW_DEVICE_SILICON_CREATOR_LIB_MANIFEST_SIZE_H_
diff --git a/sw/device/silicon_creator/rom/BUILD b/sw/device/silicon_creator/rom/BUILD
index dbea0e2..ce23637 100644
--- a/sw/device/silicon_creator/rom/BUILD
+++ b/sw/device/silicon_creator/rom/BUILD
@@ -48,6 +48,7 @@
"//sw/device/silicon_creator/lib:error",
"//sw/device/silicon_creator/lib:manifest",
"//sw/device/silicon_creator/lib:shutdown",
+ "//sw/device/silicon_creator/lib/base:chip",
],
)
diff --git a/sw/device/silicon_creator/rom/boot_policy.c b/sw/device/silicon_creator/rom/boot_policy.c
index dec5911..5c0344b 100644
--- a/sw/device/silicon_creator/rom/boot_policy.c
+++ b/sw/device/silicon_creator/rom/boot_policy.c
@@ -5,6 +5,7 @@
#include "sw/device/silicon_creator/rom/boot_policy.h"
#include "sw/device/lib/base/hardened.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
#include "sw/device/silicon_creator/lib/boot_data.h"
#include "sw/device/silicon_creator/lib/drivers/lifecycle.h"
#include "sw/device/silicon_creator/lib/error.h"
diff --git a/sw/device/silicon_creator/rom/boot_policy_unittest.cc b/sw/device/silicon_creator/rom/boot_policy_unittest.cc
index 03ba8ac..d6e488d 100644
--- a/sw/device/silicon_creator/rom/boot_policy_unittest.cc
+++ b/sw/device/silicon_creator/rom/boot_policy_unittest.cc
@@ -5,6 +5,7 @@
#include "sw/device/silicon_creator/rom/boot_policy.h"
#include "gtest/gtest.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
#include "sw/device/silicon_creator/lib/mock_manifest.h"
#include "sw/device/silicon_creator/lib/mock_shutdown.h"
#include "sw/device/silicon_creator/rom/mock_boot_policy_ptrs.h"
diff --git a/sw/device/silicon_creator/rom_ext/BUILD b/sw/device/silicon_creator/rom_ext/BUILD
index 16276de..933f442 100644
--- a/sw/device/silicon_creator/rom_ext/BUILD
+++ b/sw/device/silicon_creator/rom_ext/BUILD
@@ -38,6 +38,7 @@
"@googletest//:gtest",
],
shared = [
+ "//sw/device/silicon_creator/lib/base:chip",
"//sw/device/lib/base:macros",
"//sw/device/silicon_creator/lib:manifest",
"//hw/top_earlgrey/sw/autogen:top_earlgrey",
@@ -121,6 +122,7 @@
"//sw/device/silicon_creator/lib:manifest_def",
"//sw/device/silicon_creator/lib:rom_print",
"//sw/device/silicon_creator/lib:shutdown",
+ "//sw/device/silicon_creator/lib/base:chip",
"//sw/device/silicon_creator/lib/base:sec_mmio",
"//sw/device/silicon_creator/lib/base:static_critical_boot_measurements",
"//sw/device/silicon_creator/lib/base:static_critical_sec_mmio",
diff --git a/sw/device/silicon_creator/rom_ext/rom_ext.c b/sw/device/silicon_creator/rom_ext/rom_ext.c
index 2aa823c..69107b3 100644
--- a/sw/device/silicon_creator/rom_ext/rom_ext.c
+++ b/sw/device/silicon_creator/rom_ext/rom_ext.c
@@ -9,6 +9,7 @@
#include "sw/device/lib/base/macros.h"
#include "sw/device/lib/base/stdasm.h"
#include "sw/device/lib/runtime/hart.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
#include "sw/device/silicon_creator/lib/base/sec_mmio.h"
#include "sw/device/silicon_creator/lib/drivers/flash_ctrl.h"
#include "sw/device/silicon_creator/lib/drivers/hmac.h"
diff --git a/sw/device/silicon_creator/rom_ext/rom_ext_boot_policy_ptrs.h b/sw/device/silicon_creator/rom_ext/rom_ext_boot_policy_ptrs.h
index 8c2e5fa..6c16299 100644
--- a/sw/device/silicon_creator/rom_ext/rom_ext_boot_policy_ptrs.h
+++ b/sw/device/silicon_creator/rom_ext/rom_ext_boot_policy_ptrs.h
@@ -6,6 +6,7 @@
#define OPENTITAN_SW_DEVICE_SILICON_CREATOR_ROM_EXT_ROM_EXT_BOOT_POLICY_PTRS_H_
#include "sw/device/lib/base/macros.h"
+#include "sw/device/silicon_creator/lib/base/chip.h"
#include "sw/device/silicon_creator/lib/manifest.h"
#include "hw/top_earlgrey/sw/autogen/top_earlgrey.h"