Main Page | Alphabetical List | Data Structures | Directories | File List | Data Fields | Globals

ircomm_tty_ioctl.c File Reference

#include <linux/init.h>
#include <linux/fs.h>
#include <linux/sched.h>
#include <linux/termios.h>
#include <linux/tty.h>
#include <linux/serial.h>
#include <asm/segment.h>
#include <asm/uaccess.h>
#include <net/irda/irda.h>
#include <net/irda/irmod.h>
#include <net/irda/ircomm_core.h>
#include <net/irda/ircomm_param.h>
#include <net/irda/ircomm_tty_attach.h>
#include <net/irda/ircomm_tty.h>

Include dependency graph for ircomm_tty_ioctl.c:

Go to the source code of this file.

Defines

#define RELEVANT_IFLAG(iflag)   (iflag & (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK))

Functions

void ircomm_tty_change_speed (struct ircomm_tty_cb *self)
void ircomm_tty_set_termios (struct tty_struct *tty, struct termios *old_termios)
static int ircomm_tty_get_modem_info (struct ircomm_tty_cb *self, unsigned int *value)
static int ircomm_tty_set_modem_info (struct ircomm_tty_cb *self, unsigned int cmd, unsigned int *value)
static int ircomm_tty_get_serial_info (struct ircomm_tty_cb *self, struct serial_struct *retinfo)
static int ircomm_tty_set_serial_info (struct ircomm_tty_cb *self, struct serial_struct *new_info)
int ircomm_tty_ioctl (struct tty_struct *tty, struct file *file, unsigned int cmd, unsigned long arg)


Define Documentation

#define RELEVANT_IFLAG iflag   )     (iflag & (IGNBRK|BRKINT|IGNPAR|PARMRK|INPCK))
 

Definition at line 49 of file ircomm_tty_ioctl.c.


Function Documentation

void ircomm_tty_change_speed struct ircomm_tty_cb self  ) 
 

Definition at line 57 of file ircomm_tty_ioctl.c.

References ASYNC_CHECK_CD, ASYNC_CTS_FLOW, baud, CLOCAL, CRTSCTS, CS5, CS6, CS7, CS8, CSIZE, CSTOPB, driver, FALSE, ircomm_tty_cb::ircomm, IRCOMM_2_STOP_BIT, IRCOMM_DATA_FORMAT, IRCOMM_DATA_RATE, IRCOMM_FLOW_CONTROL, ircomm_param_request(), IRCOMM_PARITY_ENABLE, IRCOMM_PARITY_EVEN, IRCOMM_RTS_CTS_IN, IRCOMM_WSIZE_5, IRCOMM_WSIZE_6, IRCOMM_WSIZE_7, IRCOMM_WSIZE_8, IRDA_DEBUG, LSR_BI, LSR_FE, LSR_OE, LSR_PE, PARENB, PARODD, TRUE, ircomm_tty_cb::tty, and tty_get_baud_rate().

Referenced by ircomm_tty_set_serial_info(), and ircomm_tty_set_termios().

Here is the call graph for this function:

static int ircomm_tty_get_modem_info struct ircomm_tty_cb self,
unsigned int *  value
[static]
 

Definition at line 196 of file ircomm_tty_ioctl.c.

References IRCOMM_CD, IRCOMM_CTS, IRCOMM_DSR, IRCOMM_DTR, IRCOMM_RI, IRCOMM_RTS, IRDA_DEBUG, put_user, result, TIOCM_CAR, TIOCM_CTS, TIOCM_DSR, TIOCM_DTR, TIOCM_RNG, and TIOCM_RTS.

Referenced by ircomm_tty_ioctl().

static int ircomm_tty_get_serial_info struct ircomm_tty_cb self,
struct serial_struct retinfo
[static]
 

Definition at line 281 of file ircomm_tty_ioctl.c.

References copy_to_user, EFAULT, IRDA_DEBUG, memset, and PORT_16550A.

Referenced by ircomm_tty_ioctl().

int ircomm_tty_ioctl struct tty_struct *  tty,
struct file file,
unsigned int  cmd,
unsigned long  arg
 

Definition at line 393 of file ircomm_tty_ioctl.c.

References cli, driver, EIO, ENOIOCTLCMD, error, ircomm_tty_get_modem_info(), ircomm_tty_get_serial_info(), ircomm_tty_set_modem_info(), ircomm_tty_set_serial_info(), IRDA_DEBUG, put_user, restore_flags, ret, save_flags, TIOCGICOUNT, TIOCGSERIAL, TIOCMBIC, TIOCMBIS, TIOCMGET, TIOCMIWAIT, TIOCMSET, TIOCSERCONFIG, TIOCSERGSTRUCT, and TIOCSSERIAL.

Referenced by ircomm_tty_init().

Here is the call graph for this function:

static int ircomm_tty_set_modem_info struct ircomm_tty_cb self,
unsigned int  cmd,
unsigned int *  value
[static]
 

Definition at line 219 of file ircomm_tty_ioctl.c.

References ASSERT, ircomm_params::dte, EINVAL, error, get_user, IRCOMM_DELTA_DTR, IRCOMM_DELTA_RTS, IRCOMM_DTE, IRCOMM_DTR, ircomm_param_request(), IRCOMM_RTS, IRCOMM_TTY_MAGIC, IRDA_DEBUG, ircomm_tty_cb::magic, NULL, ircomm_tty_cb::settings, TIOCM_DTR, TIOCM_RTS, TIOCMBIC, TIOCMBIS, TIOCMSET, and TRUE.

Referenced by ircomm_tty_ioctl().

Here is the call graph for this function:

static int ircomm_tty_set_serial_info struct ircomm_tty_cb self,
struct serial_struct new_info
[static]
 

Definition at line 318 of file ircomm_tty_ioctl.c.

References ASYNC_FLAGS, ASYNC_INITIALIZED, ASYNC_LOW_LATENCY, ASYNC_SPD_HI, ASYNC_SPD_MASK, ASYNC_SPD_SHI, ASYNC_SPD_VHI, ASYNC_SPD_WARP, ASYNC_USR_MASK, CAP_SYS_ADMIN, capable, ircomm_tty_cb::close_delay, copy_from_user, ircomm_params::data_rate, driver, EFAULT, EPERM, ircomm_tty_cb::flags, HZ, IRCOMM_DATA_RATE, ircomm_param_request(), ircomm_tty_change_speed(), IRDA_DEBUG, ircomm_tty_cb::settings, state, and TRUE.

Referenced by ircomm_tty_ioctl().

Here is the call graph for this function:

void ircomm_tty_set_termios struct tty_struct *  tty,
struct termios old_termios
 

Definition at line 146 of file ircomm_tty_ioctl.c.

References termios::c_cflag, termios::c_iflag, CBAUD, CRTSCTS, IRCOMM_DTE, IRCOMM_DTR, ircomm_param_request(), IRCOMM_RTS, ircomm_tty_change_speed(), ircomm_tty_start(), IRDA_DEBUG, RELEVANT_IFLAG, test_bit, and TRUE.

Referenced by ircomm_tty_init().

Here is the call graph for this function: