Deleted Added
full compact
digi.c (130077) digi.c (130095)
1/*-
2 * Copyright (c) 2001 Brian Somers <brian@Awfulhak.org>
3 * based on work by Slawa Olhovchenkov
4 * John Prince <johnp@knight-trosoft.com>
5 * Eric Hernes
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
1/*-
2 * Copyright (c) 2001 Brian Somers <brian@Awfulhak.org>
3 * based on work by Slawa Olhovchenkov
4 * John Prince <johnp@knight-trosoft.com>
5 * Eric Hernes
6 * All rights reserved.
7 *
8 * Redistribution and use in source and binary forms, with or without

--- 12 unchanged lines hidden (view full) ---

21 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
22 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
23 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
24 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
25 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
26 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
27 * SUCH DAMAGE.
28 *
29 * $FreeBSD: head/sys/dev/digi/digi.c 130077 2004-06-04 16:02:56Z phk $
29 * $FreeBSD: head/sys/dev/digi/digi.c 130095 2004-06-04 20:04:52Z phk $
30 */
31
32/*-
33 * TODO:
34 * Figure out what the con bios stuff is supposed to do
35 * Test with *LOTS* more cards - I only have a PCI8r and an ISA Xem.
36 */
37

--- 1558 unchanged lines hidden (view full) ---

1596 sc->towin(sc, port->rxwin);
1597 size = top - tail;
1598 if (tp->t_state & TS_CAN_BYPASS_L_RINT) {
1599 size = b_to_q((char *)port->rxbuf +
1600 tail, size, &tp->t_rawq);
1601 tail = top - size;
1602 ttwakeup(tp);
1603 } else for (; tail < top;) {
30 */
31
32/*-
33 * TODO:
34 * Figure out what the con bios stuff is supposed to do
35 * Test with *LOTS* more cards - I only have a PCI8r and an ISA Xem.
36 */
37

--- 1558 unchanged lines hidden (view full) ---

1596 sc->towin(sc, port->rxwin);
1597 size = top - tail;
1598 if (tp->t_state & TS_CAN_BYPASS_L_RINT) {
1599 size = b_to_q((char *)port->rxbuf +
1600 tail, size, &tp->t_rawq);
1601 tail = top - size;
1602 ttwakeup(tp);
1603 } else for (; tail < top;) {
1604 linesw[tp->t_line].
1605 l_rint(port->rxbuf[tail], tp);
1604 ttyld_rint(tp, port->rxbuf[tail]);
1606 sc->towin(sc, port->rxwin);
1607 size--;
1608 tail++;
1609 if (tp->t_state & TS_TBLOCK)
1610 break;
1611 }
1612 tail &= wrapmask;
1613 sc->setwin(sc, 0);

--- 22 unchanged lines hidden (view full) ---

1636 }
1637
1638 if (event.event & MODEMCHG_IND) {
1639 DLOG(DIGIDB_MODEM, (sc->dev, "port %d: MODEMCHG_IND\n",
1640 event.pnum));
1641
1642 if ((event.mstat ^ event.lstat) & port->cd) {
1643 sc->hidewin(sc);
1605 sc->towin(sc, port->rxwin);
1606 size--;
1607 tail++;
1608 if (tp->t_state & TS_TBLOCK)
1609 break;
1610 }
1611 tail &= wrapmask;
1612 sc->setwin(sc, 0);

--- 22 unchanged lines hidden (view full) ---

1635 }
1636
1637 if (event.event & MODEMCHG_IND) {
1638 DLOG(DIGIDB_MODEM, (sc->dev, "port %d: MODEMCHG_IND\n",
1639 event.pnum));
1640
1641 if ((event.mstat ^ event.lstat) & port->cd) {
1642 sc->hidewin(sc);
1644 linesw[tp->t_line].l_modem
1645 (tp, event.mstat & port->cd);
1643 ttyld_modem(tp, event.mstat & port->cd);
1646 sc->setwin(sc, 0);
1647 wakeup(TSA_CARR_ON(tp));
1648 }
1649
1650 if (event.mstat & sc->csigs->ri) {
1651 DLOG(DIGIDB_RI, (sc->dev, "port %d: RING\n",
1652 event.pnum));
1653 if (port->send_ring) {

--- 293 unchanged lines hidden ---
1644 sc->setwin(sc, 0);
1645 wakeup(TSA_CARR_ON(tp));
1646 }
1647
1648 if (event.mstat & sc->csigs->ri) {
1649 DLOG(DIGIDB_RI, (sc->dev, "port %d: RING\n",
1650 event.pnum));
1651 if (port->send_ring) {

--- 293 unchanged lines hidden ---