当前位置: 首页>>代码示例>>C++>>正文


C++ serio_close函数代码示例

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


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

示例1: iforce_serio_connect

static int iforce_serio_connect(struct serio *serio, struct serio_driver *drv)
{
	struct iforce *iforce;
	int err;

	iforce = kzalloc(sizeof(struct iforce), GFP_KERNEL);
	if (!iforce)
		return -ENOMEM;

	iforce->bus = IFORCE_232;
	iforce->serio = serio;

	serio_set_drvdata(serio, iforce);

	err = serio_open(serio, drv);
	if (err) {
		serio_set_drvdata(serio, NULL);
		kfree(iforce);
		return err;
	}

	err = iforce_init_device(iforce);
	if (err) {
		serio_close(serio);
		serio_set_drvdata(serio, NULL);
		kfree(iforce);
		return -ENODEV;
	}

	return 0;
}
开发者ID:KrisChaplin,项目名称:LRT2x4_v1.0.2.06_GPL_source,代码行数:31,代码来源:iforce-serio.c

示例2: ser_destroy

/*-----------------------------------------------------------------------
 Destroy a serial driver.
-----------------------------------------------------------------------*/
void ser_destroy(ser_t *ser)
{
	if (ser) {
		serio_close(&ser->serio);
		dp_FREE(ser);
	}
}
开发者ID:BygoneWorlds,项目名称:anet,代码行数:10,代码来源:ser.c

示例3: sec_keyboard_disconnect

static void sec_keyboard_disconnect(struct serio *serio)
{
	struct sec_keyboard_drvdata *data = serio_get_drvdata(serio);
	printk(KERN_DEBUG "[Keyboard] %s", __func__);
	data->tx_ready = false;
	serio_close(serio);
}
开发者ID:Andro-Boy,项目名称:Googy-Max2-Kernel,代码行数:7,代码来源:sec_keyboard.c

示例4: vsxxxaa_connect

static int
vsxxxaa_connect (struct serio *serio, struct serio_driver *drv)
{
	struct vsxxxaa *mouse;
	struct input_dev *input_dev;
	int err = -ENOMEM;

	mouse = kzalloc (sizeof (struct vsxxxaa), GFP_KERNEL);
	input_dev = input_allocate_device ();
	if (!mouse || !input_dev)
		goto fail1;

	mouse->dev = input_dev;
	mouse->serio = serio;
	strlcat (mouse->name, "DEC VSXXX-AA/-GA mouse or VSXXX-AB digitizer",
		 sizeof (mouse->name));
	snprintf (mouse->phys, sizeof (mouse->phys), "%s/input0", serio->phys);

	input_dev->name = mouse->name;
	input_dev->phys = mouse->phys;
	input_dev->id.bustype = BUS_RS232;
	input_dev->dev.parent = &serio->dev;

	set_bit (EV_KEY, input_dev->evbit);		/* We have buttons */
	set_bit (EV_REL, input_dev->evbit);
	set_bit (EV_ABS, input_dev->evbit);
	set_bit (BTN_LEFT, input_dev->keybit);		/* We have 3 buttons */
	set_bit (BTN_MIDDLE, input_dev->keybit);
	set_bit (BTN_RIGHT, input_dev->keybit);
	set_bit (BTN_TOUCH, input_dev->keybit);		/* ...and Tablet */
	set_bit (REL_X, input_dev->relbit);
	set_bit (REL_Y, input_dev->relbit);
	input_set_abs_params (input_dev, ABS_X, 0, 1023, 0, 0);
	input_set_abs_params (input_dev, ABS_Y, 0, 1023, 0, 0);

	serio_set_drvdata (serio, mouse);

	err = serio_open (serio, drv);
	if (err)
		goto fail2;

	/*
	 * Request selftest. Standard packet format and differential
	 * mode will be requested after the device ID'ed successfully.
	 */
	serio->write (serio, 'T'); /* Test */

	err = input_register_device (input_dev);
	if (err)
		goto fail3;

	return 0;

 fail3:	serio_close (serio);
 fail2:	serio_set_drvdata (serio, NULL);
 fail1:	input_free_device (input_dev);
	kfree (mouse);
	return err;
}
开发者ID:johnny,项目名称:CobraDroidBeta,代码行数:59,代码来源:vsxxxaa.c

示例5: spaceball_disconnect

static void spaceball_disconnect(struct serio *serio)
{
	struct spaceball* spaceball = serio_get_drvdata(serio);

	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	input_unregister_device(spaceball->dev);
	kfree(spaceball);
}
开发者ID:smx-smx,项目名称:dsl-n55u,代码行数:9,代码来源:spaceball.c

示例6: iforce_serio_disconnect

static void iforce_serio_disconnect(struct serio *serio)
{
	struct iforce *iforce = serio_get_drvdata(serio);

	input_unregister_device(iforce->dev);
	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	kfree(iforce);
}
开发者ID:KrisChaplin,项目名称:LRT2x4_v1.0.2.06_GPL_source,代码行数:9,代码来源:iforce-serio.c

示例7: nkbd_disconnect

static void nkbd_disconnect(struct serio *serio)
{
	struct nkbd *nkbd = serio_get_drvdata(serio);

	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	input_unregister_device(nkbd->dev);
	kfree(nkbd);
}
开发者ID:AlexShiLucky,项目名称:linux,代码行数:9,代码来源:newtonkbd.c

示例8: vsxxxaa_disconnect

static void vsxxxaa_disconnect(struct serio *serio)
{
	struct vsxxxaa *mouse = serio_get_drvdata(serio);

	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	input_unregister_device(mouse->dev);
	kfree(mouse);
}
开发者ID:Medvedroid,项目名称:OT_903D-kernel-2.6.35.7,代码行数:9,代码来源:vsxxxaa.c

示例9: sunkbd_disconnect

static void sunkbd_disconnect(struct serio *serio)
{
	struct sunkbd *sunkbd = serio_get_drvdata(serio);

	sunkbd_enable(sunkbd, false);
	input_unregister_device(sunkbd->dev);
	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	kfree(sunkbd);
}
开发者ID:Medvedroid,项目名称:OT_903D-kernel-2.6.35.7,代码行数:10,代码来源:sunkbd.c

示例10: dock_keyboard_serio_disconnect

static void dock_keyboard_serio_disconnect(struct serio *serio)
{
	struct dock_keyboard_data *data = serio_get_drvdata(serio);

	pr_debug("kbd: serio_disconnect\n");

	data->serio = NULL;
	serio_close(serio);
	serio_set_drvdata(serio, NULL);
}
开发者ID:nickh186,项目名称:Samsung-GT-P3113-AOSP-CM-Kernel-and-Ramdisk,代码行数:10,代码来源:sec_dock_keyboard.c

示例11: tsc_disconnect

static void tsc_disconnect(struct serio *serio)
{
	struct tsc_ser *ptsc = serio_get_drvdata(serio);

	serio_close(serio);

	input_unregister_device(ptsc->dev);
	kfree(ptsc);

	serio_set_drvdata(serio, NULL);
}
开发者ID:openube,项目名称:android_kernel_sony_c2305,代码行数:11,代码来源:tsc40.c

示例12: fujitsu_disconnect

/*
 * fujitsu_disconnect() is the opposite of fujitsu_connect()
 */
static void fujitsu_disconnect(struct serio *serio)
{
	struct fujitsu *fujitsu = serio_get_drvdata(serio);

	input_get_device(fujitsu->dev);
	input_unregister_device(fujitsu->dev);
	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	input_put_device(fujitsu->dev);
	kfree(fujitsu);
}
开发者ID:CSCLOG,项目名称:beaglebone,代码行数:14,代码来源:fujitsu_ts.c

示例13: pm_disconnect

static void pm_disconnect(struct serio *serio)
{
	struct pm *pm = serio_get_drvdata(serio);

	serio_close(serio);

	input_unregister_device(pm->dev);
	kfree(pm);

	serio_set_drvdata(serio, NULL);
}
开发者ID:openube,项目名称:android_kernel_sony_c2305,代码行数:11,代码来源:penmount.c

示例14: lkkbd_disconnect

/*
 * lkkbd_disconnect() unregisters and closes behind us.
 */
static void lkkbd_disconnect(struct serio *serio)
{
	struct lkkbd *lk = serio_get_drvdata(serio);

	input_get_device(lk->dev);
	input_unregister_device(lk->dev);
	serio_close(serio);
	serio_set_drvdata(serio, NULL);
	input_put_device(lk->dev);
	kfree(lk);
}
开发者ID:Epirex,项目名称:Chrono_Kernel-1,代码行数:14,代码来源:lkkbd.c

示例15: skbd_connect

static int skbd_connect(struct serio *serio, struct serio_driver *drv)
{
    struct skbd *skbd;
    struct input_dev *input_dev;
    int err = -ENOMEM;
    int i;

    skbd = kzalloc(sizeof(struct skbd), GFP_KERNEL);
    input_dev = input_allocate_device();
    if (!skbd || !input_dev)
        goto fail1;

    skbd->serio = serio;
    skbd->dev = input_dev;
    snprintf(skbd->phys, sizeof(skbd->phys), "%s/input0", serio->phys);
    memcpy(skbd->keycode, skbd_keycode, sizeof(skbd->keycode));

    input_dev->name = "Stowaway Keyboard";
    input_dev->phys = skbd->phys;
    input_dev->id.bustype = BUS_RS232;
    input_dev->id.vendor = SERIO_STOWAWAY;
    input_dev->id.product = 0x0001;
    input_dev->id.version = 0x0100;
    input_dev->dev.parent = &serio->dev;

    input_dev->evbit[0] = BIT_MASK(EV_KEY) | BIT_MASK(EV_REP);
    input_dev->keycode = skbd->keycode;
    input_dev->keycodesize = sizeof(unsigned char);
    input_dev->keycodemax = ARRAY_SIZE(skbd_keycode);
    for (i = 0; i < ARRAY_SIZE(skbd_keycode); i++)
        set_bit(skbd_keycode[i], input_dev->keybit);
    clear_bit(0, input_dev->keybit);

    serio_set_drvdata(serio, skbd);

    err = serio_open(serio, drv);
    if (err)
        goto fail2;

    err = input_register_device(skbd->dev);
    if (err)
        goto fail3;

    return 0;

fail3:
    serio_close(serio);
fail2:
    serio_set_drvdata(serio, NULL);
fail1:
    input_free_device(input_dev);
    kfree(skbd);
    return err;
}
开发者ID:CSCLOG,项目名称:beaglebone,代码行数:54,代码来源:stowaway.c


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