From: Dave Carey <carvsdriver@gmail.com>
To: platform-driver-x86@vger.kernel.org
Cc: johannes.goede@oss.qualcomm.com, mpearson-lenovo@squebb.ca,
ilpo.jarvinen@linux.intel.com, armin.wolf@outlook.de,
linux-kernel@vger.kernel.org, Dave Carey <carvsdriver@gmail.com>
Subject: [PATCH v7 0/2] platform/x86/lenovo: Add Yoga Book 9 keyboard dock detection driver
Date: Tue, 9 Jun 2026 17:26:29 -0400 [thread overview]
Message-ID: <20260609212631.925943-1-carvsdriver@gmail.com> (raw)
In-Reply-To: <20260608215205.678182-1-carvsdriver@gmail.com>
This series adds keyboard dock detection for the Lenovo Yoga Book 9
14IAH10 and fixes a pre-existing SW_TABLET_MODE conflict that the new
driver exposes.
Patch 1/2 fixes lenovo-ymc: it registers an input node advertising
SW_TABLET_MODE on the Yoga Book 9, but so does patch 2/2. Userspace
(GNOME) reads SW_TABLET_MODE at login from every input node that
advertises the capability and does not tolerate two such nodes. The fix
returns -ENODEV in lenovo-ymc probe() for this hardware; the
ymc_ec_trigger EC write is separately gated by a DMI table that already
excludes this machine, so no other functionality is affected.
Patch 2/2 is the keyboard dock driver.
Changes since v6:
- Use wmidev_query_block() in place of deprecated wmidev_block_query().
Use __free(kfree) to manage the output buffer; simplify the parsing
to a single length check now that the WMI core handles type conversion.
- Define BKBD_FIELD with GENMASK() and extract the field with FIELD_GET()
instead of open-coded masking.
- Use guard(mutex) for all lock/unlock pairs.
- Add yb9_kbdock_sync_locked() helper to consolidate the duplicated
initial-state read pattern in event_probe, block_probe, and resume.
- Add linux/bitfield.h, linux/cleanup.h, linux/slab.h includes.
- Fix comment on struct mutex field; use Context:/Returns: sections in
the kerneldoc comment for yb9_kbdock_query_locked().
Dave Carey (2):
platform/x86/lenovo: lenovo-ymc: Suppress probe on Yoga Book 9 14IAH10
platform/x86/lenovo: Add Yoga Book 9 keyboard dock detection driver
.../testing/sysfs-driver-lenovo-yb9-kbdock | 19 +
MAINTAINERS | 7 +
drivers/platform/x86/lenovo/Kconfig | 14 +
drivers/platform/x86/lenovo/Makefile | 1 +
drivers/platform/x86/lenovo/yb9-kbdock.c | 317 ++++++++++++++++++
drivers/platform/x86/lenovo/ymc.c | 19 +++++++++++++++
6 files changed, 377 insertions(+)
--
2.54.0
next prev parent reply other threads:[~2026-06-09 21:26 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20260521144034.282419-1-carvsdriver@gmail.com>
2026-05-27 12:27 ` [PATCH v5] platform/x86/lenovo: Add Yoga Book 9 keyboard dock detection driver Dave Carey
2026-06-08 9:13 ` johannes.goede
2026-06-08 12:52 ` Dave Carey
2026-06-08 15:55 ` johannes.goede
2026-06-08 19:05 ` Dave Carey
2026-06-08 19:23 ` johannes.goede
2026-06-08 21:52 ` [PATCH v6 0/2] " Dave Carey
2026-06-08 21:52 ` [PATCH v6 1/2] platform/x86/lenovo: lenovo-ymc: Suppress probe on Yoga Book 9 14IAH10 Dave Carey
2026-06-09 1:29 ` Mark Pearson
2026-06-09 1:29 ` Mark Pearson
2026-06-09 8:50 ` johannes.goede
2026-06-08 21:52 ` [PATCH v6 2/2] platform/x86/lenovo: Add Yoga Book 9 keyboard dock detection driver Dave Carey
2026-06-09 8:50 ` johannes.goede
2026-06-09 9:47 ` Ilpo Järvinen
2026-06-09 21:26 ` Dave Carey [this message]
2026-06-09 21:26 ` [PATCH v7 1/2] platform/x86/lenovo: lenovo-ymc: Suppress probe on Yoga Book 9 14IAH10 Dave Carey
2026-06-10 8:00 ` johannes.goede
2026-06-09 21:26 ` [PATCH v7 2/2] platform/x86/lenovo: Add Yoga Book 9 keyboard dock detection driver Dave Carey
2026-06-10 8:36 ` johannes.goede
2026-06-10 8:44 ` Ilpo Järvinen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20260609212631.925943-1-carvsdriver@gmail.com \
--to=carvsdriver@gmail.com \
--cc=armin.wolf@outlook.de \
--cc=ilpo.jarvinen@linux.intel.com \
--cc=johannes.goede@oss.qualcomm.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mpearson-lenovo@squebb.ca \
--cc=platform-driver-x86@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox