您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ usb_get_serial_data函数代码示例

51自学网 2021-06-03 09:20:07
  C++
这篇教程C++ usb_get_serial_data函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中usb_get_serial_data函数的典型用法代码示例。如果您正苦于以下问题:C++ usb_get_serial_data函数的具体用法?C++ usb_get_serial_data怎么用?C++ usb_get_serial_data使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了usb_get_serial_data函数的14个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: pl2303_release

static void pl2303_release(struct usb_serial *serial){	struct pl2303_serial_private *spriv;	spriv = usb_get_serial_data(serial);	kfree(spriv);}
开发者ID:daltenty,项目名称:kernel-ubuntu.trusty-vgt,代码行数:7,


示例2: opticon_tiocmset

static int opticon_tiocmset(struct tty_struct *tty,			   unsigned int set, unsigned int clear){	struct usb_serial_port *port = tty->driver_data;	struct opticon_private *priv = usb_get_serial_data(port->serial);	unsigned long flags;	bool rts;	bool changed = false;	if (!usb_get_intfdata(port->serial->interface))		return -ENODEV;	/* We only support RTS so we only handle that */	spin_lock_irqsave(&priv->lock, flags);	rts = priv->rts;	if (set & TIOCM_RTS)		priv->rts = true;	if (clear & TIOCM_RTS)		priv->rts = false;	changed = rts ^ priv->rts;	spin_unlock_irqrestore(&priv->lock, flags);	if (!changed)		return 0;	/* Send the new RTS state to the connected device */	return send_control_msg(port, CONTROL_RTS, !rts);}
开发者ID:JonnyH,项目名称:pandora-kernel,代码行数:28,


示例3: ipw_release

static void ipw_release(struct usb_serial *serial){	struct usb_wwan_intf_private *data = usb_get_serial_data(serial);	usb_set_serial_data(serial, NULL);	kfree(data);}
开发者ID:LITMUS-RT,项目名称:litmus-rt-odroidx,代码行数:7,


示例4: qt2_setup_urbs

static int qt2_setup_urbs(struct usb_serial *serial){	struct usb_serial_port *port0;	struct qt2_serial_private *serial_priv;	int status;	port0 = serial->port[0];	serial_priv = usb_get_serial_data(serial);	serial_priv->read_urb = usb_alloc_urb(0, GFP_KERNEL);	if (!serial_priv->read_urb)		return -ENOMEM;	usb_fill_bulk_urb(serial_priv->read_urb, serial->dev,			  usb_rcvbulkpipe(serial->dev,					  port0->bulk_in_endpointAddress),			  serial_priv->read_buffer,			  QT2_READ_BUFFER_SIZE,			  qt2_read_bulk_callback, serial);	status = usb_submit_urb(serial_priv->read_urb, GFP_KERNEL);	if (status != 0) {		dev_err(&serial->dev->dev,			"%s - submit read urb failed %i/n", __func__, status);		usb_free_urb(serial_priv->read_urb);		return status;	}	return 0;}
开发者ID:ReneNyffenegger,项目名称:linux,代码行数:30,


示例5: pl2303_open

static int pl2303_open(struct tty_struct *tty, struct usb_serial_port *port){	struct usb_serial *serial = port->serial;	struct pl2303_serial_private *spriv = usb_get_serial_data(serial);	int result;	if (spriv->type != HX) {		usb_clear_halt(serial->dev, port->write_urb->pipe);		usb_clear_halt(serial->dev, port->read_urb->pipe);	} else {		/* reset upstream data pipes */		pl2303_vendor_write(8, 0, serial);		pl2303_vendor_write(9, 0, serial);	}	/* Setup termios */	if (tty)		pl2303_set_termios(tty, port, NULL);	result = usb_submit_urb(port->interrupt_in_urb, GFP_KERNEL);	if (result) {		dev_err(&port->dev, "%s - failed submitting interrupt urb,"			" error %d/n", __func__, result);		return result;	}	result = usb_serial_generic_open(tty, port);	if (result) {		usb_kill_urb(port->interrupt_in_urb);		return result;	}	return 0;}
开发者ID:daltenty,项目名称:kernel-ubuntu.trusty-vgt,代码行数:34,


示例6: qc_release

static void qc_release(struct usb_serial *serial){	struct usb_wwan_intf_private *priv = usb_get_serial_data(serial);	usb_set_serial_data(serial, NULL);	kfree(priv);}
开发者ID:383530895,项目名称:linux,代码行数:7,


示例7: qc_release

static void qc_release(struct usb_serial *serial){	struct usb_wwan_intf_private *priv = usb_get_serial_data(serial);	/* Free the private data allocated in qcprobe */	usb_set_serial_data(serial, NULL);	kfree(priv);}
开发者ID:ashang,项目名称:xpenology-3.x,代码行数:8,


示例8: qt2_release

static void qt2_release(struct usb_serial *serial){	struct qt2_serial_private *serial_priv;	serial_priv = usb_get_serial_data(serial);	usb_free_urb(serial_priv->read_urb);	kfree(serial_priv);}
开发者ID:CoerWatt,项目名称:linux,代码行数:9,


示例9: modem_tiocmget

static int modem_tiocmget(struct tty_struct *tty, struct file *file){	struct usb_serial_port *port = tty->driver_data;	struct modem_port *modem_port_ptr = usb_get_serial_data(port->serial);	if (modem_port_ptr == NULL)		return 0;	return (int)modem_port_ptr->modem_status;}
开发者ID:Atrix-Dev-Team,项目名称:kernel-MB860,代码行数:10,


示例10: opticon_close

static void opticon_close(struct tty_struct *tty, struct usb_serial_port *port,			  struct file *filp){	struct opticon_private *priv = usb_get_serial_data(port->serial);	dbg("%s - port %d", __func__, port->number);	/* shutdown our urbs */	usb_kill_urb(priv->bulk_read_urb);}
开发者ID:artm1248,项目名称:linux,代码行数:10,


示例11: opticon_shutdown

static void opticon_shutdown(struct usb_serial *serial){	struct opticon_private *priv = usb_get_serial_data(serial);	dbg("%s", __func__);	usb_kill_urb(priv->bulk_read_urb);	usb_free_urb(priv->bulk_read_urb);	kfree(priv->bulk_in_buffer);	kfree(priv);	usb_set_serial_data(serial, NULL);}
开发者ID:artm1248,项目名称:linux,代码行数:12,


示例12: modem_usb_disable_wakeup_irq

static void modem_usb_disable_wakeup_irq(struct usb_interface *intf){	struct usb_serial *serial = usb_get_intfdata(intf);	struct modem_port *modem_port_ptr =		usb_get_serial_data(serial);	if (modem_port_ptr == NULL)		return;	if (modem_wake_irq) {		disable_irq_wake(modem_wake_irq);		disable_irq(modem_wake_irq);	}}
开发者ID:Atrix-Dev-Team,项目名称:kernel-MB860,代码行数:13,


示例13: hsictty_write_callback

static void hsictty_write_callback(struct urb *urb){	struct usb_serial_port *port;	struct hsictty_port_private *portdata;	struct hsictty_intf_private *intfdata;	int i;	port = urb->context;	intfdata = usb_get_serial_data(port->serial);	portdata = usb_get_serial_port_data(port);	if (urb->actual_length <= 0) {		hsictty_error		    ("%s: write failed, write length: %d in channel:%d, endpoint:%d/n",		     __func__, urb->actual_length, portdata->channel,		     usb_pipeendpoint(urb->pipe));	} else {		hsictty_dbg("%s: write length: %d in channel:%d, endpoint:%d/n",			    __func__, urb->actual_length, portdata->channel,			    usb_pipeendpoint(urb->pipe));	}#ifdef BACKUP_DATA_DUMP	if (!dumped)		backup_log(portdata->channel, 1,				urb->transfer_buffer, urb->transfer_buffer_length);#endif	usb_serial_port_softint(port);	usb_autopm_put_interface_async(port->serial->interface);	portdata = usb_get_serial_port_data(port);	spin_lock(&intfdata->susp_lock);	intfdata->in_flight--;	spin_unlock(&intfdata->susp_lock);	for (i = 0; i < N_OUT_URB; ++i) {		if (portdata->out_urbs[i] == urb) {			smp_mb__before_clear_bit();			hsictty_dbg			    ("%s: urb(%d) freed on channel:%d, endpoint:%d, in_flight:%d, pm use cnt:%d/n",			     __func__, i, portdata->channel,			     usb_pipeendpoint(urb->pipe), intfdata->in_flight,			     atomic_read(&port->serial->interface->dev.power.					 usage_count));			clear_bit(i, &portdata->out_busy);			complete_all(&portdata->tx_notifier);			break;		}	}}
开发者ID:qkdang,项目名称:m462,代码行数:49,


示例14: mxu1_port_probe

static int mxu1_port_probe(struct usb_serial_port *port){	struct mxu1_port *mxport;	struct mxu1_device *mxdev;	struct urb *urb;	mxport = kzalloc(sizeof(struct mxu1_port), GFP_KERNEL);	if (!mxport)		return -ENOMEM;	spin_lock_init(&mxport->mxp_lock);	mutex_init(&mxport->mxp_mutex);	mxport->mxp_port = port;	mxdev = usb_get_serial_data(port->serial);	urb = port->interrupt_in_urb;	if (!urb) {		dev_err(&port->dev, "%s - no interrupt urb/n", __func__);		return -EINVAL;	}	switch (mxdev->mxd_model) {	case MXU1_1110_PRODUCT_ID:		mxport->mxp_uart_types = MXU1_TYPE_RS232;		mxport->mxp_uart_mode = MXU1_UART_232;		break;	case MXU1_1130_PRODUCT_ID:	case MXU1_1131_PRODUCT_ID:		mxport->mxp_uart_types = MXU1_TYPE_RS422 | MXU1_TYPE_RS485;		mxport->mxp_uart_mode = MXU1_UART_485_RECEIVER_DISABLED;		break;	case MXU1_1150_PRODUCT_ID:	case MXU1_1151_PRODUCT_ID:		mxport->mxp_uart_types =			MXU1_TYPE_RS232 | MXU1_TYPE_RS422 | MXU1_TYPE_RS485;		mxport->mxp_uart_mode = MXU1_UART_232;		break;	}	usb_set_serial_port_data(port, mxport);	port->port.closing_wait =			msecs_to_jiffies(MXU1_DEFAULT_CLOSING_WAIT * 10);	port->port.drain_delay = 1;	return 0;}
开发者ID:efferre79,项目名称:mxu11x0,代码行数:48,



注:本文中的usb_get_serial_data函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ usb_get_string_simple函数代码示例
C++ usb_get_intfdata函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。