1*8c1740e2SSuyuan Su /* 2*8c1740e2SSuyuan Su * Copyright (c) 2024, MediaTek Inc. All rights reserved. 3*8c1740e2SSuyuan Su * 4*8c1740e2SSuyuan Su * SPDX-License-Identifier: BSD-3-Clause 5*8c1740e2SSuyuan Su */ 6*8c1740e2SSuyuan Su 7*8c1740e2SSuyuan Su #include <stdbool.h> 8*8c1740e2SSuyuan Su #include <stdint.h> 9*8c1740e2SSuyuan Su 10*8c1740e2SSuyuan Su #include <lib/smccc.h> 11*8c1740e2SSuyuan Su #include <plat/common/plat_trng.h> 12*8c1740e2SSuyuan Su 13*8c1740e2SSuyuan Su #include <mtk_sip_svc.h> 14*8c1740e2SSuyuan Su 15*8c1740e2SSuyuan Su DEFINE_SVC_UUID2(_plat_trng_uuid, 16*8c1740e2SSuyuan Su 0xf6b2c8d9, 0x1abb, 0x4d83, 0xb2, 0x3f, 17*8c1740e2SSuyuan Su 0x5c, 0x51, 0xb6, 0xef, 0xfc, 0xaf 18*8c1740e2SSuyuan Su ); 19*8c1740e2SSuyuan Su uuid_t plat_trng_uuid; 20*8c1740e2SSuyuan Su 21*8c1740e2SSuyuan Su void plat_entropy_setup(void) 22*8c1740e2SSuyuan Su { 23*8c1740e2SSuyuan Su uint64_t placeholder; 24*8c1740e2SSuyuan Su 25*8c1740e2SSuyuan Su plat_trng_uuid = _plat_trng_uuid; 26*8c1740e2SSuyuan Su 27*8c1740e2SSuyuan Su /* Initialise the entropy source and trigger RNG generation */ 28*8c1740e2SSuyuan Su plat_get_entropy(&placeholder); 29*8c1740e2SSuyuan Su } 30