Messages in this thread | | | Subject | Re: [PATCH v9 5/7] ACPI: Translate the I/O range of non-MMIO devices before scanning | From | John Garry <> | Date | Fri, 30 Jun 2017 10:28:36 +0100 |
| |
On 30/06/2017 10:05, Mika Westerberg wrote: > On Thu, Jun 29, 2017 at 05:16:15PM +0100, John Garry wrote: >> On 16/06/2017 12:24, Rafael J. Wysocki wrote: >>>>>>>>> >>>>>>>>> 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. >>> Or extend the special I2C/SPI handling to them. >>> >> >> 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. >
No, it's not a SPI nor an I2C bus. I actually would say that my idea is generally wrong, as the ACPI definition is not a real reflection of the bus/slave.
However, Rafael did suggest extending special I2C/SPI handling to them. In this case, I don't see how the LPC slave can be identified like an I2C or SPI slave is.
Thanks, John
> . >
| |