On Thu, Jun 29, 2017 at 05:16:15PM +0100, John Garry wrote:
On 16/06/2017 12:24, Rafael J. Wysocki wrote:
Or extend the special I2C/SPI handling to them.
It causes acpi_default_enumeration() to be called but it should be fine
as we are dealing with platform device anyway.
I do not quite understand how declaring such MFD cell above would make sure
that the LPC probe is called before the IPMI device is enumerated...
In fact it may be that it is not sufficient in this case because the
ACPI core might enumerate child devices before the LPC driver even gets
a chance to probe so you would need to add also scan handler to the
child devices and mark them already enumerated or something like that.
For this, is it possible to just configure the ACPI table so we spoof that
the LPC slave (IPI0001), is an i2c/spi slave? Could we just add a resource
of type ACPI_RESOURCE_TYPE_SERIAL_BUS, and common serial bus type i2c/spi to
solve this?
But is the device connected to a I2C or SPI bus? If not, then it does
not make much sense to declare it as I2C or SPI slave. Instead it should
be platform device which is the type we use when there is no explicit
bus specified in ACPI.
.