mirror of
https://github.com/systemd/systemd
synced 2024-09-06 16:56:43 +00:00
Merge pull request #12322 from ljmf00/hwdb-accel-location-patch
Add support for ACCEL_LOCATION udev property to deal with 2 sensors
This commit is contained in:
commit
8b6cd93044
|
@ -57,6 +57,12 @@
|
|||
# automatically flip their output for an upside-down display when the device
|
||||
# is held upright.
|
||||
#
|
||||
# ACCEL_LOCATION=<location>
|
||||
#
|
||||
# where <location> is the location of the sensor. This value could be 'base'
|
||||
# or 'display'. The default, when unset, is equivalent to:
|
||||
# ACCEL_LOCATION=display
|
||||
#
|
||||
# Sort by brand, model
|
||||
|
||||
#########################################
|
||||
|
|
|
@ -126,6 +126,7 @@ def property_grammar():
|
|||
('KEYBOARD_LED_NUMLOCK', Literal('0')),
|
||||
('KEYBOARD_LED_CAPSLOCK', Literal('0')),
|
||||
('ACCEL_MOUNT_MATRIX', mount_matrix),
|
||||
('ACCEL_LOCATION', STRING),
|
||||
)
|
||||
fixed_props = [Literal(name)('NAME') - Suppress('=') - val('VALUE')
|
||||
for name, val in props]
|
||||
|
@ -177,6 +178,10 @@ def check_one_default(prop, settings):
|
|||
if len(defaults) > 1:
|
||||
error('More than one star entry: {!r}', prop)
|
||||
|
||||
def check_one_accel_location(prop, value):
|
||||
if value not in ['base', 'display']:
|
||||
error('Wrong accel location: {!r}', prop)
|
||||
|
||||
def check_one_mount_matrix(prop, value):
|
||||
numbers = [s for s in value if s not in {';', ','}]
|
||||
if len(numbers) != 9:
|
||||
|
@ -219,6 +224,8 @@ def check_properties(groups):
|
|||
check_one_default(prop, parsed.VALUE.SETTINGS)
|
||||
elif parsed.NAME == 'ACCEL_MOUNT_MATRIX':
|
||||
check_one_mount_matrix(prop, parsed.VALUE)
|
||||
elif parsed.NAME == 'ACCEL_LOCATION':
|
||||
check_one_accel_location(prop, parsed.VALUE)
|
||||
elif parsed.NAME.startswith('KEYBOARD_KEY_'):
|
||||
check_one_keycode(prop, parsed.VALUE)
|
||||
|
||||
|
|
Loading…
Reference in a new issue