i2c: piix4: Add ACPI support
authorJean Delvare <jdelvare@suse.de>
Fri, 2 Aug 2019 12:55:26 +0000 (14:55 +0200)
committerWolfram Sang <wsa@the-dreams.de>
Thu, 29 Aug 2019 20:19:01 +0000 (22:19 +0200)
commit0183eb8bb59d45f26ec4fc73aaa416067fe6c0be
tree9bc50bd483d23495b3aab36c8be91ea81a2ac10d
parent528d53a1592b0e27c423f7cafc1df85f77fc1163
i2c: piix4: Add ACPI support

Enable the i2c-piix4 SMBus controller driver to enumerate I2C slave
devices using ACPI. It builds on the related I2C mux device work
in commit 8eb5c87a92c0 ("i2c: add ACPI support for I2C mux ports")

In the i2c-piix4 driver the adapters are enumerated as:
 Main SMBus adapter Port 0, Port 2, ..., aux port (i.e., ASF adapter)

However, in the AMD BKDG documentation[1], the implied order of ports is:
 Main SMBus adapter Port 0, ASF adapter, Port 2, Port 3, ...

This ordering difference is unfortunate. We assume that ACPI
developers will use the AMD documentation ordering, so we have to
pass an extra parameter to piix4_add_adapter().

[1] 52740 BIOS and Kernel Developer's Guide (BKDG) for AMD Family 16h
Models 30h-3Fh Processors

Based on earlier work by Andrew Cooks.

Reported-by: Andrew Cooks <andrew.cooks@opengear.com>
Signed-off-by: Jean Delvare <jdelvare@suse.de>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
drivers/i2c/busses/i2c-piix4.c