__RETRY_LOOP
__RETRY_LOOP(*csr & ZSRR0_RX_READY, dummy = *data);
__RETRY_LOOP((*csr & ZSRR0_RX_READY) == 0, 0);
__RETRY_LOOP((*csr & (ZSRR1_FE | ZSRR1_DO | ZSRR1_PE)) != 0, 0);
__RETRY_LOOP(*data != 0xa0, 0);
__RETRY_LOOP((*csr & ZSRR0_RX_READY) == 0, 0);
__RETRY_LOOP((*csr & (ZSRR1_FE | ZSRR1_DO | ZSRR1_PE)) != 0, 0);