printk(KERN_INFO "input: %s on %s\n", nkbd_name, serio->phys);
printk(KERN_INFO "input: %s on %s\n", nkbd->dev->name, serio->phys);
static irqreturn_t nkbd_interrupt(struct serio *serio,		unsigned char data, unsigned int flags, struct pt_regs *regs){	struct nkbd *nkbd = serio_get_drvdata(serio);	/* invalid scan codes are probably the init sequence, so we ignore them */	if (nkbd->keycode[data & NKBD_KEY]) {		input_regs(&nkbd->dev, regs);		input_report_key(&nkbd->dev, nkbd->keycode[data & NKBD_KEY], data & NKBD_PRESS);		input_sync(&nkbd->dev);	}	else if (data == 0xe7) /* end of init sequence */		printk(KERN_INFO "input: %s on %s\n", nkbd_name, serio->phys);	return IRQ_HANDLED;}