Commit Graph
1042 Commits
Author SHA1 Message Date
Luca Boccassi 6859ecd916 hwdb: update rules 2026-09-22 15:12:10 +02:00
Luca Boccassi a491517a09 hwdb: update rules 2026-09-15 12:25:09 +01:00
Lokesh Patel 5698092294 hwdb: add fuzz override for ASUS ROG Strix SCAR 16 touchpad 2026-09-13 19:11:46 +01:00
Edvard Jaegtnes 9efeb4b1d4 hwdb: add fuzz override for Dell Precision 7510 ALPS DualPoint TouchPad (#43747)
Recently switched to Linux on my Dell Precision 7510 and noticed a
jittery/shaking effect when scrolling slowly with the touchpad, across
multiple applications.

libinput measure fuzz reported no fuzz value set for the touchpad's
axes, which explains the jitter (sensor noise being read as real
motion). Used libinput measure fuzz --fuzz=28 to generate and apply a
hwdb override, then confirmed scrolling was smooth afterward.

Added a new entry to hwdb/60-evdev.hwdb for this device:

evdev:name:AlpsPS/2 ALPS DualPoint
TouchPad:dmi:*:svnDellInc.*:pnPrecision7510*:

This is the same touchpad family as #34133 (Dell Latitude E7440), which
hit the same symptom and fix — this PR extends the coverage to the
Precision 7510.
2026-09-13 12:32:33 +01:00
Kevin Charpentier b504aa05fd hwdb: ignore duplicate mic mute key on Lenovo ThinkBook 14 G7 ARP
On the ThinkBook 14 G7 ARP (21MV), ideapad-laptop is bound to both the ACPI
device (VPC2004:00) and the WMI device
(8FC0DE0C-B4E4-43FD-B0F3-8871711C1294) at the same time, and both report the
mic mute key into the same input device ("Ideapad extra buttons") a few
milliseconds apart, with different scan codes: 0x8 from the ACPI path and
0x13e from the WMI path.

Userspace applies the toggle twice, so the microphone returns to its previous
state and the key appears not to work at all. Unmapping the WMI scan code
leaves a single event per keypress, and the key then toggles the microphone
reliably, mic mute LED included.

Note this differs from the ThinkBook 16p G5 IRX entry above, where the
duplicate comes from the AT keyboard; here both events originate from
"Ideapad extra buttons" itself.

This was discussed on platform-driver-x86, where the hwdb approach was
suggested in preference to unbinding the WMI driver.
2026-09-12 04:24:53 +09:00
Méven Car ba50cd0583 hwdb: mark Logitech PRO X 2 LIGHTSPEED as headset
The PRO X 2 LIGHTSPEED wireless dongle (046d:0af7) exposes a sound card
that is not detected as a headset, since the model name provides no
usable hint and the device has no usb.ids entry either. UPower then
reports its battery as an audio-device rather than a headset. Add a
quirk so the form factor is reported correctly.
2026-09-12 00:27:08 +09:00
Muhammed Yakup Özlük 439e6d331d hwdb: add Dell Latitude 5320 accelerometer (#43710)
Add the Dell Latitude 5320 accelerometer modalias to 60-sensor.hwdb and
mark it as a base sensor, enabling correct screen rotation handling for
this convertible model.

Closes #43547
2026-09-10 00:57:46 +09:00
Luca Boccassi 4407ba3a55 hwdb: update autosuspend rules 2026-09-08 20:47:54 +01:00
Luca Boccassi 904ce6ab38 hwdb: update rules 2026-09-08 20:47:54 +01:00
Justin Cabral 726e17a933 hwdb: add MacBookAir9,1 T2 touchpad 2026-09-05 11:26:21 +09:00
Chris Hasiński d57ad97128 hwdb: mark Apple T2 MacBook touchpads as internal 2026-09-04 21:27:45 +01:00
Lucas Adriano Salles 41d4263f50 hwdb: fix Positivo N15WPE-S and N15RPE-S key toggle touchpad and search key (#43602)
Fixes #43601
2026-09-02 00:07:34 +09:00
Luca Boccassi 7021a61392 hwdb: update autosuspend rules 2026-09-01 11:42:23 +02:00
Luca Boccassi 862b093df2 hwdb: update rules 2026-09-01 11:42:23 +02:00
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