Re: [U-Boot] [PATCH] usb: add numeric keypad support to HID driver
> When keys are pressed on the numeric keypad, emit key codes for the > numbers, operators, dot and enter. > > Signed-off-by: Vincent Palatin > --- Hi, what's the status of this patch/patchset? Thanks M ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] usb: add numeric keypad support to HID driver
Hi, 2012/1/9 Vincent Palatin : > When keys are pressed on the numeric keypad, emit key codes for the numbers, > operators, dot and enter. > > Signed-off-by: Vincent Palatin > --- > common/usb_kbd.c | 10 ++ > 1 files changed, 10 insertions(+), 0 deletions(-) Applied to u-boot-usb. Thanks. Kind regards, Remy ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] usb: add numeric keypad support to HID driver
On Mon, Jan 9, 2012 at 15:13, Marek Vasut wrote: >> + /* Numeric keypad */ >> + if ((scancode >= 0x54) && (scancode <= 0x67)) >> + keycode = usb_kbd_num_keypad[scancode - 0x54]; >> + >> if (data->flags & USB_KBD_CTRL) >> keycode = scancode - 0x3; > > This is good, but what happens if you press "Ctrl + numpad_key" ? Check line > 221 > in usb_kbd.c for what I mean. As before the patch, it returns some random uppercase letters. This is broken : IMO not only for those keys, but for all keys excepted A-Z. -- Vincent ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
Re: [U-Boot] [PATCH] usb: add numeric keypad support to HID driver
> When keys are pressed on the numeric keypad, emit key codes for the > numbers, operators, dot and enter. > > Signed-off-by: Vincent Palatin > --- > common/usb_kbd.c | 10 ++ > 1 files changed, 10 insertions(+), 0 deletions(-) > > diff --git a/common/usb_kbd.c b/common/usb_kbd.c > index aaf7d6f..2472d25 100644 > --- a/common/usb_kbd.c > +++ b/common/usb_kbd.c > @@ -87,6 +87,12 @@ static const unsigned char usb_kbd_numkey_shifted[] = { > '|', '~', ':', '"', '~', '<', '>', '?' > }; > > +static const unsigned char usb_kbd_num_keypad[] = { > + '/', '*', '-', '+', '\r', > + '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', > + '.', 0, 0, 0, '=' > +}; > + > /* > * NOTE: It's important for the NUM, CAPS, SCROLL-lock bits to be in this > * order. See usb_kbd_setled() function! > @@ -218,6 +224,10 @@ static int usb_kbd_translate(struct usb_kbd_pdata > *data, unsigned char scancode, keycode = usb_kbd_numkey[scancode - 0x1e]; > } > > + /* Numeric keypad */ > + if ((scancode >= 0x54) && (scancode <= 0x67)) > + keycode = usb_kbd_num_keypad[scancode - 0x54]; > + > if (data->flags & USB_KBD_CTRL) > keycode = scancode - 0x3; This is good, but what happens if you press "Ctrl + numpad_key" ? Check line 221 in usb_kbd.c for what I mean. M ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot
[U-Boot] [PATCH] usb: add numeric keypad support to HID driver
When keys are pressed on the numeric keypad, emit key codes for the numbers, operators, dot and enter. Signed-off-by: Vincent Palatin --- common/usb_kbd.c | 10 ++ 1 files changed, 10 insertions(+), 0 deletions(-) diff --git a/common/usb_kbd.c b/common/usb_kbd.c index aaf7d6f..2472d25 100644 --- a/common/usb_kbd.c +++ b/common/usb_kbd.c @@ -87,6 +87,12 @@ static const unsigned char usb_kbd_numkey_shifted[] = { '|', '~', ':', '"', '~', '<', '>', '?' }; +static const unsigned char usb_kbd_num_keypad[] = { + '/', '*', '-', '+', '\r', + '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', + '.', 0, 0, 0, '=' +}; + /* * NOTE: It's important for the NUM, CAPS, SCROLL-lock bits to be in this * order. See usb_kbd_setled() function! @@ -218,6 +224,10 @@ static int usb_kbd_translate(struct usb_kbd_pdata *data, unsigned char scancode, keycode = usb_kbd_numkey[scancode - 0x1e]; } + /* Numeric keypad */ + if ((scancode >= 0x54) && (scancode <= 0x67)) + keycode = usb_kbd_num_keypad[scancode - 0x54]; + if (data->flags & USB_KBD_CTRL) keycode = scancode - 0x3; -- 1.7.3.1 ___ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot