]> git.ipfire.org Git - thirdparty/systemd.git/commitdiff
hwdb: update to main@{2026-04-14}
authorLuca Boccassi <luca.boccassi@gmail.com>
Tue, 14 Apr 2026 08:47:04 +0000 (09:47 +0100)
committerLuca Boccassi <luca.boccassi@gmail.com>
Tue, 14 Apr 2026 16:32:02 +0000 (17:32 +0100)
The addition of hwdb.d/40-imds.hwdb is dropped. (Corresponding changes
in hwdb_parse.py are kept, they are not a problem.)

hwdb.d/60-input-id.hwdb
hwdb.d/60-keyboard.hwdb
hwdb.d/60-sensor.hwdb
hwdb.d/70-sound-card.hwdb
hwdb.d/parse_hwdb.py

index d32bfedf59416ad59c26c89559b417e632b25d73..700e7ee264ba6ebd12d5a405ad4111f92781226d 100644 (file)
@@ -67,6 +67,11 @@ id-input:modalias:input:b0003v07C0p1125*
  ID_INPUT_MOUSE=
  ID_INPUT_JOYSTICK=1
 
+# Cooler Master ARGB GEN-2 controller
+id-input:modalias:input:b0003v2516p01C9*
+ ID_INPUT=0
+ ID_INPUT_MOUSE=0
+
 # GOLD WARRIOR SIM PhoenixRC 10411R
 id-input:modalias:input:b0003v1781p0898*
  ID_INPUT_ACCELEROMETER=
@@ -118,3 +123,7 @@ id-input:modalias:input:b0003v26CEp01A2*
 # Saitek PLC Pro Flight Rudder Pedals
 id-input:modalias:input:b0003v06A3p0763*
  ID_INPUT_JOYSTICK=1
+
+# PXN HB S handbrake
+id-input:modalias:input:b0003v11FFpA701*
+ ID_INPUT_JOYSTICK=1
index 59aeef6b6f85733eff2522ab1ed9b63054163878..771b7dc43e4777dbe66ae6061b820c51619ba55a 100644 (file)
@@ -242,6 +242,12 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*515-58:pvr*
  KEYBOARD_KEY_8a=micmute                                # Microphone mute button
  KEYBOARD_KEY_55=power
 
+# Nitro AN517-54
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*AN*517-54:pvr*
+ KEYBOARD_KEY_8a=micmute                                # Fn+F7; Microphone mute button
+ KEYBOARD_KEY_f5=prog1                                  # NitroSense button
+ KEYBOARD_KEY_55=power
+
 # Nitro ANV15-51
 evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAcer*:pnNitro*ANV*15-51:pvr*
  KEYBOARD_KEY_66=micmute                                # Microphone mute button
@@ -320,7 +326,6 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnAYANEO:pnKUN:pvr*
 # multi-scancode sequence. The specific preceding codes
 # depend on the model, but the final scancode is always the
 # same.
-evdev:name:AT Translated Set 2 keyboard:dmi:*:svnAYA NEO:*
 evdev:name:AT Translated Set 2 keyboard:dmi:*:svnAYADEVICE:*
 evdev:name:AT Translated Set 2 keyboard:dmi:*:svnAYANEO:*
  KEYBOARD_KEY_66=f15                                    # LC (All models)
@@ -1209,6 +1214,11 @@ evdev:name:AT Raw Set 2 keyboard:dmi:*:svnLENOVO:pn83N0:*
 evdev:name:AT Raw Set 2 keyboard:dmi:*:svnLENOVO:pn83N1:*
  KEYBOARD_KEY_20=f16 # Power button long press
 
+# Lenovo Thinkpad T14s Gen 6 (Snapdragon)
+evdev:name:hid-over-i2c 04F3:000D Keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO:pn21N1*:*
+evdev:name:hid-over-i2c 04F3:000D Keyboard:dmi:bvn*:bvr*:bd*:svnLENOVO:pn21N2*:*
+ KEYBOARD_KEY_70072=unknown # Silence spurious F23 key-press report from Fn key
+
 ###########################################################
 # LG
 ###########################################################
@@ -2157,6 +2167,14 @@ evdev:atkbd:dmi:bvn*:bvr*:bd*:svnVIA:pnK8N800:*
 evdev:name:SIPODEV USB Composite Device:dmi:bvn*:bvr*:bd*:svnVIOS:pnLTH17:*
  KEYBOARD_KEY_70073=touchpad_toggle                     # Touchpad toggle
 
+###########################################################
+# Wareus
+###########################################################
+
+# Wareus B15 (8AD5A)
+evdev:atkbd:dmi:bvn*:bvr*:bd*:svnWareus*:pnB15*:*
+ KEYBOARD_KEY_55=fn
+
 ###########################################################
 # WeiHeng
 ###########################################################
@@ -2184,6 +2202,14 @@ evdev:name:FTSC1000:00 2808:509C Keyboard:dmi:*:svnXiaomiInc:pnMipad2:*
 evdev:atkbd:dmi:bvnTIMI*:bvr*:bd*:svnTIMI*:pnMiNoteBookPro*:*
  KEYBOARD_KEY_72=macro
 
+###########################################################
+# X+
+###########################################################
+
+# X+ piccolo series 81X (Intel N305, possibly more)
+evdev:input:b0011v0001p0001eAB83*
+ KEYBOARD_KEY_9c=enter                                  # KP_enter in the main area is wrong
+
 ###########################################################
 # Zepto
 ###########################################################
index 75fc9428a15babdefc7b21451269247998a11a82..a8e990de97913a1494f6cf7c88ffc4a5a2d0d680 100644 (file)
@@ -114,10 +114,10 @@ sensor:modalias:acpi:BMA250E:*:dmi:*:svnAcer:*:rnAigner:*       # Iconia Tab 8W
 #########################################
 
 sensor:modalias:acpi:MXC6655:*:dmi:*:svnAquarius:pnNS483:*       # Cmp NS483
-sensor:modalias:acpi:MXC4005:*:dmi:*:svnAquarius:pnCmpNS483:*    # Cmp NS483 v2
+sensor:modalias:acpi:MXC4005:*:dmi:*:svnAquarius:pnCmpNS483:*    # Cmp NS483 v2 (MXC4005 accel)
  ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
 
-sensor:modalias:acpi:MXC6655:*:dmi:*:svnAquarius:pnCmpNS483:*    # Cmp NS483 v2
+sensor:modalias:acpi:MXC6655:*:dmi:*:svnAquarius:pnCmpNS483:*    # Cmp NS483 v2 (MXC6655 accel)
  ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, -1, 0; 0, 0, 1
 
 #########################################
@@ -221,8 +221,8 @@ sensor:modalias:acpi:KIOX010A:*:dmi:*:svnAMI:*:skuH8Y6:*    # MaxBook Y14
 # BNCF
 #########################################
 
-sensor:modalias:acpi:NSA2513:*:dmi:*:svnBNCF:pnNewBook11:*    # NewBook 11 2-in-1
- ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, -1
+sensor:modalias:acpi:NSA2513:*:dmi:*:svnBNCF:pnNewBook11:*    # NewBook 11 2-in-1: Panel at -90 degrees. No ACPI in_mount_matrix.
+ ACCEL_MOUNT_MATRIX=0, 1, 0; -1, 0, 0; 0, 0, 1
 
 #########################################
 # BUSH
@@ -519,10 +519,10 @@ sensor:modalias:acpi:MXC6655:*:dmi:*:svnGPD:pnG1621-02:*    # Pocket 3
 sensor:modalias:acpi:MXC6655:*:dmi:*:svnGPD:pnG1628-04:*    # Pocket 4
  ACCEL_MOUNT_MATRIX=-1, 0, 0; 0, 1, 0; 0, 0, 1
 
-sensor:modalias:acpi:BMI0160:*:dmi:*:svnGPD:pnG1619*:*      # WinMax2
+sensor:modalias:acpi:BMI0160:*:dmi:*:svnGPD:pnG1619-04:*    # Win Max 2
  ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, 1
 
-sensor:modalias:acpi:MXC6655:*:dmi:*:svnGPD:pnG1688-*:*     # MicroPC 2
+sensor:modalias:acpi:MXC6655:*:dmi:*:svnGPD:pnG1688-08:*    # MicroPC 2
  ACCEL_MOUNT_MATRIX=0, -1, 0; -1, 0, 0; 0, 0, -1
 
 #########################################
index 4c53a861ecc34d142e20f302893feb30c1c1d3b1..03a0a5eefc28c62c5fc9ab1f1a64bdba69767e97 100644 (file)
@@ -69,6 +69,11 @@ usb:v1038p227A*
 usb:v1038p22A1*
 usb:v1038p227E*
 usb:v1038p229E*
+usb:v1038p22AD*
+usb:v1038p22A9*
+usb:v1038p22A4*
+usb:v1038p22A5*
+usb:v1038p22A7*
 usb:v1038p12E0*
 usb:v1038p12E5*
  SOUND_FORM_FACTOR=headset
index e98510839b73fc65c6b2f772161059ee994f5403..e70b0ff04e94ecd5971a891bd5a1488898b34619 100755 (executable)
@@ -125,7 +125,7 @@ def hwdb_grammar():
     matchline = (matchline_typed | matchline_general) + EOL
 
     propertyline = (White(' ', exact=1).suppress() +
-                    Combine(UDEV_TAG - '=' - Optional(Word(alphanums + '_=:@*.!-;, "/'))
+                    Combine(UDEV_TAG - '=' - Optional(Word(alphanums + '_=:@*.!-;, "/?&'))
                             - Optional(pythonStyleComment)) +
                     EOL)
     propertycomment = White(' ', exact=1) + pythonStyleComment + EOL
@@ -215,6 +215,24 @@ def property_grammar():
              ('ID_NET_NAME_FROM_DATABASE', name_literal),
              ('ID_NET_NAME_INCLUDE_DOMAIN', zero_one),
              ('TPM2_BROKEN_NVPCR', zero_one),
+             ('IMDS_VENDOR', name_literal),
+             ('IMDS_TOKEN_URL', name_literal),
+             ('IMDS_REFRESH_HEADER_NAME', name_literal),
+             ('IMDS_DATA_URL', name_literal),
+             ('IMDS_DATA_URL_SUFFIX', name_literal),
+             ('IMDS_TOKEN_HEADER_NAME', name_literal),
+             ('IMDS_EXTRA_HEADER', name_literal),
+             ('IMDS_ADDRESS_IPV4', name_literal),
+             ('IMDS_ADDRESS_IPV6', name_literal),
+             ('IMDS_KEY_HOSTNAME', name_literal),
+             ('IMDS_KEY_REGION', name_literal),
+             ('IMDS_KEY_ZONE', name_literal),
+             ('IMDS_KEY_IPV4_PUBLIC', name_literal),
+             ('IMDS_KEY_IPV6_PUBLIC', name_literal),
+             ('IMDS_KEY_SSH_KEY', name_literal),
+             ('IMDS_KEY_USERDATA', name_literal),
+             ('IMDS_KEY_USERDATA_BASE', name_literal),
+             ('IMDS_KEY_USERDATA_BASE64', name_literal),
             )
     fixed_props = [Literal(name)('NAME') - Suppress('=') - val('VALUE')
                    for name, val in props]