Skip to content

Input: re-lift opt-in SP11 pen userspace interfaces - #34

Merged
ooaklee merged 5 commits into
sp11/ubuntu-qcom-x1e-7.2.y-betafrom
sp11/beta-pen-abi
Sep 2, 2026
Merged

Input: re-lift opt-in SP11 pen userspace interfaces#34
ooaklee merged 5 commits into
sp11/ubuntu-qcom-x1e-7.2.y-betafrom
sp11/beta-pen-abi

Conversation

@ooaklee

@ooaklee ooaklee commented Sep 2, 2026

Copy link
Copy Markdown
Owner

Summary

Re-lift the opt-in MSHW0485 heat-frame and HIDRAW iptsd interfaces from upstream-review PR jglathe#84 after the guarded direct-touch prerequisite.

Containment

  • both userspace interfaces remain separate CONFIG_* options
  • registration additionally requires explicit Denali device-tree properties
  • the bridge accepts only the known MSHW0485 SPI devices
  • transport state remains separate from HID client data and recovery is generation-bound

Provenance

Jarrett Schultz remains author of the generic HID SPI bus definition. The binding, driver containment, Denali opt-in, and Ubuntu configuration commits retain Leon Silcott as author. Full audit history is in jglathe#84.

Validation

  • beta integration validator: pass
  • strict checkpatch: 0 errors
  • git diff --check: pass
  • predecessor branch completed targeted object, binding, and DT validation

Pen hover, pressure, tilt, buttons, concurrent touch, recovery, and X1P parity require testing from the complete beta build.

Jarrett Schultz and others added 5 commits September 2, 2026 19:36
If connecting a hid_device with bus field indicating BUS_SPI print out
"SPI" in the debug print.

Macro sets the bus field to BUS_SPI and uses arguments to set vendor
product fields.

[Leon: mirror BUS_SPI in the HID-BPF helper enum used by this tree.]

Link: https://patchew.org/linux/20260609-send-upstream-v4-0-b843d5e6ced3@chromium.org/20260609-send-upstream-v4-2-b843d5e6ced3@chromium.org/
Link: 61bb237
Signed-off-by: Dmitry Antipov <dmanti@microsoft.com>
Reviewed-by: Dmitry Torokhov <dmitry.torokhov@gmail.com>
Signed-off-by: Jingyuan Liang <jingyliang@chromium.org>
Signed-off-by: Leon Silcott <leon@boasi.io>
Describe independent opt-ins for the raw heat-frame misc ABI and the
HIDRAW-only iptsd bridge. Both interfaces remain disabled unless their
matching kernel option and device-tree property are present.

Link: 71e31fa
Link: dc4f260
Signed-off-by: Leon Silcott <leon@boasi.io>
Rework the Surface Pro 11 pen support behind two independent, default-off
feature gates. The heat-frame option builds the versioned misc-device ABI,
while the iptsd option builds the HIDRAW sibling and native pen input path.

Require a matching device-tree property at probe time for each option
before its endpoint can be registered. With both options disabled, retain
the existing touch initialization, falling-edge IRQ handling, and input
path.
Keep the validated IPTS initialization and level-low IRQ cadence confined
to the iptsd opt-in.

Use the controller driver's existing HID-over-SPI transactions and only add
the HID core support needed for the private BUS_SPI child; do not carry the
generic SPI-HID transport.

Link: b805934
Link: c575142
Link: 71e31fa
Link: dc4f260
Link: f1b743c
Link: f831b6c
Link: c05ed50
Link: 133679a
Link: e417f2f
Signed-off-by: Leon Silcott <leon@boasi.io>
Opt both Surface Pro 11 variants into the optional raw heat-frame ABI and
HIDRAW iptsd bridge. The matching default-off kernel options must still be
enabled before either interface is built, while machines outside the shared
Denali DTSI remain unchanged.

Link: 71e31fa
Link: dc4f260
Signed-off-by: Leon Silcott <leon@boasi.io>
Record the two opt-in MSHW0485 feature gates in the qcom-x1e
annotations. Kconfig still defaults both options to n; this Ubuntu
flavour explicitly enables them for Denali, whose device tree must also
opt in before either endpoint registers.

Link: 4c2356a
Depends-on: jglathe#83
Signed-off-by: Leon Silcott <leon@boasi.io>
@ooaklee
ooaklee merged commit c0959b1 into sp11/ubuntu-qcom-x1e-7.2.y-beta Sep 2, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant