DEV_SIO_READ
d->sio.cstate = DEV_SIO_READ;
events = (d->sio.cstate == DEV_SIO_READ) ? POLLIN : POLLOUT;
case DEV_SIO_READ:
d->sio.cstate = DEV_SIO_READ;
d->sio.cstate = DEV_SIO_READ;