blob: 3d31816c8ca670e12826e61bd75365f3f24cc8b6 [file] [log] [blame]
// Copyright 2023 Google LLC.
// Copyright lowRISC contributors.
// Licensed under the Apache License, Version 2.0, see LICENSE for details.
// SPDX-License-Identifier: Apache-2.0
//
// Use the gen-otp-img.py script to convert this configuration into
// a hex file for preloading the OTP in FPGA synthesis or simulation.
//
{
// Seed to be used for generation of partition randomized values.
// Can be overridden on the command line with the --seed switch.
seed: 01931961561863975174
// The partition and item names must correspond with the OTP memory map.
partitions: [
{
name: "CREATOR_SW_CFG",
items: [
{
name: "CREATOR_SW_CFG_DIGEST",
value: "0x0",
},
{
name: "CREATOR_SW_CFG_SIGVERIFY_RSA_MOD_EXP_IBEX_EN",
// Use software mod_exp implementation for signature
// verification. See the definition of `hardened_bool_t` in
// sw/device/lib/base/hardened.h.
value: "0x739",
},
{
name: "CREATOR_SW_CFG_SIGVERIFY_RSA_KEY_EN",
// Mark the first two keys as valid and remaining as
// invalid since we have currently only two keys. See the
// definition of `hardened_byte_bool_t` in
// sw/device/lib/base/hardened.h.
value: "0x4b4b4b4b4b4ba5a5",
}
],
}
{
name: "OWNER_SW_CFG",
items: [
{
name: "OWNER_SW_CFG_DIGEST",
value: "0x0",
}
],
}
{
name: "HW_CFG",
// If set to true, this computes the HW digest value
// and locks the partition.
lock: "True",
items: [
{
name: "DEVICE_ID",
value: "0xBF5EA92044DAC540CFD1A00105568DFA97D9C35EA0407D71320B5E0434DB637F",
},
{
name: "EN_CSRNG_SW_APP_READ",
value: true,
},
{
name: "EN_ENTROPY_SRC_FW_READ",
value: true,
},
],
}
{
name: "SECRET0",
lock: "True",
items: [
{
name: "TEST_UNLOCK_TOKEN",
value: "0x79DEF38F41A9B895F6BDF341BEADA9B6",
}
{
name: "TEST_EXIT_TOKEN",
value: "0x000102030405060708090A0B0C0D0E0F",
}
],
}
{
name: "SECRET1",
lock: "True",
items: [
{
name: "FLASH_ADDR_KEY_SEED",
value: "<random>",
}
{
name: "FLASH_DATA_KEY_SEED",
value: "<random>",
}
{
name: "SRAM_DATA_KEY_SEED",
value: "<random>",
}
],
}
{
name: "SECRET2",
lock: "False",
items: [
{
name: "RMA_TOKEN",
value: "0x4D89B62D287CB957C2500042306DFD57",
}
{
name: "CREATOR_ROOT_KEY_SHARE0",
value: "<random>",
}
{
name: "CREATOR_ROOT_KEY_SHARE1",
value: "<random>",
}
],
}
{
name: "LIFE_CYCLE",
// Can be one of the following strings:
// RAW, TEST_UNLOCKED0-3, TEST_LOCKED0-2, DEV, PROD, PROD_END, RMA, SCRAP
state: "TEST_UNLOCKED2",
// Can range from 0 to 16.
// Note that a value of 0 is only permissible in RAW state.
count: "7"
}
]
}