platform/x86: Add intel_skl_int3472 driver
ACPI devices with _HID INT3472 are currently matched to the tps68470 driver, however this does not cover all situations in which that _HID occurs. We've encountered three possibilities: 1. On Chrome OS devices, an ACPI device with _HID INT3472 (representing a physical TPS68470 device) that requires a GPIO and OpRegion driver 2. On devices designed for Windows, an ACPI device with _HID INT3472 (again representing a physical TPS68470 device) which requires GPIO, Clock and Regulator drivers. 3. On other devices designed for Windows, an ACPI device with _HID INT3472 which does **not** represent a physical TPS68470, and is instead used as a dummy device to group some system GPIO lines which are meant to be consumed by the sensor that is dependent on this entry. This commit adds a new module, registering a platform driver to deal with the 3rd scenario plus an i2c driver to deal with #1 and #2, by querying the CLDB buffer found against INT3472 entries to determine which is most appropriate. Suggested-by:Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by:
Daniel Scally <djrscally@gmail.com> Link: https://lore.kernel.org/r/20210603224007.120560-6-djrscally@gmail.com [hdegoede@redhat.com Make skl_int3472_tps68470_calc_type() static] Signed-off-by:
Hans de Goede <hdegoede@redhat.com>
Showing
- MAINTAINERS 5 additions, 0 deletionsMAINTAINERS
- drivers/platform/x86/Kconfig 2 additions, 0 deletionsdrivers/platform/x86/Kconfig
- drivers/platform/x86/Makefile 1 addition, 0 deletionsdrivers/platform/x86/Makefile
- drivers/platform/x86/intel-int3472/Kconfig 30 additions, 0 deletionsdrivers/platform/x86/intel-int3472/Kconfig
- drivers/platform/x86/intel-int3472/Makefile 5 additions, 0 deletionsdrivers/platform/x86/intel-int3472/Makefile
- drivers/platform/x86/intel-int3472/intel_skl_int3472_clk_and_regulator.c 196 additions, 0 deletions...m/x86/intel-int3472/intel_skl_int3472_clk_and_regulator.c
- drivers/platform/x86/intel-int3472/intel_skl_int3472_common.c 106 additions, 0 deletions...ers/platform/x86/intel-int3472/intel_skl_int3472_common.c
- drivers/platform/x86/intel-int3472/intel_skl_int3472_common.h 118 additions, 0 deletions...ers/platform/x86/intel-int3472/intel_skl_int3472_common.h
- drivers/platform/x86/intel-int3472/intel_skl_int3472_discrete.c 417 additions, 0 deletions...s/platform/x86/intel-int3472/intel_skl_int3472_discrete.c
- drivers/platform/x86/intel-int3472/intel_skl_int3472_tps68470.c 137 additions, 0 deletions...s/platform/x86/intel-int3472/intel_skl_int3472_tps68470.c
drivers/platform/x86/intel-int3472/Kconfig
0 → 100644
drivers/platform/x86/intel-int3472/Makefile
0 → 100644
Please register or sign in to comment