Lines Matching refs:io

153 	chipio_t io;               /* IrDA controller information */  member
498 if (self->io.speed > 115200) in smsc_ircc_net_xmit()
557 dev->base_addr = self->io.fir_base = fir_base; in smsc_ircc_open()
558 dev->irq = self->io.irq = irq; in smsc_ircc_open()
703 self->io.fir_base = fir_base; in smsc_ircc_setup_io()
704 self->io.sir_base = sir_base; in smsc_ircc_setup_io()
705 self->io.fir_ext = SMSC_IRCC2_FIR_CHIP_IO_EXTENT; in smsc_ircc_setup_io()
706 self->io.sir_ext = SMSC_IRCC2_SIR_CHIP_IO_EXTENT; in smsc_ircc_setup_io()
707 self->io.fifo_size = SMSC_IRCC2_FIFO_SIZE; in smsc_ircc_setup_io()
708 self->io.speed = SMSC_IRCC2_C_IRDA_FALLBACK_SPEED; in smsc_ircc_setup_io()
714 self->io.irq = irq; in smsc_ircc_setup_io()
716 self->io.irq = chip_irq; in smsc_ircc_setup_io()
722 self->io.dma = dma; in smsc_ircc_setup_io()
724 self->io.dma = chip_dma; in smsc_ircc_setup_io()
755 int iobase = self->io.fir_base; in smsc_ircc_init_chip()
861 dev->name, self->io.speed); in smsc_ircc_timeout()
864 smsc_ircc_change_speed(self, self->io.speed); in smsc_ircc_timeout()
899 if (speed != self->io.speed && speed != -1) { in smsc_ircc_hard_xmit_sir()
930 outb(UART_IER_THRI, self->io.sir_base + UART_IER); in smsc_ircc_hard_xmit_sir()
950 fir_base = self->io.fir_base; in smsc_ircc_set_fir_speed()
952 self->io.speed = speed; in smsc_ircc_set_fir_speed()
1008 fir_base = self->io.fir_base; in smsc_ircc_fir_start()
1051 fir_base = self->io.fir_base; in smsc_ircc_fir_stop()
1076 last_speed_was_sir = self->io.speed <= SMSC_IRCC2_MAX_SIR_SPEED; in smsc_ircc_change_speed()
1081 self->io.speed = speed; in smsc_ircc_change_speed()
1086 if (self->io.speed == 0) in smsc_ircc_change_speed()
1090 if (!last_speed_was_sir) speed = self->io.speed; in smsc_ircc_change_speed()
1093 if (self->io.speed != speed) in smsc_ircc_change_speed()
1096 self->io.speed = speed; in smsc_ircc_change_speed()
1142 iobase = self->io.sir_base; in smsc_ircc_set_sir_speed()
1145 self->io.speed = speed; in smsc_ircc_set_sir_speed()
1159 fcr |= self->io.speed < 38400 ? in smsc_ircc_set_sir_speed()
1203 if (speed != self->io.speed && speed != -1) { in smsc_ircc_hard_xmit_fir()
1231 bofs = mtt * (self->io.speed / 1000) / 8000; in smsc_ircc_hard_xmit_fir()
1255 int iobase = self->io.fir_base; in smsc_ircc_dma_xmit()
1268 self->io.direction = IO_XMIT; in smsc_ircc_dma_xmit()
1288 irda_setup_dma(self->io.dma, self->tx_buff_dma, self->tx_buff.len, in smsc_ircc_dma_xmit()
1310 int iobase = self->io.fir_base; in smsc_ircc_dma_xmit_complete()
1355 int iobase = self->io.fir_base; in smsc_ircc_dma_receive()
1372 self->io.direction = IO_RECV; in smsc_ircc_dma_receive()
1381 irda_setup_dma(self->io.dma, self->rx_buff_dma, self->rx_buff.truesize, in smsc_ircc_dma_receive()
1412 int iobase = self->io.fir_base; in smsc_ircc_dma_receive_complete()
1428 get_dma_residue(self->io.dma)); in smsc_ircc_dma_receive_complete()
1430 len = self->rx_buff.truesize - get_dma_residue(self->io.dma); in smsc_ircc_dma_receive_complete()
1447 len -= self->io.speed < 4000000 ? 2 : 4; in smsc_ircc_dma_receive_complete()
1485 iobase = self->io.sir_base; in smsc_ircc_sir_receive()
1521 if (self->io.speed <= SMSC_IRCC2_MAX_SIR_SPEED) { in smsc_ircc_interrupt()
1526 iobase = self->io.fir_base; in smsc_ircc_interrupt()
1542 if (self->io.direction == IO_RECV) in smsc_ircc_interrupt()
1580 iobase = self->io.sir_base; in smsc_ircc_interrupt_sir()
1639 get_dma_residue(self->io.dma));
1651 error = request_irq(self->io.irq, smsc_ircc_interrupt, 0, in smsc_ircc_request_irq()
1655 __func__, self->io.irq, error); in smsc_ircc_request_irq()
1666 self->io.speed = 0; in smsc_ircc_start_interrupts()
1674 int iobase = self->io.fir_base; in smsc_ircc_stop_interrupts()
1705 if (self->io.suspended) { in smsc_ircc_net_open()
1710 if (request_irq(self->io.irq, smsc_ircc_interrupt, 0, dev->name, in smsc_ircc_net_open()
1713 __func__, self->io.irq); in smsc_ircc_net_open()
1721 sprintf(hwname, "SMSC @ 0x%03x", self->io.fir_base); in smsc_ircc_net_open()
1733 if (request_dma(self->io.dma, dev->name)) { in smsc_ircc_net_open()
1737 __func__, self->io.dma); in smsc_ircc_net_open()
1773 if (!self->io.suspended) in smsc_ircc_net_close()
1774 free_irq(self->io.irq, dev); in smsc_ircc_net_close()
1776 disable_dma(self->io.dma); in smsc_ircc_net_close()
1777 free_dma(self->io.dma); in smsc_ircc_net_close()
1786 if (!self->io.suspended) { in smsc_ircc_suspend()
1793 free_irq(self->io.irq, self->netdev); in smsc_ircc_suspend()
1794 disable_dma(self->io.dma); in smsc_ircc_suspend()
1796 self->io.suspended = 1; in smsc_ircc_suspend()
1807 if (self->io.suspended) { in smsc_ircc_resume()
1820 enable_dma(self->io.dma); in smsc_ircc_resume()
1825 self->io.suspended = 0; in smsc_ircc_resume()
1852 self->io.fir_base); in smsc_ircc_close()
1854 release_region(self->io.fir_base, self->io.fir_ext); in smsc_ircc_close()
1857 self->io.sir_base); in smsc_ircc_close()
1859 release_region(self->io.sir_base, self->io.sir_ext); in smsc_ircc_close()
1908 fir_base = self->io.fir_base; in smsc_ircc_sir_start()
1909 sir_base = self->io.sir_base; in smsc_ircc_sir_start()
1939 iobase = self->io.sir_base; in smsc_ircc_sir_stop()
1966 iobase = self->io.sir_base; in smsc_ircc_sir_write_wakeup()
1971 actual = smsc_ircc_sir_write(iobase, self->io.fifo_size, in smsc_ircc_sir_write_wakeup()
1996 if (self->io.speed <= 115200) { in smsc_ircc_sir_write_wakeup()
2002 fcr |= self->io.speed < 38400 ? in smsc_ircc_sir_write_wakeup()
2064 if (smsc_transceivers[i].probe(self->io.fir_base)) { in smsc_ircc_probe_transceiver()
2090 smsc_transceivers[trx - 1].set_for_speed(self->io.fir_base, speed); in smsc_ircc_set_transceiver_for_speed()
2118 int iobase = self->io.sir_base; in smsc_ircc_sir_wait_hw_transmitter_finish()