Commit Graph
1028 Commits
Author SHA1 Message Date
Andres Diaz f396adf4e9 hwdb: do not tag the G502 X Lightspeed macro interface as a keyboard
Its full keyboard descriptor gets it ID_INPUT_KEYBOARD, which makes
UPower show the mouse battery as a keyboard.
2026-09-01 10:02:33 +01:00
cverorg 91927a2a12 Revert "hwdb: add support for PineTab2 to 60-sensor.hwdb (#35304)"
This reverts commit bc4a027f9c.

The match key names the chip, not the machine. `of:N<name>T<type>C<compatible>`
describes the sensor node, and the Pine64 PineNote carries the same silan
sc7a20 mounted in a different orientation, so it presents an identical
modalias:

    $ cat /sys/bus/iio/devices/iio:device2/../modalias
    of:NaccelerometerT(null)Csilan,sc7a20

On a device-tree machine there is no `/sys/class/dmi/id/modalias` to narrow it
with, so 60-sensor.rules looks up `sensor:modalias:of:...:` with the DMI half
empty and both boards land on the one entry. A second, PineNote-scoped entry
cannot be written: it would carry the same match string and simply shadow the
first.

The entry also overrides a correct value. The PineNote's device tree supplies
the matrix and the kernel publishes it:

    $ cat /sys/bus/iio/devices/iio:device2/mount_matrix
    -1, 0, 0; 0, 1, 0; 0, 0, 1

but udev then replaces it with the PineTab2's, and the four orientations
collapse into two, both landscape -- iio-sensor-proxy only ever reports
`normal` and `bottom-up`, so the display never selects portrait.

Where the kernel supplies a mount matrix, hwdb has nothing to add here; where
it does not, a local hwdb entry remains available. Tested on a PineNote v1.2,
kernel 6.12.11, systemd 257.

Closes #43321
2026-08-31 07:18:52 +09:00
Alperen Kılıç 6ac199824d hwdb: add quirks for Lenovo ThinkBook 16p G5 IRX
The calculator key (Fn + numpad =) emits a press event but never a
release, leaving KEY_CALC permanently held down. Desktop environments
then repeatedly spawn the calculator.

Before:
  MSC_SCAN a1 / KEY_CALC value 1
  (no release for the remaining 24s of the capture)

After:
  MSC_SCAN a1 / KEY_CALC value 1
  MSC_SCAN a1 / KEY_CALC value 0   (14us later)

Scancode 0xd7 (Fn+F4) is an atkbd echo of the mic mute key that
ideapad-laptop already reports as KEY_MICMUTE with a proper
press/release pair. Mapping it to unknown silences the repeated
"Unknown key pressed" kernel messages without affecting the working
key.

Tested on Fedora 44, kernel 7.1.10, BIOS P5CN31WW.
2026-08-27 11:00:56 +01:00
Renan Pagani 3abdd4b711 hwdb: add Acer Nitro ANV15-52 NitroSense button
The NitroSense button on the Acer Nitro V 15 (ANV15-52) emits atkbd
scancode 0xf5, the same as its sibling ANV15-51 (#38415). Map it to
prog1 so it is usable out of the box.

Verified on hardware:
dmi:bvnINSYDECorp.:bvrV1.31:bd06/27/2025:br1.31:efr1.7:svnAcer:pnNitroANV15-52:pvrV1.31:rvnRPL:rnSportage_RTH

evdev capture on "AT Translated Set 2 keyboard":
  EV_MSC MSC_SCAN f5
  EV_KEY KEY_PRESENTATION 425 (via the generic Acer f5 rule)
2026-08-27 11:00:14 +01:00
Luca Boccassi 25c6573345 hwdb: update autosuspend rules 2026-08-26 10:59:01 +01:00
Luca Boccassi 4c172b81cb hwdb: run update tool 2026-08-26 10:59:01 +01:00
Srijan KeshriandRobin Richard Rajan 4d6cea8de6 hwdb: stop lid open toggling airplane mode on HP ENVY x360 Convertible 13 (#43521)
The embedded controller on the HP ENVY x360 Convertible 13 emits atkbd
scancode e057 on every lid open. The generic HP block maps e057 to
KEY_WLAN, which desktop environments bind to the airplane-mode action, so
opening the lid switches off every radio. There is no physical key on this
machine that emits e057, it only ever arrives from the lid.

This is the same firmware behavior already quirked for the HP Spectre
x360 Convertible ("Prevents random airplane mode activation") and the HP
Pavilion Gaming 15-dk1 ("lid keys").

Add the property to the existing ENVY x360 13 record rather than to the
Spectre d7 block. The match line for this model already appears further
down the file, so duplicating it there is rejected by parse-hwdb.

e058 is emitted on lid close but carries no keycode in the generic HP
block, so it is already inert and is left alone here.

Replaces #43495.
Closes #43494.

Co-authored-by: Robin Richard Rajan <robinrichardrajan@gmail.com>
2026-08-26 05:40:36 +09:00
Victor Verdan 03596afe7d hwdb: mark Hangsheng R75 QMK as not a joystick (#43513)
The Hangsheng R75 QMK keyboard (USB 342d:e483) exposes a System
Control interface with ABS capabilities. input_id consequently
classifies the interface as a joystick and sets ID_INPUT_JOYSTICK=1.

This makes desktop environments such as KDE Plasma expose the
keyboard as a game controller.

Setting ID_INPUT_JOYSTICK=0 for this device fixes the classification
while preserving its keyboard, consumer control and system control
functionality.

Affected modalias:
input:b0003v342DpE483e0111-e0,1,3,4,k74,8A,8B,8E,8F,94,AE,E3,F8,161,164,198,1B6,24E,24F,ra10,11,28,m4,lsfw
2026-08-26 01:23:35 +09:00
Hijae Song d669464b2a hwdb: add calibration override for AYANEO Flip KB/DS touchscreen
The Goodix Capacitive TouchScreen on the AYANEO Flip KB reports an
invalid calibration range during boot, due to unreliable I2C
communication with the touch controller early in the boot sequence.
Observed values include ABS_X max as high as 65343 and ABS_Y max as
low as 256, far outside the panel's actual resolution.

Confirmed on real hardware across multiple cold boots that the
controller never reports a correct calibration on its own, including
after forcing driver re-probes via unbind/bind. Override the axis
ranges with the panel's real resolution (1200x1920).

Also covers the Flip DS, mostly identical to the Flip KB apart from a
second screen replacing the keyboard. Not independently verified on
Flip DS hardware, but consistent with a community report of the same
Y-axis maximum (1919) for that model's main display, using a
different (and seemingly non-functional) override syntax.

Note: the panel is also mounted rotated relative to the raw sensor
axes; this entry only fixes the calibration range, not rotation (most
desktop environments handle touch rotation automatically when the
display output is rotated, independent of this).
2026-08-24 12:07:42 +01:00
Stephanie Wilde-Hobbs ac80a8f4f3 hwdb: label Lenovo ThinkPad X1 Tablet Gen 3 trackpoint as pointing stick
The trackpoint of the ThinkPad X1 Tablet Gen 3 detachable keyboard (USB
17EF:60B5) lives in the same HID interface as the touchpad, which is
bound to hid-multitouch. The kernel never sets INPUT_PROP_POINTING_STICK
for it, so input_id classifies the trackpoint as a plain mouse.

Mark it as a pointing stick so libinput applies trackpoint acceleration
instead of the mouse acceleration profile.

The interface also exposes a second mouse node without a middle button;
the modal match keys on the button set (k110,111,112) to select only the
trackpoint node and leave the touchpad and the other mouse node
untouched.
2026-08-20 04:53:28 +09:00
Stephanie Wilde-Hobbs fc08ae472c hwdb: mark Lenovo ThinkPad X1 Tablet Gen 3 touchpad as internal
Similar to d13c07ecd8 and 373a4020d5, 65-integration.rules sets
ID_INPUT_TOUCHPAD_INTEGRATION=external, and libinput skips
disable-while-typing (DWT) for the device.

The touchpad is integrated into a detachable keyboard which isn't usable
on other devices so it should be marked as internal. This enables palm
detection and DWT.
2026-08-20 04:04:16 +09:00
Luca Boccassi aec25f2770 Two HWDB fixes (#43367) 2026-08-12 15:12:58 +01:00
David Tardon 1d75afb798 hwdb: fix modalias
This line matches only if svn is the first field, but DMI modaliases
normally begin with BIOS fields such as bvn/bvr/bd. Use a wildcard like
other similar entries in the file.

Follow-up-for: 0aaea4b376
2026-08-12 13:30:36 +02:00
David Tardon ef3a8760cc hwdb: fix modalias
I'm not sure if these leading zeros matter or not, but the description
at the top of the file clearly says that the numbers are 4-digit. The
author of this entry also mentions evdev:input:b0003v1020p0501* in the
PR that added it.

Follow-up-for: 4ae4470ad9
2026-08-12 12:57:42 +02:00
Timon de Groot 40315add91 hwdb: add Blue Microphones Yeti X (#43363)
This microphone has vendor specific HID controls to control gain,
output, monitoring levels, polar patterns, etc.

Naming is completely based on names reported by the USB device itself
(`manufacturer` and `product`).

Information about this microphone:
- https://micpedia.com/microphone/blue-yeti-x/
- https://www.logitechg.com/en-us/shop/p/yeti-x-professional-microphone
2026-08-12 06:57:38 +09:00
Luca Boccassi fd60772767 Update hwdb
ninja -C build update-hwdb
2026-08-10 10:30:11 +01:00
rashidmya 6b0ae4b168 hwdb: mark Razer BlackShark V3 Pro as headset
The BlackShark V3 Pro wireless dongle (1532:0577) exposes a sound card
that is not detected as a headset, since neither the model name nor the
USB interfaces provide a usable hint. Add a quirk so the form factor is
reported correctly.
2026-08-09 16:44:29 +01:00
Davide Cavalca 5f2ec114b3 hwdb: Make Apple DebugUSB work out-of-box 2026-08-07 14:04:16 +09:00
rodin-ia f807a6f26d hwdb: Add HP EliteBook 845 G7 Fn+F11 airplane mode key mapping
Add a hwdb entry for the HP EliteBook 845 G7 laptop.

The Fn+F11 airplane mode key is reported as KEY_F8 by the atkbd
driver. Map it to !wlan to expose the correct wireless radio switch
event to userspace.
2026-08-06 00:42:07 +01:00
Thomas Kopp a01c001bf3 hwdb: Add accelerometer matrix for SHIFTbook 1
Fixes autorotation on the SHIFTbook 1
2026-08-06 05:42:10 +09:00
Confusedphoton 373a4020d5 hwdb: mark ASUS ROG Flow Z13 (GZ302EA) touchpad as internal
The ASUS ROG Flow Z13 (GZ302EA) keyboard/touchpad (USB 0B05:1A30) is
attached through a USB port that firmware reports as removable.
Because of that, 65-integration.rules sets
ID_INPUT_TOUCHPAD_INTEGRATION=external, and libinput skips
disable-while-typing (DWT) for the device.

The touchpad is physically integrated into the tablet's keyboard
accessory, which has no supported standalone/external use case, so
add a hwdb entry in 70-touchpad.hwdb that overrides
ID_INPUT_TOUCHPAD_INTEGRATION=internal, restoring DWT. This mirrors
the existing Microsoft Surface Type Cover entry, which addresses the
same root cause.
2026-08-06 05:40:32 +09:00
lzwind 855285b07e hwdb: fix Lenovo B570e touchpad ABS ranges for edge scrolling (#43264)
The Lenovo B570e touchpad (ETPS/2 Elantech) reports ABS ranges that
are too wide by default, which makes edge scrolling trigger across
roughly the right half of the touchpad instead of only at the right
edge. Add an evdev hwdb entry in `60-evdev.hwdb` that overrides the
ABS_X/ABS_Y (and the matching MT position) ranges with the calibrated
values, following the same pattern already used for the Lenovo B590
and L430 entries.

Fixes #29666
2026-08-03 13:43:45 +09:00
lzwind bee944044f hwdb: mark Adesso wireless keyboard trackball as trackball (#43263)
The Adesso wireless keyboard with an integrated trackball (MosArt
062a:4101) is identified as a regular mouse, so trackball-style
scrolling does not work out of the box. Add a hwdb entry in
`70-mouse.hwdb` setting `ID_INPUT_TRACKBALL=1` so libinput and other
clients treat the device as a trackball.

Fixes #29609
2026-08-03 13:42:13 +09:00
lzwind d13c07ecd8 hwdb: mark Microsoft Surface Type Cover touchpad as internal (#43262)
The Microsoft Surface Type Cover touchpad (USB 045E:09C0) is attached
through a USB port that firmware reports as removable. Because of that,
`65-integration.rules` sets `ID_INPUT_TOUCHPAD_INTEGRATION=external`,
and libinput skips disable-while-typing (DWT) for the device.

The touchpad is physically integrated into the Type Cover, so add a hwdb
entry in `70-touchpad.hwdb` that overrides
`ID_INPUT_TOUCHPAD_INTEGRATION=internal`, restoring DWT.

Fixes #43256
2026-08-03 13:41:02 +09:00
Rafael Passos bf743de5aa hwdb: Fix Brazilian ABNT2 KEY_RO scancode for HP ProBook x360 435 G7 (#43151)
The physical key between right Shift and right Ctrl (Brazilian ABNT2 ["/
? deg"]) emits scancode 0x4e (KEY_KPPLUS) at boot.
    
Remap the observed 0x4e keycode to KEY_RO so it produces the expected
characters with the Brazilian ABNT2 XKB layout.
2026-07-28 11:07:48 +09:00
Alexander Egorov f63ffc14c7 hwdb: Add accelerometer matrix for OneXPlayer Super X
The BMI260 accelerometer in the OneXPlayer Super X is exposed through
the ACPI BMI0160 ID. Its X and Y axes do not match the built-in display
axes, and no firmware mount matrix is provided.

Add an exact vendor and product DMI match with the matrix verified on
the hardware. The matrix keeps the native landscape position normal and
maps both portrait rotations to the corresponding display orientation.

Tested with iio-sensor-proxy 3.8 and Mutter 49.7 in all display
orientations. The compiled hwdb entry also matches the complete modalias
reported by the device.

Development of this patch used assistance from ChatGPT 5.6 sol.
2026-07-28 10:14:57 +09:00
Alexandre Saou 4ae4470ad9 hwdb: add numlock mapping for PATEN/Labtec USB Numpad 2026-07-23 17:41:24 +01:00
Julian Bouzas 3bc3b6c6e7 hwdb: classify PlayStation controller audio as controller form-factor
Add Sony PlayStation controller entries to 70-sound-card.hwdb so that their
ALSA sound devices are tagged with SOUND_FORM_FACTOR=controller:
 - DualSense (054c:0ce6)
 - DualSense Edge (054c:0df2)
 - DualShock 4 CUH-ZCT1x (054c:05c4)
 - DualShock 4 CUH-ZCT2x (054c:09cc)

These controllers expose USB audio but are neither headsets nor speakers.
Pinning them in the hwdb ensures they are identified correctly before any
fallback matching occurs.
2026-07-21 07:30:37 +09:00
Hans de Goede 641c7026d7 hwdb: sensor: Add Odys Windesk X10 accel mount matrix
Add a mount matrix for the accelerometer on the Odys Windesk X10 tablet to
fix auto-rotation.
2026-07-12 13:27:15 +01:00
Matthew Schwartz 5f6ad50d20 hwdb: add MSI Claw 8 EX AI+ CG3EM to keyboard hwdb list 2026-07-07 09:51:27 +01:00
Nicholas Lim 67f72f1765 hwdb: Make Amlogic burn mode work out-of-box 2026-07-04 14:10:38 +01:00
Matthias P. Walther 7961b4a78d hwdb: map mic-mute key on Logitech K950 (Bluetooth)
The mic-mute key on the Logitech K950 keyboard (046D:B388, Bluetooth)
emits BTN_0 (scancode 0x100e1) instead of a usable key, so it does
nothing under GNOME/KDE. Map it to KEY_MICMUTE, its intended function.

Scancode determined with evtest on the device.
2026-07-04 00:32:49 +01:00
dirhamtriyadi 71c6c88606 hwdb: add touchpad toggle mapping for MSI Katana GF66 12UD 2026-06-26 16:21:20 +01:00
Fede2782 313986f21d hwbd: correctly map Bluetooth Key on MSI Modern 15 H AI C1MG laptop
Previously the key was unknown so add the correct mapping as it does not follow the general
case for MSI Laptops.

  [  192.562000] atkbd serio0: Unknown key released (translated set 2, code 0xd7 on isa0060/serio0).
  [  192.562011] atkbd serio0: Use 'setkeycodes e057 <keycode>' to make it known.

Add it currently as a definition specific for this model but can be generalized to other MSI
Laptops if this issue is present also elsewhere.
2026-06-26 09:35:30 +01:00
LucasTavaresA b48228a559 hwdb: map Brazilian ThinkPad T14 Gen 1 slash key to KEY_RO
On Lenovo ThinkPad T14 Gen 1 AMD model 20UES5TQ00 with the Brazilian
keyboard, the physical slash/question key reports as KEY_RIGHTCTRL.

This keyboard layout has no physical Right Ctrl key in that position. The
key after Space is AltGr, then PrtSc, then the slash/question key. Map the
AT keyboard scancode 0x9d to KEY_RO, matching the ABNT slash/question key
used by Brazilian keyboard layouts.

Verified with evtest:

Event: type 4 (EV_MSC), code 4 (MSC_SCAN), value 9d
Event: type 1 (EV_KEY), code 97 (KEY_RIGHTCTRL), value 1

After applying the hwdb mapping, the key reports as KEY_RO.

DMI: svnLENOVO:pn20UES5TQ00:pvrThinkPadT14Gen1
AT keyboard scancode: 0x9d
2026-06-24 15:37:27 +01:00
Pranay Pawar ed7119960a hwdb: Map Acer Nitro AN515-58 NitroSense button to prog1
The Acer Nitro AN515-58 has a dedicated NitroSense button (scan code
0xf5) with no entry in its device-specific block. It currently falls
through to the generic Acer rule:

  KEYBOARD_KEY_f5=presentation

This is semantically wrong — the button has no relation to
presentation mode. Other Nitro models (AN515-47, AN517-54, ANV15-51)
already map it to prog1 (XF86Launch1), making it a user-programmable
button that desktop environments (KDE, GNOME, etc.) can bind to any
action.

Add the same mapping for AN515-58 for consistency:

  KEYBOARD_KEY_f5=prog1   # NitroSense button

Tested on Acer Nitro AN515-58 with Linux 7.0.12 and KDE Plasma 6.7
2026-06-21 10:17:47 +01:00
Luca Boccassi 7c1f7c54c9 Update hwdb autosuspend
ninja -C build update-hwdb-autosuspend
2026-06-19 19:08:35 +01:00
Luca Boccassi 0453506073 Update hwdb
ninja -C build update-hwdb
2026-06-19 19:08:35 +01:00
doof 0a0aa429d3 Steam deck lcd screen is a tablet LCD rotated in the kernel
into portrait mode.

The IMU is not active in lizard mode. The command below disables
lizard mode and activates the IMU.

echo N | sudo tee /sys/module/hid_steam/parameters/lizard_mode

Closes #42586
2026-06-17 10:17:06 +01:00
Luca Boccassi 9decc099ce Update hwdb autosuspend
ninja -C build update-hwdb-autosuspend
2026-06-16 17:57:06 +01:00
Luca Boccassi b8fbcbf2b7 Update hwdb
ninja -C build update-hwdb
2026-06-16 17:57:06 +01:00
guido fc06cd756e Add Elecom Huge Plus information for wired usb, wireless usb, and bluetooth 2026-06-16 10:13:42 +02:00
LuK1337 8d846837fc hwdb: Make Samsung download mode work out-of-the-box
https://github.com/Benjamin-Dobell/Heimdall/blob/3997d5cc607e6c603c6e7c0d07e42e9868c62af2/heimdall/source/BridgeManager.h#L69-L79
2026-06-15 08:20:14 +09:00
Chitoku 045e8f1c7b hwdb: add IMDS properties for Vultr 2026-06-14 10:34:58 +01:00
Chitoku 85afe8e82d vsock-util: allow VMADDR_CID_ANY as local CID if enabled in hwdb
On Hyper-V guests, `VMADDR_CID_ANY` is valid as per implementation in
kernel driver: net/vmw_vsock/hyperv_transport.c.

Fixes https://github.com/systemd/systemd/issues/42496

Follow-up for 83359c4da0
2026-06-13 15:54:50 +02:00
mburucuyapy 047dd36e77 Update 60-sensor.hwdb - Add support for Juno Tab 4 (Wifi) 2026-06-10 16:38:35 +01:00
Matthew Schwartz 852c7d1a96 hwdb: fix match for MSI Claw entries
This no longer matched with any MSI Claw device after c65efd4145
("(hwdb) Update MSI Claw Entries") because of the modalias structure:

dmi:bvnAmericanMegatrendsInternational,LLC.:bvrE1T52IMS.112:bd12/04/2025:br1.18:svnMicro-StarInternationalCo.,Ltd.:pnClaw8AI+A2VM:pvrREV1.0:rvnMicro-StarInternationalCo.,Ltd.:rnMS-1T52:rvrREV1.0:cvnMicro-StarInternationalCo.,Ltd.:ct30:cvrN/A:sku1T52.1:

Fix this by matching against board vendor field rather than system
vendor.

Reviewed-by: Derek J. Clark <derekjohn.clark@gmail.com>
Signed-off-by: Matthew Schwartz <matthew.schwartz@linux.dev>
2026-06-05 09:40:11 +01:00
Moisticules 273267cbad Update 60-sensor.hwdb
Correction of matrix for GPD MicroPC 2
2026-06-04 10:27:20 +01:00
Derek J. Clark c65efd4145 (hwdb) Update MSI Claw Entries
- Add support for MSI Claw A8 BZ2EM.
- Switch to using rn vice pn as MSI uses a unique pn for variants of the
  same model. This prevents needing to update this file when a low volume
  variant is released (I.E. Polar White AI 8+).
2026-06-04 10:26:51 +01:00
AsciiWolf 7bce482c35 hwdb: add Griffin PowerMate 2026-06-03 22:23:53 +01:00