ACPI / scan: Fix enumeration for special UART devices

UART devices is expected to be enumerated by SerDev subsystem.

During ACPI scan, serial devices behind SPI, I2C or UART buses are not
enumerated, allowing them to be enumerated by their respective parents.

Rename *spi_i2c_slave* to *serial_bus_slave* as this will be used for serial
devices on serial buses (SPI, I2C or UART).

On Macs an empty ResourceTemplate is returned for uart slaves.
Instead the device properties "baud", "parity", "dataBits", "stopBits" are
provided. Add a check for "baud" in acpi_is_serial_bus_slave().

Signed-off-by: Frédéric Danis <[email protected]>
Reviewed-by: Sebastian Reichel <[email protected]>
Tested-by: Ronald Tschalär <[email protected]>
Tested-by: Peter Y. Chuang <[email protected]>
Acked-by: Rafael J. Wysocki <[email protected]>
Signed-off-by: Greg Kroah-Hartman <[email protected]>
This commit is contained in:
Frédéric Danis 2017-10-11 10:32:14 +02:00 • committed by Greg Kroah-Hartman
commit e361d1f858
2 changed files with 18 additions and 21 deletions

View file

@ -211,7 +211,7 @@ struct acpi_device_flags {
u32 of_compatible_ok:1;
u32 coherent_dma:1;
u32 cca_seen:1;
u32 spi_i2c_slave:1;
u32 serial_bus_slave:1;
u32 reserved:19;
};