Lines Matching refs:elsa

51 	u_int val = inb(cs->hw.elsa.base + 8 + offset);  in serial_in()
55 return inb(cs->hw.elsa.base + 8 + offset); in serial_in()
63 u_int val = inb(cs->hw.elsa.base + 8 + offset); in serial_inp()
66 u_int val = inb_p(cs->hw.elsa.base + 8 + offset); in serial_inp()
72 return inb(cs->hw.elsa.base + 8 + offset); in serial_inp()
74 return inb_p(cs->hw.elsa.base + 8 + offset); in serial_inp()
84 outb(value, cs->hw.elsa.base + 8 + offset); in serial_out()
98 outb(value, cs->hw.elsa.base + 8 + offset); in serial_outp()
100 outb_p(value, cs->hw.elsa.base + 8 + offset); in serial_outp()
130 cs->hw.elsa.IER &= ~UART_IER_MSI; in change_speed()
131 cs->hw.elsa.IER |= UART_IER_MSI; in change_speed()
132 serial_outp(cs, UART_IER, cs->hw.elsa.IER); in change_speed()
174 cs->hw.elsa.MCR = 0; in mstartup()
175 cs->hw.elsa.MCR = UART_MCR_DTR | UART_MCR_RTS | UART_MCR_OUT2; in mstartup()
176 serial_outp(cs, UART_MCR, cs->hw.elsa.MCR); in mstartup()
181 cs->hw.elsa.IER = UART_IER_MSI | UART_IER_RLSI | UART_IER_RDI; in mstartup()
182 serial_outp(cs, UART_IER, cs->hw.elsa.IER); /* enable interrupts */ in mstartup()
192 cs->hw.elsa.transcnt = cs->hw.elsa.transp = 0; in mstartup()
193 cs->hw.elsa.rcvcnt = cs->hw.elsa.rcvp = 0; in mstartup()
199 cs->hw.elsa.MFlag = 1; in mstartup()
220 cs->hw.elsa.IER = 0; in mshutdown()
222 cs->hw.elsa.MCR &= ~UART_MCR_OUT2; in mshutdown()
227 cs->hw.elsa.MCR &= ~(UART_MCR_DTR | UART_MCR_RTS); in mshutdown()
228 serial_outp(cs, UART_MCR, cs->hw.elsa.MCR); in mshutdown()
250 if (len > MAX_MODEM_BUF - cs->hw.elsa.transcnt) in write_modem()
251 len = MAX_MODEM_BUF - cs->hw.elsa.transcnt; in write_modem()
252 fp = cs->hw.elsa.transcnt + cs->hw.elsa.transp; in write_modem()
258 cs->hw.elsa.transbuf + fp, count); in write_modem()
260 cs->hw.elsa.transcnt += count; in write_modem()
266 cs->hw.elsa.transbuf + fp, count); in write_modem()
268 cs->hw.elsa.transcnt += count; in write_modem()
271 if (cs->hw.elsa.transcnt && in write_modem()
272 !(cs->hw.elsa.IER & UART_IER_THRI)) { in write_modem()
273 cs->hw.elsa.IER |= UART_IER_THRI; in write_modem()
274 serial_outp(cs, UART_IER, cs->hw.elsa.IER); in write_modem()
317 if (cs->hw.elsa.rcvcnt >= MAX_MODEM_BUF) in receive_chars()
319 cs->hw.elsa.rcvbuf[cs->hw.elsa.rcvcnt++] = ch; in receive_chars()
332 if (cs->hw.elsa.MFlag == 2) { in receive_chars()
333 if (!(skb = dev_alloc_skb(cs->hw.elsa.rcvcnt))) in receive_chars()
336 skb_put_data(skb, cs->hw.elsa.rcvbuf, in receive_chars()
337 cs->hw.elsa.rcvcnt); in receive_chars()
338 skb_queue_tail(&cs->hw.elsa.bcs->rqueue, skb); in receive_chars()
340 schedule_event(cs->hw.elsa.bcs, B_RCVBUFREADY); in receive_chars()
345 t += sprintf(t, "modem read cnt %d", cs->hw.elsa.rcvcnt); in receive_chars()
346 QuickHex(t, cs->hw.elsa.rcvbuf, cs->hw.elsa.rcvcnt); in receive_chars()
349 cs->hw.elsa.rcvcnt = 0; in receive_chars()
356 debugl1(cs, "transmit_chars: p(%x) cnt(%x)", cs->hw.elsa.transp, in transmit_chars()
357 cs->hw.elsa.transcnt); in transmit_chars()
359 if (cs->hw.elsa.transcnt <= 0) { in transmit_chars()
360 cs->hw.elsa.IER &= ~UART_IER_THRI; in transmit_chars()
361 serial_out(cs, UART_IER, cs->hw.elsa.IER); in transmit_chars()
366 serial_outp(cs, UART_TX, cs->hw.elsa.transbuf[cs->hw.elsa.transp++]); in transmit_chars()
367 if (cs->hw.elsa.transp >= MAX_MODEM_BUF) in transmit_chars()
368 cs->hw.elsa.transp = 0; in transmit_chars()
369 if (--cs->hw.elsa.transcnt <= 0) in transmit_chars()
372 if ((cs->hw.elsa.transcnt < WAKEUP_CHARS) && (cs->hw.elsa.MFlag == 2)) in transmit_chars()
373 modem_fill(cs->hw.elsa.bcs); in transmit_chars()
380 if (cs->hw.elsa.transcnt <= 0) { in transmit_chars()
381 cs->hw.elsa.IER &= ~UART_IER_THRI; in transmit_chars()
382 serial_outp(cs, UART_IER, cs->hw.elsa.IER); in transmit_chars()
453 if (len > (MAX_MODEM_BUF - cs->hw.elsa.transcnt)) { in modem_write_cmd()
456 fp = cs->hw.elsa.transcnt + cs->hw.elsa.transp; in modem_write_cmd()
461 memcpy(cs->hw.elsa.transbuf + fp, msg, count); in modem_write_cmd()
462 cs->hw.elsa.transcnt += count; in modem_write_cmd()
467 memcpy(cs->hw.elsa.transbuf + fp, msg, count); in modem_write_cmd()
468 cs->hw.elsa.transcnt += count; in modem_write_cmd()
469 if (cs->hw.elsa.transcnt && in modem_write_cmd()
470 !(cs->hw.elsa.IER & UART_IER_THRI)) { in modem_write_cmd()
471 cs->hw.elsa.IER |= UART_IER_THRI; in modem_write_cmd()
472 serial_outp(cs, UART_IER, cs->hw.elsa.IER); in modem_write_cmd()
483 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
489 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
495 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
501 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
507 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
513 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
519 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_init()
532 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_dial()
541 while (timeout-- && cs->hw.elsa.transcnt) in modem_set_dial()
571 bcs->cs->hw.elsa.MFlag = 2; in modem_l2l1()
578 bcs->cs->hw.elsa.MFlag = 1; in modem_l2l1()
599 bcs->hw.hscx.rcvbuf = bcs->cs->hw.elsa.rcvbuf; in setstack_elsa()
608 bcs->cs->hw.elsa.bcs = bcs; in setstack_elsa()
626 if (!(cs->hw.elsa.rcvbuf = kmalloc(MAX_MODEM_BUF, in init_modem()
632 if (!(cs->hw.elsa.transbuf = kmalloc(MAX_MODEM_BUF, in init_modem()
636 kfree(cs->hw.elsa.rcvbuf); in init_modem()
637 cs->hw.elsa.rcvbuf = NULL; in init_modem()
649 cs->hw.elsa.MFlag = 0; in release_modem()
650 if (cs->hw.elsa.transbuf) { in release_modem()
651 if (cs->hw.elsa.rcvbuf) { in release_modem()
653 kfree(cs->hw.elsa.rcvbuf); in release_modem()
654 cs->hw.elsa.rcvbuf = NULL; in release_modem()
656 kfree(cs->hw.elsa.transbuf); in release_modem()
657 cs->hw.elsa.transbuf = NULL; in release_modem()