Re: [PATCH v3 0/5] Add SW_TABLET_MODE support for AMD SFH convertibles
Jiri Kosina <[email protected]>
| Newsgroups | org.kernel.vger.linux-input |
|---|---|
| Message-ID | <[email protected]> |
On Mon, 3 Aug 2026, Basavaraj Natikar wrote: > Add SW_TABLET_MODE support for AMD convertibles whose operating mode > (laptop or tablet) is reported by the Sensor Fusion Hub. > > Patches 1 and 2 are preparation: the first tracks the MP2 version > explicitly and the second serializes access to the shared emp2 pointer. > The third adds a way to read the operating mode. The fourth registers an > auxiliary device when the sensor is present, and the fifth is a small > input driver that binds to it and reports the posture to userspace. > Keeping the input handling in its own driver avoids pulling input/evdev > into the sensor transport driver. > > Changes in v3: > - Destroy the tablet-mode auxiliary device before the hardware teardown > in .remove(), instead of from a devres action that runs afterwards, > closing a use-after-teardown window (Sashiko review). > - Move the Makefile entry to its correct alphabetical position > (Dmitry Torokhov). > > Changes in v2 (address the Sashiko review of v1): > - Read the operating-mode register only on confirmed MP2 v2, by tracking > the MP2 version explicitly. On v1.0 that register overlaps the 64-bit > DMA address programmed through C2P, so the earlier unconditional read > could return DMA bits instead of the operating mode. > - Serialize the shared emp2 pointer and all exported readers under a > mutex, so a concurrent unbind can no longer free the device while a > reader is still dereferencing it. > - Publish emp2 only after initialization has populated the client data, > and clear it early on the MP2 v2 remove path instead of from a > prematurely registered devres action; this removes both the > publish-before-init data race and the unconditional global clear on a > probe failure. > - Destroy the tablet-mode auxiliary device and release its id on removal, > and allocate the id dynamically so multiple instances cannot collide. > - Report the initial tablet-mode state before registering the input > device, so userspace never observes a stale default posture. > - Rename the error variable from 'rc' to 'error' to follow the > input-subsystem convention. > > v2: https://lore.kernel.org/all/[email protected]/ > v1: https://lore.kernel.org/all/[email protected]/ Now queued in hid.git#for-7.3/amd-sfh, sorry for the delay. Myself and Benjamin have been on a few weeks on leave in parallel, and then didn't really help with the throughput ... still recovering :) -- Jiri Kosina SUSE Labs