From nobody Mon Dec 1 20:43:15 2025 X-Original-To: dev-commits-src-all@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpX1gjsz6KKb5 for ; Mon, 01 Dec 2025 20:43:16 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from mxrelay.nyi.freebsd.org (mxrelay.nyi.freebsd.org [IPv6:2610:1c1:1:606c::19:3]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "mxrelay.nyi.freebsd.org", Issuer "R12" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4dKwpW5bgWz4NmK for ; Mon, 01 Dec 2025 20:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TVeFDkxzj+su1LlyUPxSitPe0i025THyYpIOMFf/E1A=; b=O2I6IqIjfkmKG7EPwTqrzupMC58X07UA890E0hD4ndhHc0bQhZ72HCWkGmMEO8pOU+e8Mt ghzj8QjPf+kGQaErCRE4szwXd661lN7r+2OvDMZkeH91im6VOr2rtCmxQG5ya0vFVMKEnJ +0CWnx7jIgaPiyPMWqIkDDbCP9FfC73OE6W7a4NeA3Sqle/Za+muV+bxYFETJj2ZJIjVm3 v3q2GUBOh+6z27iHGVlEY1SLMQT6w4+bna+bH516aIjLkTY+7ZDwZxQDRgugiPAq/sLv2l 39SprbRnh3YbVAQZY8r9+GSq35QAnz3SKQgUDziSUlZufUsZQSHweHlR7aLcww== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=freebsd.org; s=dkim; t=1764621795; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version:content-type:content-type: content-transfer-encoding:content-transfer-encoding; bh=TVeFDkxzj+su1LlyUPxSitPe0i025THyYpIOMFf/E1A=; b=IOkDraEY7Se+ry6zoNZ/7H8wFvHg3Qf9WzpF5kl8dXzX2Ju5Hq38IkVFvo9psm8EKBTtX2 cvxYM+rCIqzMezmnJDz5NSOh7xJaihFSBSI4ePNkieEYBBswth1iPSBOZqngnM4w35f1bH 5rhb20RrM4WmEvtBls8nyzAT5thy59uhC0F/bucbjBxOvhgFuHxLewUssCJAOY5OX66qOE Jav/TQetybcZDyzBPBLABiN/6PFh88/Kfln1PzmeFeW8XDlDeeLf1VnZrPFQLw8+TkYv51 xBw6AajIEDb6j4g2v688IIaW1ewJHgvioLW03KSvrOU74z8pDA05DKiVUAGtIQ== ARC-Seal: i=1; s=dkim; d=freebsd.org; t=1764621795; a=rsa-sha256; cv=none; b=IOH8fbweiQKRC1qbcTxUHG2DFwkaIlLkGi+PUWQchGjaHIEomhrMcGHhXh2q+IkdA7YwDa 4/2DN+XU3VGlbPF51lCFMNMha7b63o/M9+IJj3bffM3SZgQryXf+kDmeJ8P9bdCQn2ULp8 4ET73Xy8+KHUnlqnJGMgf1xJr/7ZHCX4Zw+/tS0A6lA43MqwxqNwQkI2mu05xSwStzA5sU 4vhLpGdrNk3t2xZQYCbgdND+uO3Kxsp/SwLW650qN+3ryJxXzUki06qzmTy3EWxVIxdiqo D3BSiJPEXa2kUPlq3a4CS9dBm/NrgoPn0Ng/asLhCbPBXlRDn4gk+RNSaKpq8g== ARC-Authentication-Results: i=1; mx1.freebsd.org; none Received: from gitrepo.freebsd.org (gitrepo.freebsd.org [IPv6:2610:1c1:1:6068::e6a:5]) by mxrelay.nyi.freebsd.org (Postfix) with ESMTP id 4dKwpW4njYzdGC for ; Mon, 01 Dec 2025 20:43:15 +0000 (UTC) (envelope-from git@FreeBSD.org) Received: from git (uid 1279) (envelope-from git@FreeBSD.org) id 31989 by gitrepo.freebsd.org (DragonFly Mail Agent v0.13+ on gitrepo.freebsd.org); Mon, 01 Dec 2025 20:43:15 +0000 To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-main@FreeBSD.org From: Vladimir Kondratyev Subject: git: 8d9a5d44b155 - main - evdev: Sync event codes with Linux kernel 6.18 List-Id: Commit messages for all branches of the src repository List-Archive: https://lists.freebsd.org/archives/dev-commits-src-all List-Help: List-Post: List-Subscribe: List-Unsubscribe: X-BeenThere: dev-commits-src-all@freebsd.org Sender: owner-dev-commits-src-all@FreeBSD.org MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit X-Git-Committer: wulf X-Git-Repository: src X-Git-Refname: refs/heads/main X-Git-Reftype: branch X-Git-Commit: 8d9a5d44b155af7123893a6948ad7e86b48c57b3 Auto-Submitted: auto-generated Date: Mon, 01 Dec 2025 20:43:15 +0000 Message-Id: <692dfde3.31989.779fec7b@gitrepo.freebsd.org> The branch main has been updated by wulf: URL: https://cgit.FreeBSD.org/src/commit/?id=8d9a5d44b155af7123893a6948ad7e86b48c57b3 commit 8d9a5d44b155af7123893a6948ad7e86b48c57b3 Author: Vladimir Kondratyev AuthorDate: 2025-12-01 20:42:15 +0000 Commit: Vladimir Kondratyev CommitDate: 2025-12-01 20:42:15 +0000 evdev: Sync event codes with Linux kernel 6.18 MFC after: 1 month --- sys/dev/evdev/input-event-codes.h | 28 ++++++++++++++- sys/dev/evdev/input.h | 73 +++++++++++++++++++++++---------------- 2 files changed, 71 insertions(+), 30 deletions(-) diff --git a/sys/dev/evdev/input-event-codes.h b/sys/dev/evdev/input-event-codes.h index 59eb8e104c87..81c88ec86b9b 100644 --- a/sys/dev/evdev/input-event-codes.h +++ b/sys/dev/evdev/input-event-codes.h @@ -39,6 +39,7 @@ #define INPUT_PROP_TOPBUTTONPAD 0x04 /* softbuttons at top of pad */ #define INPUT_PROP_POINTING_STICK 0x05 /* is a pointing stick */ #define INPUT_PROP_ACCELEROMETER 0x06 /* has accelerometer */ +#define INPUT_PROP_PRESSUREPAD 0x07 /* pressure triggers clicks */ #define INPUT_PROP_MAX 0x1f #define INPUT_PROP_CNT (INPUT_PROP_MAX + 1) @@ -531,6 +532,7 @@ #define KEY_NOTIFICATION_CENTER 0x1bc /* Show/hide the notification center */ #define KEY_PICKUP_PHONE 0x1bd /* Answer incoming call */ #define KEY_HANGUP_PHONE 0x1be /* Decline incoming call */ +#define KEY_LINK_PHONE 0x1bf /* AL Phone Syncing */ #define KEY_DEL_EOL 0x1c0 #define KEY_DEL_EOS 0x1c1 @@ -612,8 +614,14 @@ #define BTN_DPAD_LEFT 0x222 #define BTN_DPAD_RIGHT 0x223 +#define BTN_GRIPL 0x224 +#define BTN_GRIPR 0x225 +#define BTN_GRIPL2 0x226 +#define BTN_GRIPR2 0x227 + #define KEY_ALS_TOGGLE 0x230 /* Ambient light sensor */ #define KEY_ROTATE_LOCK_TOGGLE 0x231 /* Display rotation lock */ +#define KEY_REFRESH_RATE_TOGGLE 0x232 /* Display refresh rate toggle */ #define KEY_BUTTONCONFIG 0x240 /* AL Button Configuration */ #define KEY_TASKMANAGER 0x241 /* AL Task/Project Manager */ @@ -629,10 +637,24 @@ #define KEY_CAMERA_ACCESS_ENABLE 0x24b /* Enables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_DISABLE 0x24c /* Disables programmatic access to camera devices. (HUTRR72) */ #define KEY_CAMERA_ACCESS_TOGGLE 0x24d /* Toggles the current state of the camera access control. (HUTRR72) */ +#define KEY_ACCESSIBILITY 0x24e /* Toggles the system bound accessibility UI/command (HUTRR116) */ +#define KEY_DO_NOT_DISTURB 0x24f /* Toggles the system-wide "Do Not Disturb" control (HUTRR94)*/ #define KEY_BRIGHTNESS_MIN 0x250 /* Set Brightness to Minimum */ #define KEY_BRIGHTNESS_MAX 0x251 /* Set Brightness to Maximum */ +/* + * Keycodes for hotkeys toggling the electronic privacy screen found on some + * laptops on/off. Note when the embedded-controller turns on/off the eprivacy + * screen itself then the state should be reported through drm connecter props: + * https://www.kernel.org/doc/html/latest/gpu/drm-kms.html#standard-connector-properties + * Except when implementing the drm connecter properties API is not possible + * because e.g. the firmware does not allow querying the presence and/or status + * of the eprivacy screen at boot. + */ +#define KEY_EPRIVACY_SCREEN_ON 0x252 +#define KEY_EPRIVACY_SCREEN_OFF 0x253 + #define KEY_KBDINPUTASSIST_PREV 0x260 #define KEY_KBDINPUTASSIST_NEXT 0x261 #define KEY_KBDINPUTASSIST_PREVGROUP 0x262 @@ -773,6 +795,9 @@ #define KEY_KBD_LCD_MENU4 0x2bb #define KEY_KBD_LCD_MENU5 0x2bc +/* Performance Boost key (Alienware)/G-Mode key (Dell) */ +#define KEY_PERFORMANCE 0x2bd + #define BTN_TRIGGER_HAPPY 0x2c0 #define BTN_TRIGGER_HAPPY1 0x2c0 #define BTN_TRIGGER_HAPPY2 0x2c1 @@ -932,7 +957,8 @@ #define SW_MUTE_DEVICE 0x0e /* set = device disabled */ #define SW_PEN_INSERTED 0x0f /* set = pen inserted */ #define SW_MACHINE_COVER 0x10 /* set = cover closed */ -#define SW_MAX 0x10 +#define SW_USB_INSERT 0x11 /* set = USB audio device connected */ +#define SW_MAX 0x11 #define SW_CNT (SW_MAX+1) /* diff --git a/sys/dev/evdev/input.h b/sys/dev/evdev/input.h index 3b87101da75f..ce0fb616a3df 100644 --- a/sys/dev/evdev/input.h +++ b/sys/dev/evdev/input.h @@ -142,6 +142,8 @@ struct input_keymap_entry { #define BUS_RMI 0x1D #define BUS_CEC 0x1E #define BUS_INTEL_ISHTP 0x1F +#define BUS_AMD_SFH 0x20 +#define BUS_SDW 0x21 /* * MT_TOOL types @@ -203,20 +205,6 @@ struct ff_condition_effect { int16_t center; /* center of dead zone */ }; -/* - * Force feedback periodic effect types - */ - -#define FF_SQUARE 0x58 -#define FF_TRIANGLE 0x59 -#define FF_SINE 0x5a -#define FF_SAW_UP 0x5b -#define FF_SAW_DOWN 0x5c -#define FF_CUSTOM 0x5d - -#define FF_WAVEFORM_MIN FF_SQUARE -#define FF_WAVEFORM_MAX FF_CUSTOM - struct ff_periodic_effect { uint16_t waveform; uint16_t period; /* ms */ @@ -233,21 +221,14 @@ struct ff_rumble_effect { uint16_t weak_magnitude; /* magnitude of the light motor */ }; -/* - * Force feedback effect types - */ - -#define FF_RUMBLE 0x50 -#define FF_PERIODIC 0x51 -#define FF_CONSTANT 0x52 -#define FF_SPRING 0x53 -#define FF_FRICTION 0x54 -#define FF_DAMPER 0x55 -#define FF_INERTIA 0x56 -#define FF_RAMP 0x57 - -#define FF_EFFECT_MIN FF_RUMBLE -#define FF_EFFECT_MAX FF_RAMP +struct ff_haptic_effect { + uint16_t hid_usage; + uint16_t vendor_id; + uint8_t vendor_waveform_page; + uint16_t intensity; + uint16_t repeat_count; + uint16_t retrigger_period; +}; struct ff_effect { uint16_t type; @@ -262,9 +243,41 @@ struct ff_effect { struct ff_periodic_effect periodic; struct ff_condition_effect condition[2]; /* One for each axis */ struct ff_rumble_effect rumble; + struct ff_haptic_effect haptic; } u; }; +/* + * Force feedback effect types + */ + +#define FF_HAPTIC 0x4f +#define FF_RUMBLE 0x50 +#define FF_PERIODIC 0x51 +#define FF_CONSTANT 0x52 +#define FF_SPRING 0x53 +#define FF_FRICTION 0x54 +#define FF_DAMPER 0x55 +#define FF_INERTIA 0x56 +#define FF_RAMP 0x57 + +#define FF_EFFECT_MIN FF_HAPTIC +#define FF_EFFECT_MAX FF_RAMP + +/* + * Force feedback periodic effect types + */ + +#define FF_SQUARE 0x58 +#define FF_TRIANGLE 0x59 +#define FF_SINE 0x5a +#define FF_SAW_UP 0x5b +#define FF_SAW_DOWN 0x5c +#define FF_CUSTOM 0x5d + +#define FF_WAVEFORM_MIN FF_SQUARE +#define FF_WAVEFORM_MAX FF_CUSTOM + /* * force feedback device properties */ @@ -272,6 +285,8 @@ struct ff_effect { #define FF_GAIN 0x60 #define FF_AUTOCENTER 0x61 +#define FF_MAX_EFFECTS FF_GAIN + #define FF_MAX 0x7f #define FF_CNT (FF_MAX+1)