Lines Matching refs:nkbd
59 struct nkbd { struct
69 struct nkbd *nkbd = serio_get_drvdata(serio); in nkbd_interrupt() argument
72 if (nkbd->keycode[data & NKBD_KEY]) { in nkbd_interrupt()
73 input_report_key(nkbd->dev, nkbd->keycode[data & NKBD_KEY], data & NKBD_PRESS); in nkbd_interrupt()
74 input_sync(nkbd->dev); in nkbd_interrupt()
78 printk(KERN_INFO "input: %s on %s\n", nkbd->dev->name, serio->phys); in nkbd_interrupt()
85 struct nkbd *nkbd; in nkbd_connect() local
90 nkbd = kzalloc(sizeof(struct nkbd), GFP_KERNEL); in nkbd_connect()
92 if (!nkbd || !input_dev) in nkbd_connect()
95 nkbd->serio = serio; in nkbd_connect()
96 nkbd->dev = input_dev; in nkbd_connect()
97 snprintf(nkbd->phys, sizeof(nkbd->phys), "%s/input0", serio->phys); in nkbd_connect()
98 memcpy(nkbd->keycode, nkbd_keycode, sizeof(nkbd->keycode)); in nkbd_connect()
101 input_dev->phys = nkbd->phys; in nkbd_connect()
109 input_dev->keycode = nkbd->keycode; in nkbd_connect()
113 set_bit(nkbd->keycode[i], input_dev->keybit); in nkbd_connect()
116 serio_set_drvdata(serio, nkbd); in nkbd_connect()
122 err = input_register_device(nkbd->dev); in nkbd_connect()
131 kfree(nkbd); in nkbd_connect()
137 struct nkbd *nkbd = serio_get_drvdata(serio); in nkbd_disconnect() local
141 input_unregister_device(nkbd->dev); in nkbd_disconnect()
142 kfree(nkbd); in nkbd_disconnect()