/* Puts a data element into the SSI transmit FIFO. */
void SSIDataPut(uint32_t ui32Base, uint32_t ui32Data)
/* Puts a data element into the SSI transmit FIFO. */
void SSIDataPut(uint32_t ui32Base, uint32_t ui32Data)
{
    ASSERT(_SSIBaseValid(ui32Base));
    ASSERT((ui32Data & (0xfffffffe << (HWREG(ui32Base + SSI_O_CR0) &
                                       SSI_CR0_DSS_M))) == 0);
    while (!(HWREG(ui32Base + SSI_O_SR) & SSI_SR_TNF))
    {
    }
    HWREG(ui32Base + SSI_O_DR) = ui32Data;
}