1*91f16700Schasinglulu /* 2*91f16700Schasinglulu * Copyright (c) 2017-2019, ARM Limited and Contributors. All rights reserved. 3*91f16700Schasinglulu * 4*91f16700Schasinglulu * SPDX-License-Identifier: BSD-3-Clause 5*91f16700Schasinglulu */ 6*91f16700Schasinglulu 7*91f16700Schasinglulu #include <plat/common/platform.h> 8*91f16700Schasinglulu 9*91f16700Schasinglulu extern char uniphier_rotpk_hash[], uniphier_rotpk_hash_end[]; 10*91f16700Schasinglulu 11*91f16700Schasinglulu int plat_get_rotpk_info(void *cookie, void **key_ptr, unsigned int *key_len, 12*91f16700Schasinglulu unsigned int *flags) 13*91f16700Schasinglulu { 14*91f16700Schasinglulu *key_ptr = uniphier_rotpk_hash; 15*91f16700Schasinglulu *key_len = uniphier_rotpk_hash_end - uniphier_rotpk_hash; 16*91f16700Schasinglulu *flags = ROTPK_IS_HASH; 17*91f16700Schasinglulu 18*91f16700Schasinglulu return 0; 19*91f16700Schasinglulu } 20*91f16700Schasinglulu 21*91f16700Schasinglulu int plat_get_nv_ctr(void *cookie, unsigned int *nv_ctr) 22*91f16700Schasinglulu { 23*91f16700Schasinglulu /* 24*91f16700Schasinglulu * No support for non-volatile counter. Update the ROT key to protect 25*91f16700Schasinglulu * the system against rollback. 26*91f16700Schasinglulu */ 27*91f16700Schasinglulu *nv_ctr = 0; 28*91f16700Schasinglulu 29*91f16700Schasinglulu return 0; 30*91f16700Schasinglulu } 31*91f16700Schasinglulu 32*91f16700Schasinglulu int plat_set_nv_ctr(void *cookie, unsigned int nv_ctr) 33*91f16700Schasinglulu { 34*91f16700Schasinglulu return 0; 35*91f16700Schasinglulu } 36*91f16700Schasinglulu 37*91f16700Schasinglulu int plat_get_mbedtls_heap(void **heap_addr, size_t *heap_size) 38*91f16700Schasinglulu { 39*91f16700Schasinglulu return get_mbedtls_heap_helper(heap_addr, heap_size); 40*91f16700Schasinglulu } 41