diff options
Diffstat (limited to 'plat/arm/board/juno/certificate')
7 files changed, 119 insertions, 0 deletions
diff --git a/plat/arm/board/juno/certificate/include/juno_tbb_cert.h b/plat/arm/board/juno/certificate/include/juno_tbb_cert.h new file mode 100644 index 0000000..9799405 --- /dev/null +++ b/plat/arm/board/juno/certificate/include/juno_tbb_cert.h @@ -0,0 +1,20 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef JUNO_TBB_CERT_H +#define JUNO_TBB_CERT_H + +#include <tbbr/tbb_cert.h> + +/* + * Juno platform certificates that are used to establish the COT + */ +enum { + ETHOSN_NPU_FW_KEY_CERT = FWU_CERT + 1, + ETHOSN_NPU_FW_CONTENT_CERT, +}; + +#endif /* JUNO_TBB_CERT_H */ diff --git a/plat/arm/board/juno/certificate/include/juno_tbb_ext.h b/plat/arm/board/juno/certificate/include/juno_tbb_ext.h new file mode 100644 index 0000000..ec38227 --- /dev/null +++ b/plat/arm/board/juno/certificate/include/juno_tbb_ext.h @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef JUNO_TBB_EXT_H +#define JUNO_TBB_EXT_H + +#include <tbbr/tbb_ext.h> + +/* Juno platform defined TBBR extensions */ +enum { + ETHOSN_NPU_FW_CONTENT_CERT_PK_EXT = FWU_HASH_EXT + 1, + ETHOSN_NPU_FW_HASH_EXT, +}; + +#endif /* JUNO_TBB_EXT_H */ diff --git a/plat/arm/board/juno/certificate/include/juno_tbb_key.h b/plat/arm/board/juno/certificate/include/juno_tbb_key.h new file mode 100644 index 0000000..9576b9d --- /dev/null +++ b/plat/arm/board/juno/certificate/include/juno_tbb_key.h @@ -0,0 +1,19 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef JUNO_TBB_KEY_H +#define JUNO_TBB_KEY_H + +#include <tbbr/tbb_key.h> + +/* + * Juno platform keys that are used to establish the COT + */ +enum { + ETHOSN_NPU_FW_CONTENT_CERT_KEY = + NON_TRUSTED_FW_CONTENT_CERT_KEY + 1, +}; +#endif /* JUNO_TBB_KEY_H */ diff --git a/plat/arm/board/juno/certificate/include/platform_oid.h b/plat/arm/board/juno/certificate/include/platform_oid.h new file mode 100644 index 0000000..22173c1 --- /dev/null +++ b/plat/arm/board/juno/certificate/include/platform_oid.h @@ -0,0 +1,12 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#ifndef JUNO_PLATFORM_OID_H +#define JUNO_PLATFORM_OID_H + +#include <ethosn_oid.h> + +#endif /* JUNO_PLATFORM_OID_H */ diff --git a/plat/arm/board/juno/certificate/src/juno_tbb_cert.c b/plat/arm/board/juno/certificate/src/juno_tbb_cert.c new file mode 100644 index 0000000..3cb8304 --- /dev/null +++ b/plat/arm/board/juno/certificate/src/juno_tbb_cert.c @@ -0,0 +1,18 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include <ethosn_cert.h> + +#include <juno_tbb_cert.h> +#include <juno_tbb_ext.h> +#include <juno_tbb_key.h> + +static cert_t juno_plat_tbb_certificates[] = { + ETHOSN_NPU_FW_KEY_CERT_DEF, + ETHOSN_NPU_FW_CONTENT_CERT_DEF, +}; + +PLAT_REGISTER_COT(juno_plat_tbb_certificates); diff --git a/plat/arm/board/juno/certificate/src/juno_tbb_ext.c b/plat/arm/board/juno/certificate/src/juno_tbb_ext.c new file mode 100644 index 0000000..d8fe9e9 --- /dev/null +++ b/plat/arm/board/juno/certificate/src/juno_tbb_ext.c @@ -0,0 +1,17 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include <ethosn_cert.h> + +#include <juno_tbb_ext.h> +#include <juno_tbb_key.h> + +static ext_t juno_plat_tbb_extensions[] = { + ETHOSN_NPU_FW_CONTENT_CERT_PK_EXT_DEF, + ETHOSN_NPU_FW_HASH_EXT_DEF, +}; + +PLAT_REGISTER_EXTENSIONS(juno_plat_tbb_extensions); diff --git a/plat/arm/board/juno/certificate/src/juno_tbb_key.c b/plat/arm/board/juno/certificate/src/juno_tbb_key.c new file mode 100644 index 0000000..470755f --- /dev/null +++ b/plat/arm/board/juno/certificate/src/juno_tbb_key.c @@ -0,0 +1,15 @@ +/* + * Copyright (c) 2023, Arm Limited. All rights reserved. + * + * SPDX-License-Identifier: BSD-3-Clause + */ + +#include <ethosn_cert.h> + +#include <juno_tbb_key.h> + +static key_t juno_plat_tbb_keys[] = { + ETHOSN_NPU_FW_CONTENT_CERT_KEY_DEF +}; + +PLAT_REGISTER_KEYS(juno_plat_tbb_keys); |