1*e27e865aSEtienne Carriere /* SPDX-License-Identifier: BSD-2-Clause */ 2*e27e865aSEtienne Carriere /* 3*e27e865aSEtienne Carriere * Copyright (C) 2018, Linaro Limited 4*e27e865aSEtienne Carriere */ 5*e27e865aSEtienne Carriere 6*e27e865aSEtienne Carriere #ifndef __PTA_RNG_H 7*e27e865aSEtienne Carriere #define __PTA_RNG_H 8*e27e865aSEtienne Carriere 9*e27e865aSEtienne Carriere #define PTA_RNG_UUID { 0xab7a617c, 0xb8e7, 0x4d8f, \ 10*e27e865aSEtienne Carriere { 0x83, 0x01, 0xd0, 0x9b, 0x61, 0x03, 0x6b, 0x64 } } 11*e27e865aSEtienne Carriere 12*e27e865aSEtienne Carriere #define TEE_ERROR_HEALTH_TEST_FAIL 0x00000001 13*e27e865aSEtienne Carriere 14*e27e865aSEtienne Carriere /* 15*e27e865aSEtienne Carriere * PTA_CMD_GET_ENTROPY - Get Entropy from RNG using Thermal Sensor 16*e27e865aSEtienne Carriere * 17*e27e865aSEtienne Carriere * [in/out] memref[0] - Entropy buffer memory reference 18*e27e865aSEtienne Carriere * param[1] unused 19*e27e865aSEtienne Carriere * param[2] unused 20*e27e865aSEtienne Carriere * param[3] unused 21*e27e865aSEtienne Carriere * 22*e27e865aSEtienne Carriere * Result: 23*e27e865aSEtienne Carriere * TEE_SUCCESS - Invoke command success 24*e27e865aSEtienne Carriere * TEE_ERROR_BAD_PARAMETERS - Incorrect input param 25*e27e865aSEtienne Carriere * TEE_ERROR_NOT_SUPPORTED - Requested entropy size greater than size of pool 26*e27e865aSEtienne Carriere * TEE_ERROR_HEALTH_TEST_FAIL - Continuous health testing failed 27*e27e865aSEtienne Carriere */ 28*e27e865aSEtienne Carriere #define PTA_CMD_GET_ENTROPY 0x0 29*e27e865aSEtienne Carriere 30*e27e865aSEtienne Carriere /* 31*e27e865aSEtienne Carriere * PTA_CMD_GET_RNG_INFO - Get RNG information 32*e27e865aSEtienne Carriere * 33*e27e865aSEtienne Carriere * [out] value[0].a - RNG data-rate in bytes per second 34*e27e865aSEtienne Carriere * [out] value[0].b - Quality/Entropy per 1024 bit of data 35*e27e865aSEtienne Carriere * param[1] unused 36*e27e865aSEtienne Carriere * param[2] unused 37*e27e865aSEtienne Carriere * param[3] unused 38*e27e865aSEtienne Carriere * 39*e27e865aSEtienne Carriere * Result: 40*e27e865aSEtienne Carriere * TEE_SUCCESS - Invoke command success 41*e27e865aSEtienne Carriere * TEE_ERROR_BAD_PARAMETERS - Incorrect input param 42*e27e865aSEtienne Carriere */ 43*e27e865aSEtienne Carriere #define PTA_CMD_GET_RNG_INFO 0x1 44*e27e865aSEtienne Carriere 45*e27e865aSEtienne Carriere #endif /* __PTA_RNG_H */ 46