/* This function clears all PUF internal logic and puts the PUF to zeroized state. */
status_t PUF_Zeroize(PUF_Type *base)
/* This function clears all PUF internal logic and puts the PUF to zeroized state. */
status_t PUF_Zeroize(PUF_Type *base)
{
    status_t status = kStatus_Fail;
    base->CR = PUF_CR_ZEROIZE_MASK;
    while (0u != (base->CR & PUF_CR_ZEROIZE_MASK))
    {
    }
    while (0u != (base->SR & PUF_SR_BUSY_MASK))
    {
    }
    if (((PUF_SR_ZEROIZED_MASK | PUF_SR_OK_MASK) == base->SR) && (0u == base->AR))
    {
        status = puf_makeStatus(base, kPUF_Zeroize);
    }
    return status;
}