CVS commit: src/sys/dev/hid
Module Name:src Committed By: jdolecek Date: Wed Aug 26 10:34:04 UTC 2020 Modified Files: src/sys/dev/hid: hidkbdmap.c Log Message: for jp keymap map also scan code 49 to right bracket to handle ARCHISS model PR kern/55608 by Shinichi Doyashiki To generate a diff of this commit: cvs rdiff -u -r1.10 -r1.11 src/sys/dev/hid/hidkbdmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hidkbdmap.c diff -u src/sys/dev/hid/hidkbdmap.c:1.10 src/sys/dev/hid/hidkbdmap.c:1.11 --- src/sys/dev/hid/hidkbdmap.c:1.10 Mon Jul 13 09:44:48 2020 +++ src/sys/dev/hid/hidkbdmap.c Wed Aug 26 10:34:03 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hidkbdmap.c,v 1.10 2020/07/13 09:44:48 nia Exp $ */ +/* $NetBSD: hidkbdmap.c,v 1.11 2020/08/26 10:34:03 jdolecek Exp $ */ /* * Copyright (c) 1999,2001 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.10 2020/07/13 09:44:48 nia Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.11 2020/08/26 10:34:03 jdolecek Exp $"); #include #include @@ -171,7 +171,8 @@ Static const keysym_t hidkbd_keydesc_jp[ KC(46), KS_asciicircum, KS_asciitilde, KC(47), KS_at, KS_grave, KC(48), KS_bracketleft, KS_braceleft, -KC(50), KS_bracketright, KS_braceright, +KC(49), /* ARCHISS */ KS_bracketright, KS_braceright, +KC(50), /* other model */ KS_bracketright, KS_braceright, KC(51), KS_semicolon, KS_plus, KC(52), KS_colon, KS_asterisk, KC(53), KS_Zenkaku_Hankaku, /* replace grave/tilde */
CVS commit: src/sys/dev/hid
Module Name:src Committed By: nia Date: Sun Jul 12 13:12:17 UTC 2020 Modified Files: src/sys/dev/hid: hidkbdmap.c Log Message: Add KB_TR for uhid keyboards (it was PS/2 only, this seems wrong) To generate a diff of this commit: cvs rdiff -u -r1.6 -r1.7 src/sys/dev/hid/hidkbdmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hidkbdmap.c diff -u src/sys/dev/hid/hidkbdmap.c:1.6 src/sys/dev/hid/hidkbdmap.c:1.7 --- src/sys/dev/hid/hidkbdmap.c:1.6 Sun Jul 12 12:13:05 2020 +++ src/sys/dev/hid/hidkbdmap.c Sun Jul 12 13:12:17 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hidkbdmap.c,v 1.6 2020/07/12 12:13:05 nia Exp $ */ +/* $NetBSD: hidkbdmap.c,v 1.7 2020/07/12 13:12:17 nia Exp $ */ /* * Copyright (c) 1999,2001 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.6 2020/07/12 12:13:05 nia Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.7 2020/07/12 13:12:17 nia Exp $"); #include #include @@ -670,6 +670,43 @@ static const keysym_t hidkbd_keydesc_br_ KC(52), KS_asciitilde, KS_asciicircum, KS_dead_tilde, KS_dead_circumflex, }; +static const keysym_t hidkbd_keydesc_tr[] = { +/* pos normal shifted altgr shift-altgr */ +KC(12), KS_L5_idotless, KS_I, +KC(20), KS_q, KS_Q, KS_at, +KC(31), KS_2, KS_apostrophe, KS_sterling, +KC(32), KS_3, KS_asciicircum, KS_numbersign, +KC(33), KS_4, KS_plus, KS_dollar, +KC(34), KS_5, KS_percent, KS_onehalf, +KC(35), KS_6, KS_ampersand, +KC(36), KS_7, KS_slash, KS_braceleft, +KC(37), KS_8, KS_parenleft, KS_bracketleft, +KC(38), KS_9, KS_parenright, KS_bracketright, +KC(39), KS_0, KS_equal, KS_braceright, +KC(45), KS_asterisk, KS_question, KS_backslash, +KC(46), KS_minus, KS_underscore, +KC(47), KS_L5_gbreve, KS_L5_Gbreve, KS_dead_diaeresis, +KC(48), KS_udiaeresis, KS_Udiaeresis, KS_asciitilde, +KC(49), KS_comma, KS_semicolon, KS_dead_grave, +KC(50), KS_comma, KS_semicolon, KS_dead_grave, +KC(51), KS_L5_scedilla, KS_L5_Scedilla, KS_dead_acute, +KC(52), KS_i, KS_L5_Idotabove, +KC(53), KS_quotedbl, KS_eacute, +KC(54), KS_odiaeresis, KS_Odiaeresis, +KC(55), KS_ccedilla, KS_Ccedilla, +KC(56), KS_period, KS_colon, +KC(100), KS_less, KS_greater, KS_bar, +KC(230), KS_Mode_switch, KS_Multi_key, +}; + +static const keysym_t hidkbd_keydesc_tr_nodead[] = { +/* pos normal shifted altgr shift-altgr */ +KC(47), KS_L5_gbreve, KS_L5_Gbreve, +KC(49), KS_comma, KS_semicolon, KS_grave, +KC(50), KS_comma, KS_semicolon, KS_grave, +KC(51), KS_L5_scedilla, KS_L5_Scedilla, KS_apostrophe, +}; + #define KBD_MAP(name, base, map) \ { name, base, sizeof(map)/sizeof(keysym_t), map } @@ -706,6 +743,8 @@ const struct wscons_keydesc hidkbd_keyde KBD_MAP(KB_SG | KB_NODEAD, KB_SG, hidkbd_keydesc_sg_nodead), KBD_MAP(KB_SF, KB_SG, hidkbd_keydesc_sf), KBD_MAP(KB_SF | KB_NODEAD, KB_SF, hidkbd_keydesc_sg_nodead), + KBD_MAP(KB_TR, KB_US, hidkbd_keydesc_tr), + KBD_MAP(KB_TR | KB_NODEAD, KB_TR, hidkbd_keydesc_tr_nodead), KBD_MAP(KB_HU, KB_US, hidkbd_keydesc_hu), {0, 0, 0, 0} };
CVS commit: src/sys/dev/hid
Module Name:src Committed By: rhialto Date: Fri Apr 24 13:29:46 UTC 2020 Modified Files: src/sys/dev/hid: hidkbdmap.c Log Message: For usb keyboards with encoding *.swapctrlcaps, keep KS_Cmd1 on the same key as KS_Control_L. This brings them in line with wskbdmap_mfii.c. To generate a diff of this commit: cvs rdiff -u -r1.2 -r1.3 src/sys/dev/hid/hidkbdmap.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hidkbdmap.c diff -u src/sys/dev/hid/hidkbdmap.c:1.2 src/sys/dev/hid/hidkbdmap.c:1.3 --- src/sys/dev/hid/hidkbdmap.c:1.2 Sat Jan 11 21:43:10 2020 +++ src/sys/dev/hid/hidkbdmap.c Fri Apr 24 13:29:46 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hidkbdmap.c,v 1.2 2020/01/11 21:43:10 nia Exp $ */ +/* $NetBSD: hidkbdmap.c,v 1.3 2020/04/24 13:29:46 rhialto Exp $ */ /* * Copyright (c) 1999,2001 The NetBSD Foundation, Inc. @@ -31,7 +31,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.2 2020/01/11 21:43:10 nia Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hidkbdmap.c,v 1.3 2020/04/24 13:29:46 rhialto Exp $"); #include #include @@ -279,8 +279,8 @@ Static const keysym_t hidkbd_keydesc_us_ Static const keysym_t hidkbd_keydesc_swapctrlcaps[] = { /* pos command normal shifted */ -KC(57), KS_Control_L, -KC(224), KS_Cmd1, KS_Caps_Lock, +KC(57), KS_Cmd1, KS_Control_L, +KC(224), KS_Caps_Lock, }; Static const keysym_t hidkbd_keydesc_de[] = {
CVS commit: src/sys/dev/hid
Module Name:src Committed By: msaitoh Date: Wed Mar 11 16:05:31 UTC 2020 Modified Files: src/sys/dev/hid: hid.h Log Message: Use unsgined more. To generate a diff of this commit: cvs rdiff -u -r1.5 -r1.6 src/sys/dev/hid/hid.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hid.h diff -u src/sys/dev/hid/hid.h:1.5 src/sys/dev/hid/hid.h:1.6 --- src/sys/dev/hid/hid.h:1.5 Sun Mar 8 14:09:32 2020 +++ src/sys/dev/hid/hid.h Wed Mar 11 16:05:31 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hid.h,v 1.5 2020/03/08 14:09:32 msaitoh Exp $ */ +/* $NetBSD: hid.h,v 1.6 2020/03/11 16:05:31 msaitoh Exp $ */ /* $FreeBSD: src/sys/dev/usb/hid.h,v 1.7 1999/11/17 22:33:40 n_hibma Exp $ */ /* @@ -96,309 +96,309 @@ int hid_is_collection(const void *, int, #endif /* _KERNEL || _RUMPKERNEL */ /* Usage pages */ -#define HUP_UNDEFINED 0x -#define HUP_GENERIC_DESKTOP 0x0001 -#define HUP_SIMULATION 0x0002 -#define HUP_VR_CONTROLS 0x0003 -#define HUP_SPORTS_CONTROLS 0x0004 -#define HUP_GAMING_CONTROLS 0x0005 -#define HUP_KEYBOARD 0x0007 -#define HUP_LEDS 0x0008 -#define HUP_BUTTON 0x0009 -#define HUP_ORDINALS 0x000a -#define HUP_TELEPHONY 0x000b -#define HUP_CONSUMER 0x000c -#define HUP_DIGITIZERS 0x000d -#define HUP_PHYSICAL_IFACE 0x000e -#define HUP_UNICODE 0x0010 -#define HUP_ALPHANUM_DISPLAY 0x0014 -#define HUP_MONITOR 0x0080 -#define HUP_MONITOR_ENUM_VAL 0x0081 -#define HUP_VESA_VC 0x0082 -#define HUP_VESA_CMD 0x0083 -#define HUP_POWER 0x0084 -#define HUP_BATTERY 0x0085 -#define HUP_BARCODE_SCANNER 0x008b -#define HUP_SCALE 0x008c -#define HUP_CAMERA_CONTROL 0x0090 -#define HUP_ARCADE 0x0091 -#define HUP_VENDOR 0x00ff +#define HUP_UNDEFINED 0xU +#define HUP_GENERIC_DESKTOP 0x0001U +#define HUP_SIMULATION 0x0002U +#define HUP_VR_CONTROLS 0x0003U +#define HUP_SPORTS_CONTROLS 0x0004U +#define HUP_GAMING_CONTROLS 0x0005U +#define HUP_KEYBOARD 0x0007U +#define HUP_LEDS 0x0008U +#define HUP_BUTTON 0x0009U +#define HUP_ORDINALS 0x000aU +#define HUP_TELEPHONY 0x000bU +#define HUP_CONSUMER 0x000cU +#define HUP_DIGITIZERS 0x000dU +#define HUP_PHYSICAL_IFACE 0x000eU +#define HUP_UNICODE 0x0010U +#define HUP_ALPHANUM_DISPLAY 0x0014U +#define HUP_MONITOR 0x0080U +#define HUP_MONITOR_ENUM_VAL 0x0081U +#define HUP_VESA_VC 0x0082U +#define HUP_VESA_CMD 0x0083U +#define HUP_POWER 0x0084U +#define HUP_BATTERY 0x0085U +#define HUP_BARCODE_SCANNER 0x008bU +#define HUP_SCALE 0x008cU +#define HUP_CAMERA_CONTROL 0x0090U +#define HUP_ARCADE 0x0091U +#define HUP_VENDOR 0x00ffU #define HUP_FIDO 0xf1d0U #define HUP_MICROSOFT 0xff00U /* XXX compat */ -#define HUP_APPLE 0x00ff -#define HUP_WACOM 0xff00 +#define HUP_APPLE 0x00ffU +#define HUP_WACOM 0xff00U /* Usages, Power Device */ -#define HUP_INAME 0x0001 -#define HUP_PRESENT_STATUS 0x0002 -#define HUP_CHANGED_STATUS 0x0003 -#define HUP_UPS 0x0004 -#define HUP_POWER_SUPPLY 0x0005 -#define HUP_BATTERY_SYSTEM 0x0010 -#define HUP_BATTERY_SYSTEM_ID 0x0011 -#define HUP_PD_BATTERY 0x0012 -#define HUP_BATTERY_ID 0x0013 -#define HUP_CHARGER 0x0014 -#define HUP_CHARGER_ID 0x0015 -#define HUP_POWER_CONVERTER 0x0016 -#define HUP_POWER_CONVERTER_ID 0x0017 -#define HUP_OUTLET_SYSTEM 0x0018 -#define HUP_OUTLET_SYSTEM_ID 0x0019 -#define HUP_INPUT 0x001a -#define HUP_INPUT_ID 0x001b -#define HUP_OUTPUT 0x001c -#define HUP_OUTPUT_ID 0x001d -#define HUP_FLOW 0x001e -#define HUP_FLOW_ID 0x001f -#define HUP_OUTLET 0x0020 -#define HUP_OUTLET_ID 0x0021 -#define HUP_GANG 0x0022 -#define HUP_GANG_ID 0x0023 -#define HUP_POWER_SUMMARY 0x0024 -#define HUP_POWER_SUMMARY_ID 0x0025 -#define HUP_VOLTAGE 0x0030 -#define HUP_CURRENT 0x0031 -#define HUP_FREQUENCY 0x0032 -#define HUP_APPARENT_POWER 0x0033 -#define HUP_ACTIVE_POWER 0x0034 -#define HUP_PERCENT_LOAD 0x0035 -#define HUP_TEMPERATURE 0x0036 -#define HUP_HUMIDITY 0x0037 -#define HUP_BADCOUNT 0x0038 -#define HUP_CONFIG_VOLTAGE 0x0040 -#define HUP_CONFIG_CURRENT 0x0041 -#define HUP_CONFIG_FREQUENCY 0x0042 -#define HUP_CONFIG_APP_POWER 0x0043 -#define HUP_CONFIG_ACT_POWER 0x0044 -#define HUP_CONFIG_PERCENT_LOAD 0x0045 -#define HUP_CONFIG_TEMPERATURE 0x0046 -#define HUP_CONFIG_HUMIDITY 0x0047 -#define HUP_SWITCHON_CONTROL 0x0050 -#define HUP_SWITCHOFF_CONTROL 0x0051 -#define HUP_TOGGLE_CONTROL 0x0052 -#define HUP_LOW_VOLT_TRANSF 0x0053 -#define HUP_HIGH_VOLT_TRANSF 0x0054 -#define HUP_DELAYBEFORE_REBOOT 0x0055 -#define HUP_DELAYBEFORE_STARTUP 0x0056 -#define HUP_DELAYBEFORE_SHUTDWN 0x0057 -#define HUP_TEST 0x0058 -#define HUP_MODULE_RESET 0x0059 -#define HUP_AUDIBLE_ALRM_CTL 0x005a -#define HUP_PRESENT 0x0060 -#define HUP_GOOD 0x0061 -#define HUP_INTERNAL_FAILURE 0x0062 -#define HUP_PD_VOLT_OUTOF_RANGE 0x0063 -#define HUP_FREQ_OUTOFRANGE 0x0064 -#define HUP_OVERLOAD 0x0065 -#define HUP_OVERCHARGED 0x0066 -#define HUP_OVERTEMPERATURE 0x0067 -#define HUP_SHUTDOWN_REQUESTED
CVS commit: src/sys/dev/hid
Module Name:src Committed By: msaitoh Date: Sun Mar 8 14:09:33 UTC 2020 Modified Files: src/sys/dev/hid: hid.h Log Message: Use unsigned to avoid undefined behavior. Found by kUBSan. To generate a diff of this commit: cvs rdiff -u -r1.4 -r1.5 src/sys/dev/hid/hid.h Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hid.h diff -u src/sys/dev/hid/hid.h:1.4 src/sys/dev/hid/hid.h:1.5 --- src/sys/dev/hid/hid.h:1.4 Mon Mar 2 18:15:28 2020 +++ src/sys/dev/hid/hid.h Sun Mar 8 14:09:32 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hid.h,v 1.4 2020/03/02 18:15:28 christos Exp $ */ +/* $NetBSD: hid.h,v 1.5 2020/03/08 14:09:32 msaitoh Exp $ */ /* $FreeBSD: src/sys/dev/usb/hid.h,v 1.7 1999/11/17 22:33:40 n_hibma Exp $ */ /* @@ -123,8 +123,8 @@ int hid_is_collection(const void *, int, #define HUP_CAMERA_CONTROL 0x0090 #define HUP_ARCADE 0x0091 #define HUP_VENDOR 0x00ff -#define HUP_FIDO 0xf1d0 -#define HUP_MICROSOFT 0xff00 +#define HUP_FIDO 0xf1d0U +#define HUP_MICROSOFT 0xff00U /* XXX compat */ #define HUP_APPLE 0x00ff #define HUP_WACOM 0xff00
CVS commit: src/sys/dev/hid
Module Name:src Committed By: maxv Date: Wed Jan 1 09:40:17 UTC 2020 Modified Files: src/sys/dev/hid: hid.c Log Message: Fix small read overflows when parsing HID tables. Noticed by kASan the other day while I was playing with vHCI. To generate a diff of this commit: cvs rdiff -u -r1.3 -r1.4 src/sys/dev/hid/hid.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hid.c diff -u src/sys/dev/hid/hid.c:1.3 src/sys/dev/hid/hid.c:1.4 --- src/sys/dev/hid/hid.c:1.3 Thu Nov 15 23:01:45 2018 +++ src/sys/dev/hid/hid.c Wed Jan 1 09:40:17 2020 @@ -1,4 +1,4 @@ -/* $NetBSD: hid.c,v 1.3 2018/11/15 23:01:45 jakllsch Exp $ */ +/* $NetBSD: hid.c,v 1.4 2020/01/01 09:40:17 maxv Exp $ */ /* $FreeBSD: src/sys/dev/usb/hid.c,v 1.11 1999/11/17 22:33:39 n_hibma Exp $ */ /* @@ -32,7 +32,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: hid.c,v 1.3 2018/11/15 23:01:45 jakllsch Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hid.c,v 1.4 2020/01/01 09:40:17 maxv Exp $"); #ifdef _KERNEL_OPT #include "opt_usb.h" @@ -149,27 +149,33 @@ hid_get_item(struct hid_data *s, struct } for (;;) { p = s->p; - if (p >= s->end) - return 0; + if (p + 1 > s->end) + return 0; bSize = *p++; + if (bSize == 0xfe) { /* long item */ + if (p + 3 > s->end) +return 0; bSize = *p++; bSize |= *p++ << 8; bTag = *p++; - data = p; - p += bSize; bType = 0xff; /* XXX what should it be */ } else { /* short item */ bTag = bSize >> 4; bType = (bSize >> 2) & 3; bSize &= 3; - if (bSize == 3) bSize = 4; - data = p; - p += bSize; + if (bSize == 3) +bSize = 4; } + + data = p; + if (p + bSize > s->end) + return 0; + p += bSize; + s->p = p; switch(bSize) { case 0:
CVS commit: src/sys/dev/hid
Module Name:src Committed By: ryoon Date: Fri May 25 15:52:46 UTC 2018 Modified Files: src/sys/dev/hid: hidms.c Log Message: Fix HIDMS_DEBUG build To generate a diff of this commit: cvs rdiff -u -r1.1 -r1.2 src/sys/dev/hid/hidms.c Please note that diffs are not public domain; they are subject to the copyright notices on the relevant files. Modified files: Index: src/sys/dev/hid/hidms.c diff -u src/sys/dev/hid/hidms.c:1.1 src/sys/dev/hid/hidms.c:1.2 --- src/sys/dev/hid/hidms.c:1.1 Sun Dec 10 17:03:07 2017 +++ src/sys/dev/hid/hidms.c Fri May 25 15:52:45 2018 @@ -1,4 +1,4 @@ -/* $NetBSD: hidms.c,v 1.1 2017/12/10 17:03:07 bouyer Exp $ */ +/* $NetBSD: hidms.c,v 1.2 2018/05/25 15:52:45 ryoon Exp $ */ /* * Copyright (c) 1998, 2017 The NetBSD Foundation, Inc. @@ -35,7 +35,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: hidms.c,v 1.1 2017/12/10 17:03:07 bouyer Exp $"); +__KERNEL_RCSID(0, "$NetBSD: hidms.c,v 1.2 2018/05/25 15:52:45 ryoon Exp $"); #include #include @@ -211,6 +211,9 @@ hidms_attach(device_t self, struct hidms const struct wsmouse_accessops *ops) { struct wsmousedev_attach_args a; +#ifdef HIDMS_DEBUG + int i; +#endif aprint_normal(": %d button%s%s%s%s%s%s%s%s%s\n", ms->nbuttons, ms->nbuttons == 1 ? "" : "s", ms->flags & HIDMS_W ? ", W" : "",