Re: [PATCH v2 6/7] platform: x86: Add intel_skl_int3472 driver

From: Barnabás Pőcze
Date: Mon Jan 18 2021 - 06:14:07 EST


Hi


2021. január 18., hétfő 1:34 keltezéssel, Daniel Scally írta:

> 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@xxxxxxxxxxxxxxxx>
> Signed-off-by: Daniel Scally <djrscally@xxxxxxxxx>
> ---
> Changes in v2:
>
> - Switched to a module registering a platform driver to run
> the dummy ACPI devices, plus an i2c driver to replace and extend
> the existing tps68470 driver
> - Added clock handling functions to the int3472-discrete driver
> - A whole bunch of other changes too numerous to enumerate
> MAINTAINERS | 5 +
> drivers/platform/x86/Kconfig | 25 +
> drivers/platform/x86/Makefile | 4 +
> .../platform/x86/intel_skl_int3472_common.c | 100 ++++
> .../platform/x86/intel_skl_int3472_common.h | 100 ++++
> .../platform/x86/intel_skl_int3472_discrete.c | 496 ++++++++++++++++++
> .../platform/x86/intel_skl_int3472_tps68470.c | 145 +++++
> 7 files changed, 875 insertions(+)
> create mode 100644 drivers/platform/x86/intel_skl_int3472_common.c
> create mode 100644 drivers/platform/x86/intel_skl_int3472_common.h
> create mode 100644 drivers/platform/x86/intel_skl_int3472_discrete.c
> create mode 100644 drivers/platform/x86/intel_skl_int3472_tps68470.c

Have you considered putting the source (and header) files into a dedicated
folder? I think it'd help manageability in the long run, and it'd be immediately
obvious that these source files form a single "unit".


Regards,
Barnabás Pőcze