[PATCH v3 00/13] i2c-multi-instantiate: Adapt for INT3515 and alike

Andy Shevchenko
2018-11-27T15:37:37Z

Currently i2c-multi-instantiate driver does not support the case
of INT3515 USB PD device, where:

- Interrupt() is used instead of GpioInt()
- All slaves may be the same from IP point of view
- There can be variadic amount of slaves

This series is addressing all above.

Note, series has been smoke tested (Heikki would do BAT or more)
on Intel Coffee Lake system.

The idea is to push this either through PDx86 tree (needs Rafael's ACKs) or ACPI.
In any case it needs tags from Heikki, Hans, Mika, Wolfram and Jonathan.

Testing and comments are warmly welcome.

In v3:
- revisit error codes returned by i2c_acpi_new_device() (Hans, Mika)
- add documentation to exported i2c_acpi_get_i2c_resource() (Mika)
- drop Hans' Rb tag in patch 5 due to changes
- append Mika's Ab tag to patch 6

In v2:
- drop patches to copy fwnode and to handle BOSC0200 device
- append check for amount of devices listed in the driver's mapping
- add Rb tag given by Hans

Andy Shevchenko (13):
platform/x86: intel_cht_int33fe: Remove duplicate NULL check
platform/x86: intel_cht_int33fe: Accept errors of
i2c_acpi_new_device()
platform/x86: i2c-multi-instantiate: Accept errors of
i2c_acpi_new_device()
platform/x86: i2c-multi-instantiate: Defer probe when no adapter found
i2c: acpi: Return error pointers from i2c_acpi_new_device()
i2c: acpi: Use ACPI_FAILURE instead of !ACPI_SUCCESS
i2c: acpi: Introduce i2c_acpi_get_i2c_resource() helper
platform/x86: i2c-multi-instantiate: Count I2cSerialBus() resources
platform/x86: i2c-multi-instantiate: Distinguish IRQ resource type
platform/x86: i2c-multi-instantiate: Introduce IOAPIC IRQ support
platform/x86: i2c-multi-instantiate: Allow to have same slaves
ACPI / scan: Create platform device for INT3515 ACPI nodes
iio: inv_mpu6050: Use i2c_acpi_get_i2c_resource() helper

drivers/acpi/scan.c | 1 +
drivers/i2c/i2c-core-acpi.c | 64 +++++++++----
drivers/iio/imu/inv_mpu6050/inv_mpu_acpi.c | 16 ++--
drivers/platform/x86/i2c-multi-instantiate.c | 99 ++++++++++++++++----
drivers/platform/x86/intel_cht_int33fe.c | 34 +++++--
drivers/usb/typec/tps6598x.c | 8 +-
include/linux/acpi.h | 11 +++
7 files changed, 174 insertions(+), 59 deletions(-)

--
2.19.2