lkml.org 
[lkml]   [2003]   [Mar]   [21]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRE: Linux-2.4.20 modem control
On Thu, 20 Mar 2003, Ed Vance wrote:

> On Thu, Mar 20, 2003 at 2:14 PM, Richard B. Johnson wrote:
> >
> > [SNIPPED...]
> >
> > This patch works (no other promises).
> >
> > --- linux-2.4.20/drivers/char/serial.c.orig 2003-03-20
> > 16:21:55.000000000 -0500
> > +++ linux-2.4.20/drivers/char/serial.c 2003-03-20
> > 16:31:23.000000000 -0500
> > @@ -1538,8 +1538,12 @@
> > serial_out(info, UART_LCR, serial_inp(info, UART_LCR) &
> > ~UART_LCR_SBC);
> >
> > if (!info->tty || (info->tty->termios->c_cflag & HUPCL))
> > - info->MCR &= ~(UART_MCR_DTR|UART_MCR_RTS);
> > - serial_outp(info, UART_MCR, info->MCR);
> > + {
> > + serial_outp(info, UART_MCR,info->MCR &
> > ~(UART_MCR_DTR|UART_MCR_RTS));
> > + set_current_state(TASK_INTERRUPTIBLE);
> > + schedule_timeout(HZ/2); /*
> > Disconnect modem */
> > + }
> > + serial_outp(info, UART_MCR, info->MCR); /* Don't keep it off */
> >
> > /* disable FIFO's */
> > serial_outp(info, UART_FCR, (UART_FCR_ENABLE_FIFO |
> >
> Hi Richard,
>
> I'm not sure it's a Good Thing(tm) to call schedule_timeout() with
> the interrupts disabled. The shutdown function is framed by
> save_flags();cli and restore_flags(). Don't know exactly what the
> downside of that could be.
>
> Is the re-enable of DTR actually necessary to get agetty to work?
> DTR is supposed to stay off until the next open.
>
> Still, if it works for you, it works.
>
> Cheers,
> Ed

Yes. DTR must be high or the modem will never answer an incoming call.
The `getty` waits in a blocking open until the carrier is detected.
The carrier will never be detected if DTR is low. After the hangup
occurs, you need to restore the modem settings.


Cheers,
Dick Johnson
Penguin : Linux version 2.4.20 on an i686 machine (797.90 BogoMips).
Why is the government concerned about the lunatic fringe? Think about it.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:34    [W:1.009 / U:0.236 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site