sio_setreg
sio_setreg(com, com_scr, 0xa5);
sio_setreg(com, com_scr, 0x5a);
sio_setreg(com, com_scr, scr);
sio_setreg(com, com_fifo, FIFO_ENABLE | FIFO_RX_HIGH);
sio_setreg(com, com_fifo, 0);
sio_setreg(com, com_fifo,
sio_setreg(com, com_fifo, 0);
sio_setreg(com, com_cfcr, com->cfcr_image &= ~CFCR_SBREAK);
sio_setreg(com, com_ier, 0);
sio_setreg(com, com_fifo, 0);
sio_setreg(com, com_cfcr, com->cfcr_image |= CFCR_SBREAK);
sio_setreg(com, com_cfcr, com->cfcr_image &= ~CFCR_SBREAK);
sio_setreg(com, com_fifo, com->fifo_image);
sio_setreg(com, com_cfcr, cfcr | CFCR_DLAB);
sio_setreg(com, com_dlbl, dlbl);
sio_setreg(com, com_dlbh, dlbh);
sio_setreg(com, com_cfcr, com->cfcr_image = cfcr);
sio_setreg(com, com_cfcr, 0xbf);
sio_setreg(com, com_fifo,
sio_setreg(com, com_cfcr, 0xbf);
sio_setreg(com, com_fifo,
sio_setreg(com, com_cfcr, 0xbf);
sio_setreg(com, com_fifo,
sio_setreg(com, com_cfcr, 0xbf);
sio_setreg(com, com_fifo,
sio_setreg(com, com_cfcr, com->cfcr_image);
sio_setreg(com, com_fifo,
sio_setreg(com, com_fifo,
sio_setreg(com, com_cfcr, CFCR_EFR_ENABLE);
sio_setreg(com, com_efr, efr | EFR_EFE);
sio_setreg(com, com_cfcr, (cfcr != CFCR_EFR_ENABLE) ? cfcr : 0);
sio_setreg(com, com_mcr,
sio_setreg(com, com_cfcr, CFCR_EFR_ENABLE);
sio_setreg(com, com_efr, efr);
sio_setreg(com, com_cfcr, cfcr);
sio_setreg(com, com_cfcr, CFCR_DLAB | CFCR_8BITS);
sio_setreg(com, com_dlbl, divisor & 0xff);
sio_setreg(com, com_dlbh, divisor >> 8);
sio_setreg(com, com_cfcr, CFCR_8BITS);
sio_setreg(com, com_mcr, mcr_image);
sio_setreg(com, com_ier, 0);
sio_setreg(com, com_mcr, mcr_image | MCR_LOOPBACK);
sio_setreg(com, com_ier, IER_ETXRDY);
sio_setreg(com, com_data, 0);
sio_setreg(com, com_mcr, mcr_image);
sio_setreg(com, com_ier, 0);
sio_setreg(com, com_mcr, 0);
sio_setreg(com, com_ier, 0);
sio_setreg(com, com_cfcr, CFCR_8BITS);
sio_setreg(com, com_ier, 0);
sio_setreg(com, com_cfcr, CFCR_8BITS); /* dummy to avoid bus echo */
sio_setreg(com, com_mcr, 0);