diff options
author | Mario Limonciello (AMD) <superm1@kernel.org> | 2025-09-09 06:00:06 -0500 |
---|---|---|
committer | Benjamin Tissoires <bentiss@kernel.org> | 2025-09-16 10:24:46 +0200 |
commit | 7d62beb102d6fa9a4e5e874be7fbf47a62fcc4f6 (patch) | |
tree | bd2e0ffe392ba3fac1a54b12e3fde5044d36474a /tools/docs/lib/parse_data_structs.py | |
parent | 02d6eeedbc36d4b309d5518778071a749ef79c4e (diff) |
HID: i2c-hid: Resolve touchpad issues on Dell systems during S4
Dell systems utilize an EC-based touchpad emulation when the ACPI
touchpad _DSM is not invoked. This emulation acts as a secondary
master on the I2C bus, designed for scenarios where the I2C touchpad
driver is absent, such as in BIOS menus. Typically, loading the
i2c-hid module triggers the _DSM at initialization, disabling the
EC-based emulation.
However, if the i2c-hid module is missing from the boot kernel
used for hibernation snapshot restoration, the _DSM remains
uncalled, resulting in dual masters on the I2C bus and
subsequent arbitration errors. This issue arises when i2c-hid
resides in the rootfs instead of the kernel or initramfs.
To address this, switch from using the SYSTEM_SLEEP_PM_OPS()
macro to dedicated callbacks, introducing a specific
callback for restoring the S4 image. This callback ensures
the _DSM is invoked.
Signed-off-by: Mario Limonciello (AMD) <superm1@kernel.org>
Signed-off-by: Benjamin Tissoires <bentiss@kernel.org>
Diffstat (limited to 'tools/docs/lib/parse_data_structs.py')
0 files changed, 0 insertions, 0 deletions