On Thu, Jan 31, 2008 at 01:18:22AM +0800, Bryan Wu wrote: > +static irqreturn_t opencores_kbd_isr(int irq, void *dev_id) > +{ > + unsigned char c; > + struct platform_device *pdev = dev_id; > + struct opencores_kbd *opencores_kbd = platform_get_drvdata(pdev); > + struct input_dev *input = opencores_kbd->input; > + > + c = readb(opencores_kbd->addr_res->start); > + input_report_key(input, c & 0x7f, c & 0x80 ? 0 : 1); > + input_sync(input); > + > + return IRQ_HANDLED; > +} This looks utterly wrong: It assumes 1:1 mapping between Linux keycodes and what the keyboard sends, which I can't believe is the case.
-- Vojtech Pavlik Director SuSE Labs -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/