drivers/platform/x86/intel/hid.c | 6 ++++++ 1 file changed, 6 insertions(+)
From: Peter Metz <peter.metz@unarin.com>
[ Upstream commit 6b3fa0615cd8432148581de62a52f83847af3d70 ]
The Dell 14 Plus 2-in-1 (model DB04250) requires the VGBS allow list
entry to correctly enable the tablet mode switch. Without this, the
chassis state is not reported, and the hinge rotation only emits
unknown scancodes.
Verified on Dell 14 Plus 2-in-1 DB04250.
Closes: https://bugzilla.kernel.org/show_bug.cgi?id=221090
Signed-off-by: Peter Metz <peter.metz@unarin.com>
Reviewed-by: Hans de Goede <johannes.goede@oss.qualcomm.com>
Link: https://patch.msgid.link/20260213044627.203638-1-peter.metz@unarin.com
Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
---
LLM Generated explanations, may be completely bogus:
## Analysis
### What the commit does
This commit adds a single DMI entry for the "Dell 14 Plus 2-in-1
DB04250" to the `dmi_vgbs_allow_list` in
`drivers/platform/x86/intel/hid.c`. This allow list controls which
devices can use the VGBS (Virtual GPIO Button Status) ACPI method to
report chassis/tablet mode state.
### Problem it solves
Without this entry, the Dell 14 Plus 2-in-1 cannot correctly report
tablet mode switch state. The hinge rotation only emits unknown
scancodes, meaning the device doesn't properly switch between laptop and
tablet modes. This is a real usability issue for owners of this specific
2-in-1 device.
### Classification: Hardware Quirk / Device Allow List Entry
This falls squarely into the **"QUIRKS and WORKAROUNDS"** exception
category for stable backports:
- It adds a device-specific DMI match to an existing allow list
- It fixes a real hardware issue (tablet mode not working)
- The pattern is identical to existing entries in the same list
(multiple Dell, HP entries already present)
### Code change analysis
The diff is trivial — 6 lines added to insert a new `dmi_system_id`
struct into the `dmi_vgbs_allow_list` array, matching `DMI_SYS_VENDOR =
"Dell Inc."` and `DMI_PRODUCT_NAME = "Dell 14 Plus 2-in-1 DB04250"`. The
change follows the exact same pattern as the surrounding entries.
### Risk assessment
- **Risk: Extremely low.** The DMI match is specific to one device
model. It cannot affect any other hardware.
- **Scope: Minimal.** 6 lines of declarative data, no logic changes.
- **Testing: Verified.** The commit message states "Verified on Dell 14
Plus 2-in-1 DB04250."
- **Review: Thorough.** Reviewed by both Hans de Goede (platform/x86
maintainer) and Ilpo Järvinen (Intel platform maintainer).
### Stable criteria check
1. **Obviously correct and tested**: Yes — verified on the hardware,
reviewed by two maintainers
2. **Fixes a real bug**: Yes — tablet mode doesn't work without it
(bugzilla #221090)
3. **Important issue**: Yes — core functionality of a 2-in-1 device is
broken
4. **Small and contained**: Yes — 6 lines, single file, data-only change
5. **No new features**: Correct — enables existing functionality on
specific hardware
6. **Applies cleanly**: Should apply cleanly as long as the surrounding
entries exist
### Verification
- Verified the diff is a pure data addition to an existing DMI allow
list array — no logic changes
- Confirmed the pattern matches existing entries in the same list (Dell
Pro Rugged 10/12 Tablet entries directly above)
- The commit references bugzilla.kernel.org bug #221090, confirming a
user-reported issue
- Reviewed-by tags from Hans de Goede and Ilpo Järvinen confirm
maintainer approval
- The `dmi_vgbs_allow_list` structure is used in the existing
`intel_hid_probe()` path — this is well-established code
### Conclusion
This is a textbook stable backport candidate: a tiny, zero-risk hardware
quirk addition that fixes real functionality for a specific device
model, with user bug report, hardware verification, and maintainer
review.
**YES**
drivers/platform/x86/intel/hid.c | 6 ++++++
1 file changed, 6 insertions(+)
diff --git a/drivers/platform/x86/intel/hid.c b/drivers/platform/x86/intel/hid.c
index 560cc063198e1..5b475a09645a3 100644
--- a/drivers/platform/x86/intel/hid.c
+++ b/drivers/platform/x86/intel/hid.c
@@ -189,6 +189,12 @@ static const struct dmi_system_id dmi_vgbs_allow_list[] = {
DMI_MATCH(DMI_PRODUCT_NAME, "Dell Pro Rugged 12 Tablet RA02260"),
},
},
+ {
+ .matches = {
+ DMI_MATCH(DMI_SYS_VENDOR, "Dell Inc."),
+ DMI_MATCH(DMI_PRODUCT_NAME, "Dell 14 Plus 2-in-1 DB04250"),
+ },
+ },
{ }
};
--
2.51.0
© 2016 - 2026 Red Hat, Inc.