#include "FreeRTOS.h" #include "task.h" #include "diag.h" #include "hal_efuse.h" #include "efuse_api.h" #include "osdep_service.h" #include "device_lock.h" //====================================================== // OTP : one time programming //====================================================== #define OTP_MAX_LEN 32 // The OTP max length is 32 bytes static void efuse_otp_task(void *param) { int ret; u8 i, buf[OTP_MAX_LEN]; DBG_8195A("\nefuse OTP block: Test Start\n"); // read OTP content device_mutex_lock(RT_DEV_LOCK_EFUSE); ret = efuse_otp_read(0, OTP_MAX_LEN, buf); device_mutex_unlock(RT_DEV_LOCK_EFUSE); if(ret < 0){ DBG_8195A("efuse OTP block: read address and length error\n"); goto exit; } for(i=0; i