本文整理汇总了C++中I_IXOFF函数的典型用法代码示例。如果您正苦于以下问题:C++ I_IXOFF函数的具体用法?C++ I_IXOFF怎么用?C++ I_IXOFF使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。
在下文中一共展示了I_IXOFF函数的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。
示例1: xmbrs_unthrottle
static void xmbrs_unthrottle(struct tty_struct * tty)
{
struct xmb_serial *info = (struct xmb_serial *)tty->driver_data;
#ifdef SERIAL_DEBUG_THROTTLE
char buf[64];
printk("unthrottle %s: %d....\n", _tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
if (serial_paranoia_check(info, tty->device, "xmbrs_unthrottle"))
return;
if (I_IXOFF(tty)) {
if (info->x_char)
info->x_char = 0;
else {
/* Force START_CHAR (xon) out */
volatile unsigned int *uartp;
unsigned long flags;
info->x_char = START_CHAR(tty);
uartp = (volatile unsigned int *) info->addr;
save_flags_cli(flags);
EnableInterrupts(uartp);
force_tx_fifo_fill(info);
restore_flags(flags);
}
}
}
开发者ID:ProjectZeroSlackr,项目名称:linux-2.4.32-ipod,代码行数:30,代码来源:xmbserial.c
示例2: rs_throttle
/*
* ------------------------------------------------------------
* rs_throttle()
*
* This routine is called by the upper-layer tty layer to signal that
* incoming characters should be throttled.
* ------------------------------------------------------------
*/
static void rs_throttle(struct tty_struct * tty)
{
if (I_IXOFF(tty))
rs_send_xchar(tty, STOP_CHAR(tty));
printk(KERN_INFO "simrs_throttle called\n");
}
开发者ID:openube,项目名称:android_kernel_sony_c2305,代码行数:15,代码来源:simserial.c
示例3: rs_360_unthrottle
static void rs_360_unthrottle(struct tty_struct * tty)
{
ser_info_t *info = (ser_info_t *)tty->driver_data;
#ifdef SERIAL_DEBUG_THROTTLE
char buf[64];
printk("unthrottle %s: %d....\n", _tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
if (serial_paranoia_check(info, tty->name, "rs_unthrottle"))
return;
if (I_IXOFF(tty)) {
if (info->x_char)
info->x_char = 0;
else
rs_360_send_xchar(tty, START_CHAR(tty));
}
#ifdef modem_control
if (tty->termios->c_cflag & CRTSCTS)
info->MCR |= UART_MCR_RTS;
local_irq_disable();
serial_out(info, UART_MCR, info->MCR);
local_irq_enable();
#endif
}
开发者ID:joka90,项目名称:htc-kernel-msm7227,代码行数:27,代码来源:68360serial.c
示例4: dz_throttle
/*
* ------------------------------------------------------------
* dz_throttle () and dz_unthrottle ()
*
* This routine is called by the upper-layer tty layer to signal that
* incoming characters should be throttled (or not).
* ------------------------------------------------------------
*/
static void dz_throttle(struct tty_struct *tty)
{
struct dz_serial *info = (struct dz_serial *) tty->driver_data;
if (I_IXOFF(tty))
info->x_char = STOP_CHAR(tty);
}
开发者ID:ProjectZeroSlackr,项目名称:linux-2.4.32-ipod,代码行数:15,代码来源:dz.c
示例5: rs_unthrottle
static void rs_unthrottle(struct tty_struct * tty)
{
struct serial_state *info = tty->driver_data;
unsigned long flags;
#ifdef SERIAL_DEBUG_THROTTLE
char buf[64];
printk("unthrottle %s: %d....\n", tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
if (serial_paranoia_check(info, tty->name, "rs_unthrottle"))
return;
if (I_IXOFF(tty)) {
if (info->x_char)
info->x_char = 0;
else
rs_send_xchar(tty, START_CHAR(tty));
}
if (tty->termios->c_cflag & CRTSCTS)
info->MCR |= SER_RTS;
local_irq_save(flags);
rtsdtr_ctrl(info->MCR);
local_irq_restore(flags);
}
开发者ID:kprog,项目名称:linux,代码行数:26,代码来源:amiserial.c
示例6: sio_unthrottle
static void sio_unthrottle(struct tty_struct *tty)
{
if (I_IXOFF(tty)) {
if (x_char)
x_char = 0;
else
sio_send_xchar(tty, START_CHAR(tty));
}
}
开发者ID:robacklin,项目名称:uclinux-linux,代码行数:9,代码来源:serial_ml67xxxx.c
示例7: dz_unthrottle
static void dz_unthrottle(struct tty_struct *tty)
{
struct dz_serial *info = (struct dz_serial *) tty->driver_data;
if (I_IXOFF(tty)) {
if (info->x_char)
info->x_char = 0;
else
info->x_char = START_CHAR(tty);
}
}
开发者ID:ProjectZeroSlackr,项目名称:linux-2.4.32-ipod,代码行数:11,代码来源:dz.c
示例8: rs_unthrottle
static void rs_unthrottle(struct tty_struct * tty)
{
struct serial_state *info = tty->driver_data;
if (I_IXOFF(tty)) {
if (info->x_char)
info->x_char = 0;
else
rs_send_xchar(tty, START_CHAR(tty));
}
printk(KERN_INFO "simrs_unthrottle called\n");
}
开发者ID:openube,项目名称:android_kernel_sony_c2305,代码行数:12,代码来源:simserial.c
示例9: ctc_tty_unthrottle
static void
ctc_tty_unthrottle(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
if (ctc_tty_paranoia_check(info, tty->device, "ctc_tty_unthrottle"))
return;
info->mcr |= UART_MCR_RTS;
if (I_IXOFF(tty))
ctc_tty_inject(info, START_CHAR(tty));
ctc_tty_transmit_status(info);
}
开发者ID:GunioRobot,项目名称:MI424WR_GEN2_Rev_E-F,代码行数:12,代码来源:ctctty.c
示例10: ctc_tty_throttle
/*
* ------------------------------------------------------------
* ctc_tty_throttle()
*
* This routine is called by the upper-layer tty layer to signal that
* incoming characters should be throttled.
* ------------------------------------------------------------
*/
static void
ctc_tty_throttle(struct tty_struct *tty)
{
ctc_tty_info *info = (ctc_tty_info *) tty->driver_data;
DBF_TEXT(trace, 4, __FUNCTION__);
if (ctc_tty_paranoia_check(info, tty->name, "ctc_tty_throttle"))
return;
info->mcr &= ~UART_MCR_RTS;
if (I_IXOFF(tty))
ctc_tty_inject(info, STOP_CHAR(tty));
ctc_tty_transmit_status(info);
}
开发者ID:FelipeFernandes1988,项目名称:Alice-1121-Modem,代码行数:21,代码来源:ctctty.c
示例11: scc_unthrottle
static void scc_unthrottle (struct tty_struct * tty)
{
struct scc_port *port = tty->driver_data;
unsigned long flags;
SCC_ACCESS_INIT(port);
if (tty->termios->c_cflag & CRTSCTS) {
local_irq_save(flags);
SCCmod(TX_CTRL_REG, 0xff, TCR_RTS);
local_irq_restore(flags);
}
if (I_IXOFF(tty))
scc_send_xchar(tty, START_CHAR(tty));
}
开发者ID:Medvedroid,项目名称:OT_903D-kernel-2.6.35.7,代码行数:14,代码来源:vme_scc.c
示例12: scc_throttle
static void scc_throttle (struct tty_struct * tty)
{
struct scc_port *port = (struct scc_port *)tty->driver_data;
unsigned long flags;
SCC_ACCESS_INIT(port);
if (tty->termios->c_cflag & CRTSCTS) {
save_flags(flags);
cli();
SCCmod(TX_CTRL_REG, ~TCR_RTS, 0);
restore_flags(flags);
}
if (I_IXOFF(tty))
scc_send_xchar(tty, STOP_CHAR(tty));
}
开发者ID:GunioRobot,项目名称:MI424WR_GEN2_Rev_E-F,代码行数:15,代码来源:vme_scc.c
示例13: nullmodem_unthrottle
static void nullmodem_unthrottle(struct tty_struct * tty)
{
unsigned long flags;
struct nullmodem_end *end = tty->driver_data;
dprintf("%s - #%d\n", __FUNCTION__, tty->index);
if (tty->termios.c_cflag & CRTSCTS)
{
spin_lock_irqsave(&end->pair->spin, flags);
change_pins(end, TIOCM_RTS, 0);
spin_unlock_irqrestore(&end->pair->spin, flags);
}
if (I_IXOFF(tty))
nullmodem_send_xchar(tty, START_CHAR(tty));
}
开发者ID:dugoh,项目名称:nullmodem,代码行数:16,代码来源:nullmodem.c
示例14: rs_throttle
/*
* Throttle characters as directed by upper tty layer
*/
static void rs_throttle(struct tty_struct * tty)
{
#ifdef TX3912_UART_DEBUG_THROTTLE
char buf[64];
printk("throttle %s: %d....\n", tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
func_enter();
if (I_IXOFF(tty))
rs_send_xchar(tty, STOP_CHAR(tty));
func_exit();
}
开发者ID:kevin-longkai,项目名称:edimax-br-6528n,代码行数:19,代码来源:serial_tx3912.c
示例15: tty_receive_char
static void tty_receive_char(struct tty_struct *tty, char ch)
{
if(tty == NULL) return;
if(I_IXON(tty) && !I_IXOFF(tty) && !tty->raw) {
if(ch == STOP_CHAR(tty)){
stop_tty(tty);
return;
}
else if(ch == START_CHAR(tty)){
start_tty(tty);
return;
}
}
tty_insert_flip_char(tty, ch, TTY_NORMAL);
}
开发者ID:cilynx,项目名称:dd-wrt,代码行数:17,代码来源:chan_kern.c
示例16: mcfrs_throttle
/*
* ------------------------------------------------------------
* mcfrs_throttle()
*
* This routine is called by the upper-layer tty layer to signal that
* incoming characters should be throttled.
* ------------------------------------------------------------
*/
static void mcfrs_throttle(struct tty_struct * tty)
{
struct mcf_serial *info = (struct mcf_serial *)tty->driver_data;
#ifdef SERIAL_DEBUG_THROTTLE
char buf[64];
printk("throttle %s: %d....\n", tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
if (serial_paranoia_check(info, tty->name, "mcfrs_throttle"))
return;
if (I_IXOFF(tty))
info->x_char = STOP_CHAR(tty);
/* Turn off RTS line (do this atomic) */
}
开发者ID:LouZiffer,项目名称:m900_kernel_cupcake-SDX,代码行数:26,代码来源:mcfserial.c
示例17: sab8253x_unthrottleS
void sab8253x_unthrottleS(struct tty_struct * tty)
{
struct sab_port *port = (struct sab_port *)tty->driver_data;
if (sab8253x_serial_paranoia_check(port, tty->device, "sab8253x_unthrottle"))
{
return;
}
if (!tty)
{
return;
}
if (I_IXOFF(tty))
{
sab8253x_send_xcharS(tty, START_CHAR(tty));
}
}
开发者ID:ProjectZeroSlackr,项目名称:linux-2.4.32-ipod,代码行数:19,代码来源:8253xsyn.c
示例18: rs_unthrottle
/*
* Un-throttle characters as directed by upper tty layer
*/
static void rs_unthrottle(struct tty_struct * tty)
{
#ifdef TX3912_UART_DEBUG_THROTTLE
char buf[64];
printk("unthrottle %s: %d....\n", tty_name(tty, buf),
tty->ldisc.chars_in_buffer(tty));
#endif
func_enter();
if (I_IXOFF(tty)) {
if (rs_port->x_char)
rs_port->x_char = 0;
else
rs_send_xchar(tty, START_CHAR(tty));
}
func_exit();
}
开发者ID:kevin-longkai,项目名称:edimax-br-6528n,代码行数:23,代码来源:serial_tx3912.c
示例19: rs_throttle
/*
* ------------------------------------------------------------
* rs_throttle()
*
* This routine is called by the upper-layer tty layer to signal that
* incoming characters should be throttled.
* ------------------------------------------------------------
*/
static void rs_throttle(struct tty_struct * tty)
{
struct serial_state *info = tty->driver_data;
unsigned long flags;
#ifdef SERIAL_DEBUG_THROTTLE
printk("throttle %s ....\n", tty_name(tty));
#endif
if (serial_paranoia_check(info, tty->name, "rs_throttle"))
return;
if (I_IXOFF(tty))
rs_send_xchar(tty, STOP_CHAR(tty));
if (C_CRTSCTS(tty))
info->MCR &= ~SER_RTS;
local_irq_save(flags);
rtsdtr_ctrl(info->MCR);
local_irq_restore(flags);
}
开发者ID:AlexShiLucky,项目名称:linux,代码行数:29,代码来源:amiserial.c
示例20: qt2_set_termios
static void qt2_set_termios(struct tty_struct *tty,
struct usb_serial_port *port,
struct ktermios *old_termios)
{
struct usb_device *dev = port->serial->dev;
struct qt2_port_private *port_priv;
struct ktermios *termios = &tty->termios;
u16 baud;
unsigned int cflag = termios->c_cflag;
u16 new_lcr = 0;
int status;
port_priv = usb_get_serial_port_data(port);
if (cflag & PARENB) {
if (cflag & PARODD)
new_lcr |= UART_LCR_PARITY;
else
new_lcr |= SERIAL_EVEN_PARITY;
}
switch (cflag & CSIZE) {
case CS5:
new_lcr |= UART_LCR_WLEN5;
break;
case CS6:
new_lcr |= UART_LCR_WLEN6;
break;
case CS7:
new_lcr |= UART_LCR_WLEN7;
break;
default:
case CS8:
new_lcr |= UART_LCR_WLEN8;
break;
}
baud = tty_get_baud_rate(tty);
if (!baud)
baud = 9600;
status = qt2_set_port_config(dev, port_priv->device_port, baud,
new_lcr);
if (status < 0)
dev_err(&port->dev, "%s - qt2_set_port_config failed: %i\n",
__func__, status);
if (cflag & CRTSCTS)
status = qt2_control_msg(dev, QT_HW_FLOW_CONTROL_MASK,
SERIAL_CRTSCTS,
port_priv->device_port);
else
status = qt2_control_msg(dev, QT_HW_FLOW_CONTROL_MASK,
0, port_priv->device_port);
if (status < 0)
dev_err(&port->dev, "%s - set HW flow control failed: %i\n",
__func__, status);
if (I_IXOFF(tty) || I_IXON(tty)) {
u16 x = ((u16) (START_CHAR(tty) << 8) | (u16) (STOP_CHAR(tty)));
status = qt2_control_msg(dev, QT_SW_FLOW_CONTROL_MASK,
x, port_priv->device_port);
} else
status = qt2_control_msg(dev, QT_SW_FLOW_CONTROL_MASK,
0, port_priv->device_port);
if (status < 0)
dev_err(&port->dev, "%s - set SW flow control failed: %i\n",
__func__, status);
}
开发者ID:asmalldev,项目名称:linux,代码行数:72,代码来源:quatech2.c
注:本文中的I_IXOFF函数示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 |
请发表评论