Hi Stephen, On Tuesday 23 October 2007 15:55, Stephen Hemminger wrote: > + > +static int apanel_setkeycode(struct input_dev *idev, int scancode, int > keycode) > +{ > + struct apanel *ap = idev->private; > + > + if (keycode < 0 || keycode > KEY_MAX) > + return -EINVAL; > + > + if (scancode < 0 || scancode >= MAX_PANEL_KEYS) > + return -EINVAL;
scancode >= idev->keycodemax is prbably better here - we don't want to allow setting keycode for unsupported buttons. > + > + clear_bit(ap->keymap[scancode], idev->keybit); This will not work if one has same code assigned to 2 buttons. Pretty degenerate case, I know... > + ap->keymap[scancode] = keycode; > + set_bit(keycode, idev->keybit); > + return 0; > +} -- Dmitry - 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/