Driver/tiny_tty/tiny_tiocmget()

Last-modified: 2007-09-26 (水) 14:23:00

317 :static int tiny_tiocmget(struct tty_struct *tty, struct file *file)
318 :{
319 : struct tiny_serial *tiny = tty->driver_data;
320 :
321 : unsigned int result = 0;
322 : unsigned int msr = tiny->msr;
323 : unsigned int mcr = tiny->mcr;
324 :
325 : result = ((mcr & MCR_DTR) ? TIOCM_DTR : 0) | /* DTR is set */
326 : ((mcr & MCR_RTS) ? TIOCM_RTS : 0) | /* RTS is set */
327 : ((mcr & MCR_LOOP) ? TIOCM_LOOP : 0) | /* LOOP is set */
328 : ((msr & MSR_CTS) ? TIOCM_CTS : 0) | /* CTS is set */
329 : ((msr & MSR_CD) ? TIOCM_CAR : 0) | /* Carrier detect is set*/
330 : ((msr & MSR_RI) ? TIOCM_RI : 0) | /* Ring Indicator is set */
331 : ((msr & MSR_DSR) ? TIOCM_DSR : 0); /* DSR is set */
332 :
333 : return result;
334 :}