mirror of https://github.com/ARMmbed/mbed-os.git
308 lines
9.6 KiB
C
308 lines
9.6 KiB
C
/* Copyright (c) 2017-2019 ARM Limited
|
|
*
|
|
* SPDX-License-Identifier: Apache-2.0
|
|
*
|
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
|
* you may not use this file except in compliance with the License.
|
|
* You may obtain a copy of the License at
|
|
*
|
|
* http://www.apache.org/licenses/LICENSE-2.0
|
|
*
|
|
* Unless required by applicable law or agreed to in writing, software
|
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
|
* See the License for the specific language governing permissions and
|
|
* limitations under the License.
|
|
*/
|
|
|
|
/*******************************************************************************
|
|
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
* THIS FILE IS AN AUTO-GENERATED FILE - DO NOT MODIFY IT.
|
|
* !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
|
|
* Template Version 1.0
|
|
* Generated by tools/psa/generate_partition_code.py Version 1.1
|
|
******************************************************************************/
|
|
|
|
#ifndef __MBED_SPM_PARTITIONS_H___
|
|
#define __MBED_SPM_PARTITIONS_H___
|
|
|
|
|
|
/****************** Common definitions ****************************************/
|
|
|
|
/* PSA reserved event flags */
|
|
#define PSA_RESERVED1_POS (1UL)
|
|
#define PSA_RESERVED1_MSK (1UL << PSA_RESERVED1_POS)
|
|
|
|
#define PSA_RESERVED2_POS (2UL)
|
|
#define PSA_RESERVED2_MSK (1UL << PSA_RESERVED2_POS)
|
|
|
|
/****************** Service Partitions ****************************************/
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* ATTEST_SRV defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define ATTEST_SRV_ID 37
|
|
|
|
#define ATTEST_SRV_ROT_SRV_COUNT (3UL)
|
|
#define ATTEST_SRV_EXT_ROT_SRV_COUNT (7UL)
|
|
|
|
|
|
#define ATTEST_SRV_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define PSA_ATTEST_GET_TOKEN_POS (4UL)
|
|
#define PSA_ATTEST_GET_TOKEN (1UL << PSA_ATTEST_GET_TOKEN_POS)
|
|
#define PSA_ATTEST_GET_TOKEN_SIZE_POS (5UL)
|
|
#define PSA_ATTEST_GET_TOKEN_SIZE (1UL << PSA_ATTEST_GET_TOKEN_SIZE_POS)
|
|
#define PSA_ATTEST_INJECT_KEY_POS (6UL)
|
|
#define PSA_ATTEST_INJECT_KEY (1UL << PSA_ATTEST_INJECT_KEY_POS)
|
|
|
|
#define ATTEST_SRV_WAIT_ANY_SID_MSK (\
|
|
PSA_ATTEST_GET_TOKEN | \
|
|
PSA_ATTEST_GET_TOKEN_SIZE | \
|
|
PSA_ATTEST_INJECT_KEY)
|
|
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* CRYPTO_SRV defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define CRYPTO_SRV_ID 35
|
|
|
|
#define CRYPTO_SRV_ROT_SRV_COUNT (11UL)
|
|
#define CRYPTO_SRV_EXT_ROT_SRV_COUNT (4UL)
|
|
|
|
|
|
#define CRYPTO_SRV_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define PSA_CRYPTO_INIT_POS (4UL)
|
|
#define PSA_CRYPTO_INIT (1UL << PSA_CRYPTO_INIT_POS)
|
|
#define PSA_MAC_POS (5UL)
|
|
#define PSA_MAC (1UL << PSA_MAC_POS)
|
|
#define PSA_HASH_POS (6UL)
|
|
#define PSA_HASH (1UL << PSA_HASH_POS)
|
|
#define PSA_ASYMMETRIC_POS (7UL)
|
|
#define PSA_ASYMMETRIC (1UL << PSA_ASYMMETRIC_POS)
|
|
#define PSA_SYMMETRIC_POS (8UL)
|
|
#define PSA_SYMMETRIC (1UL << PSA_SYMMETRIC_POS)
|
|
#define PSA_AEAD_POS (9UL)
|
|
#define PSA_AEAD (1UL << PSA_AEAD_POS)
|
|
#define PSA_KEY_MNG_POS (10UL)
|
|
#define PSA_KEY_MNG (1UL << PSA_KEY_MNG_POS)
|
|
#define PSA_RNG_POS (11UL)
|
|
#define PSA_RNG (1UL << PSA_RNG_POS)
|
|
#define PSA_CRYPTO_FREE_POS (12UL)
|
|
#define PSA_CRYPTO_FREE (1UL << PSA_CRYPTO_FREE_POS)
|
|
#define PSA_KEY_DERIVATION_POS (13UL)
|
|
#define PSA_KEY_DERIVATION (1UL << PSA_KEY_DERIVATION_POS)
|
|
#define PSA_ENTROPY_INJECT_POS (14UL)
|
|
#define PSA_ENTROPY_INJECT (1UL << PSA_ENTROPY_INJECT_POS)
|
|
|
|
#define CRYPTO_SRV_WAIT_ANY_SID_MSK (\
|
|
PSA_CRYPTO_INIT | \
|
|
PSA_MAC | \
|
|
PSA_HASH | \
|
|
PSA_ASYMMETRIC | \
|
|
PSA_SYMMETRIC | \
|
|
PSA_AEAD | \
|
|
PSA_KEY_MNG | \
|
|
PSA_RNG | \
|
|
PSA_CRYPTO_FREE | \
|
|
PSA_KEY_DERIVATION | \
|
|
PSA_ENTROPY_INJECT)
|
|
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* PLATFORM defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define PLATFORM_ID 8
|
|
|
|
#define PLATFORM_ROT_SRV_COUNT (3UL)
|
|
#define PLATFORM_EXT_ROT_SRV_COUNT (1UL)
|
|
|
|
|
|
#define PLATFORM_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define PSA_PLATFORM_LC_GET_MSK_POS (4UL)
|
|
#define PSA_PLATFORM_LC_GET_MSK (1UL << PSA_PLATFORM_LC_GET_MSK_POS)
|
|
#define PSA_PLATFORM_LC_SET_MSK_POS (5UL)
|
|
#define PSA_PLATFORM_LC_SET_MSK (1UL << PSA_PLATFORM_LC_SET_MSK_POS)
|
|
#define PSA_PLATFORM_SYSTEM_RESET_MSK_POS (6UL)
|
|
#define PSA_PLATFORM_SYSTEM_RESET_MSK (1UL << PSA_PLATFORM_SYSTEM_RESET_MSK_POS)
|
|
|
|
#define PLATFORM_WAIT_ANY_SID_MSK (\
|
|
PSA_PLATFORM_LC_GET_MSK | \
|
|
PSA_PLATFORM_LC_SET_MSK | \
|
|
PSA_PLATFORM_SYSTEM_RESET_MSK)
|
|
|
|
|
|
/* -----------------------------------------------------------------------------
|
|
* ITS defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define ITS_ID 10
|
|
|
|
#define ITS_ROT_SRV_COUNT (5UL)
|
|
#define ITS_EXT_ROT_SRV_COUNT (0UL)
|
|
|
|
|
|
#define ITS_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define PSA_ITS_GET_MSK_POS (4UL)
|
|
#define PSA_ITS_GET_MSK (1UL << PSA_ITS_GET_MSK_POS)
|
|
#define PSA_ITS_SET_MSK_POS (5UL)
|
|
#define PSA_ITS_SET_MSK (1UL << PSA_ITS_SET_MSK_POS)
|
|
#define PSA_ITS_INFO_MSK_POS (6UL)
|
|
#define PSA_ITS_INFO_MSK (1UL << PSA_ITS_INFO_MSK_POS)
|
|
#define PSA_ITS_REMOVE_MSK_POS (7UL)
|
|
#define PSA_ITS_REMOVE_MSK (1UL << PSA_ITS_REMOVE_MSK_POS)
|
|
#define PSA_ITS_RESET_MSK_POS (8UL)
|
|
#define PSA_ITS_RESET_MSK (1UL << PSA_ITS_RESET_MSK_POS)
|
|
|
|
#define ITS_WAIT_ANY_SID_MSK (\
|
|
PSA_ITS_GET_MSK | \
|
|
PSA_ITS_SET_MSK | \
|
|
PSA_ITS_INFO_MSK | \
|
|
PSA_ITS_REMOVE_MSK | \
|
|
PSA_ITS_RESET_MSK)
|
|
|
|
|
|
|
|
/****************** Test Partitions *******************************************/
|
|
|
|
#ifdef USE_PSA_TEST_PARTITIONS
|
|
|
|
#ifdef USE_CRYPTO_ACL_TEST
|
|
/* -----------------------------------------------------------------------------
|
|
* CRYPTO_ACL_TEST defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define CRYPTO_ACL_TEST_ID 128
|
|
|
|
#define CRYPTO_ACL_TEST_ROT_SRV_COUNT (6UL)
|
|
#define CRYPTO_ACL_TEST_EXT_ROT_SRV_COUNT (1UL)
|
|
|
|
|
|
#define CRYPTO_ACL_TEST_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define CRYPTO_GENERATE_KEY_MSK_POS (4UL)
|
|
#define CRYPTO_GENERATE_KEY_MSK (1UL << CRYPTO_GENERATE_KEY_MSK_POS)
|
|
#define CRYPTO_OPEN_KEY_MSK_POS (5UL)
|
|
#define CRYPTO_OPEN_KEY_MSK (1UL << CRYPTO_OPEN_KEY_MSK_POS)
|
|
#define CRYPTO_CLOSE_KEY_MSK_POS (6UL)
|
|
#define CRYPTO_CLOSE_KEY_MSK (1UL << CRYPTO_CLOSE_KEY_MSK_POS)
|
|
#define CRYPTO_DESTROY_KEY_MSK_POS (7UL)
|
|
#define CRYPTO_DESTROY_KEY_MSK (1UL << CRYPTO_DESTROY_KEY_MSK_POS)
|
|
#define CRYPTO_GET_KEY_ATTRIBUTES_MSK_POS (8UL)
|
|
#define CRYPTO_GET_KEY_ATTRIBUTES_MSK (1UL << CRYPTO_GET_KEY_ATTRIBUTES_MSK_POS)
|
|
#define CRYPTO_IMPORT_KEY_MSK_POS (9UL)
|
|
#define CRYPTO_IMPORT_KEY_MSK (1UL << CRYPTO_IMPORT_KEY_MSK_POS)
|
|
|
|
#define CRYPTO_ACL_TEST_WAIT_ANY_SID_MSK (\
|
|
CRYPTO_GENERATE_KEY_MSK | \
|
|
CRYPTO_OPEN_KEY_MSK | \
|
|
CRYPTO_CLOSE_KEY_MSK | \
|
|
CRYPTO_DESTROY_KEY_MSK | \
|
|
CRYPTO_GET_KEY_ATTRIBUTES_MSK | \
|
|
CRYPTO_IMPORT_KEY_MSK)
|
|
|
|
|
|
#endif // USE_CRYPTO_ACL_TEST
|
|
|
|
#ifdef USE_CLIENT_TESTS_PART1
|
|
/* -----------------------------------------------------------------------------
|
|
* CLIENT_TESTS_PART1 defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define CLIENT_TESTS_PART1_ID 1
|
|
|
|
#define CLIENT_TESTS_PART1_ROT_SRV_COUNT (3UL)
|
|
#define CLIENT_TESTS_PART1_EXT_ROT_SRV_COUNT (0UL)
|
|
|
|
|
|
#define CLIENT_TESTS_PART1_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define PART1_ROT_SRV1_MSK_POS (4UL)
|
|
#define PART1_ROT_SRV1_MSK (1UL << PART1_ROT_SRV1_MSK_POS)
|
|
#define DROP_CONN_MSK_POS (5UL)
|
|
#define DROP_CONN_MSK (1UL << DROP_CONN_MSK_POS)
|
|
#define SECURE_CLIENTS_ONLY_MSK_POS (6UL)
|
|
#define SECURE_CLIENTS_ONLY_MSK (1UL << SECURE_CLIENTS_ONLY_MSK_POS)
|
|
|
|
#define CLIENT_TESTS_PART1_WAIT_ANY_SID_MSK (\
|
|
PART1_ROT_SRV1_MSK | \
|
|
DROP_CONN_MSK | \
|
|
SECURE_CLIENTS_ONLY_MSK)
|
|
|
|
|
|
#endif // USE_CLIENT_TESTS_PART1
|
|
|
|
#ifdef USE_SERVER_TESTS_PART1
|
|
/* -----------------------------------------------------------------------------
|
|
* SERVER_TESTS_PART1 defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define SERVER_TESTS_PART1_ID 2
|
|
|
|
#define SERVER_TESTS_PART1_ROT_SRV_COUNT (2UL)
|
|
#define SERVER_TESTS_PART1_EXT_ROT_SRV_COUNT (2UL)
|
|
|
|
|
|
#define SERVER_TESTS_PART1_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define CONTROL_MSK_POS (4UL)
|
|
#define CONTROL_MSK (1UL << CONTROL_MSK_POS)
|
|
#define TEST_MSK_POS (5UL)
|
|
#define TEST_MSK (1UL << TEST_MSK_POS)
|
|
|
|
#define SERVER_TESTS_PART1_WAIT_ANY_SID_MSK (\
|
|
CONTROL_MSK | \
|
|
TEST_MSK)
|
|
|
|
|
|
#endif // USE_SERVER_TESTS_PART1
|
|
|
|
#ifdef USE_SERVER_TESTS_PART2
|
|
/* -----------------------------------------------------------------------------
|
|
* SERVER_TESTS_PART2 defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define SERVER_TESTS_PART2_ID 3
|
|
|
|
#define SERVER_TESTS_PART2_ROT_SRV_COUNT (2UL)
|
|
#define SERVER_TESTS_PART2_EXT_ROT_SRV_COUNT (0UL)
|
|
|
|
|
|
#define SERVER_TESTS_PART2_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define ROT_SRV_REVERSE_MSK_POS (4UL)
|
|
#define ROT_SRV_REVERSE_MSK (1UL << ROT_SRV_REVERSE_MSK_POS)
|
|
#define ROT_SRV_DB_TST_MSK_POS (5UL)
|
|
#define ROT_SRV_DB_TST_MSK (1UL << ROT_SRV_DB_TST_MSK_POS)
|
|
|
|
#define SERVER_TESTS_PART2_WAIT_ANY_SID_MSK (\
|
|
ROT_SRV_REVERSE_MSK | \
|
|
ROT_SRV_DB_TST_MSK)
|
|
|
|
|
|
#endif // USE_SERVER_TESTS_PART2
|
|
|
|
#ifdef USE_SMOKE_TESTS_PART1
|
|
/* -----------------------------------------------------------------------------
|
|
* SMOKE_TESTS_PART1 defines
|
|
* -------------------------------------------------------------------------- */
|
|
#define SMOKE_TESTS_PART1_ID 4
|
|
|
|
#define SMOKE_TESTS_PART1_ROT_SRV_COUNT (1UL)
|
|
#define SMOKE_TESTS_PART1_EXT_ROT_SRV_COUNT (0UL)
|
|
|
|
|
|
#define SMOKE_TESTS_PART1_WAIT_ANY_IRQ_MSK (0)
|
|
|
|
#define ROT_SRV1_MSK_POS (4UL)
|
|
#define ROT_SRV1_MSK (1UL << ROT_SRV1_MSK_POS)
|
|
|
|
#define SMOKE_TESTS_PART1_WAIT_ANY_SID_MSK (\
|
|
ROT_SRV1_MSK)
|
|
|
|
|
|
#endif // USE_SMOKE_TESTS_PART1
|
|
|
|
|
|
#endif // USE_PSA_TEST_PARTITIONS
|
|
|
|
#endif // __MBED_SPM_PARTITIONS_H___
|