summaryrefslogtreecommitdiff
path: root/include/linux
diff options
context:
space:
mode:
authorJakob Berg Jespersen <dev@berg.pm>2026-08-29 10:29:09 +0200
committerSakari Ailus <sakari.ailus@linux.intel.com>2026-09-02 11:05:29 +0300
commit34e31390a3b939db2e0cbfef4c40d95052572df0 (patch)
tree72ebcb1e9e80a29509d560b6e032dc4de14f2872 /include/linux
parent59cab094b8b50d7d4483bb04143294e1fb66aacc (diff)
downloadlinux-next-34e31390a3b939db2e0cbfef4c40d95052572df0.tar.gz
linux-next-34e31390a3b939db2e0cbfef4c40d95052572df0.zip
platform/x86: int3472: support the POWER1 GPIO type
INT3472 can describe a second sensor power rail as a GPIO of type POWER1 (0x08), which the driver does not recognise, so the rail is left unmapped and never enabled: int3472-discrete INT3472:01: GPIO type 0x08 unknown; the sensor may not work On the Microsoft Surface Pro 7+ the rear camera's INT3472 (INT347A, ov8865) has such a pin; without it the ov8865 "dvdd" supply resolves to a dummy regulator and the sensor never probes. Define the POWER0 (0x07) and POWER1 (0x08) GPIO types and map POWER1 to a regulator with con_id "dvdd" for all devices, the supply the in-tree ov8865 driver already requests. POWER0 is defined but left unmapped, as no device that uses it is known. With this change the Surface Pro 7+ rear camera probes and streams reliably. Link: https://github.com/linux-surface/linux-surface/pull/1867 Link: https://github.com/linux-surface/linux-surface/pull/2201 Suggested-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Jakob Berg Jespersen <dev@berg.pm> Reviewed-by: Hans de Goede <johannes.goede@oss.qualcomm.com> [Sakari Ailus: Sanitised the commit message a little.] Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/platform_data/x86/int3472.h2
1 files changed, 2 insertions, 0 deletions
diff --git a/include/linux/platform_data/x86/int3472.h b/include/linux/platform_data/x86/int3472.h
index a73841dfae27..b1040e36deb8 100644
--- a/include/linux/platform_data/x86/int3472.h
+++ b/include/linux/platform_data/x86/int3472.h
@@ -25,6 +25,8 @@
#define INT3472_GPIO_TYPE_RESET 0x00
#define INT3472_GPIO_TYPE_POWERDOWN 0x01
#define INT3472_GPIO_TYPE_STROBE 0x02
+#define INT3472_GPIO_TYPE_POWER0 0x07
+#define INT3472_GPIO_TYPE_POWER1 0x08
#define INT3472_GPIO_TYPE_POWER_ENABLE 0x0b
#define INT3472_GPIO_TYPE_CLK_ENABLE 0x0c
#define INT3472_GPIO_TYPE_PRIVACY_LED 0x0d