1*a9690ae3ST Pratham // SPDX-License-Identifier: BSD-2-Clause 2*a9690ae3ST Pratham /* 3*a9690ae3ST Pratham * Texas Instruments K3 DTHEV2 Driver 4*a9690ae3ST Pratham * 5*a9690ae3ST Pratham * Copyright (C) 2025 Texas Instruments Incorporated - https://www.ti.com/ 6*a9690ae3ST Pratham * T Pratham <t-pratham@ti.com> 7*a9690ae3ST Pratham */ 8*a9690ae3ST Pratham 9*a9690ae3ST Pratham #include <drivers/ti_sci.h> 10*a9690ae3ST Pratham #include <initcall.h> 11*a9690ae3ST Pratham #include <io.h> 12*a9690ae3ST Pratham #include <keep.h> 13*a9690ae3ST Pratham #include <kernel/interrupt.h> 14*a9690ae3ST Pratham #include <kernel/misc.h> 15*a9690ae3ST Pratham #include <kernel/spinlock.h> 16*a9690ae3ST Pratham #include <mm/core_memprot.h> 17*a9690ae3ST Pratham #include <mm/core_mmu.h> 18*a9690ae3ST Pratham #include <platform_config.h> 19*a9690ae3ST Pratham #include <rng_support.h> 20*a9690ae3ST Pratham 21*a9690ae3ST Pratham #include "eip76d_trng.h" 22*a9690ae3ST Pratham dthev2_init(void)23*a9690ae3ST Prathamstatic TEE_Result dthev2_init(void) 24*a9690ae3ST Pratham { 25*a9690ae3ST Pratham TEE_Result result = TEE_SUCCESS; 26*a9690ae3ST Pratham 27*a9690ae3ST Pratham /* Initialize the RNG Module */ 28*a9690ae3ST Pratham result = eip76d_rng_init(); 29*a9690ae3ST Pratham if (result != TEE_SUCCESS) 30*a9690ae3ST Pratham return result; 31*a9690ae3ST Pratham 32*a9690ae3ST Pratham IMSG("DTHEv2 Drivers initialized"); 33*a9690ae3ST Pratham 34*a9690ae3ST Pratham return TEE_SUCCESS; 35*a9690ae3ST Pratham } 36*a9690ae3ST Pratham service_init_crypto(dthev2_init); 37