|
@@ -13,6 +13,7 @@
|
|
|
#include <linux/dmi.h>
|
|
|
#include <linux/nls.h>
|
|
|
#include <linux/dma-mapping.h>
|
|
|
+#include <linux/platform_data/x86/apple.h>
|
|
|
|
|
|
#include <asm/pgtable.h>
|
|
|
|
|
@@ -1452,6 +1453,12 @@ static bool acpi_is_spi_i2c_slave(struct acpi_device *device)
|
|
|
struct list_head resource_list;
|
|
|
bool is_spi_i2c_slave = false;
|
|
|
|
|
|
+ /* Macs use device properties in lieu of _CRS resources */
|
|
|
+ if (x86_apple_machine &&
|
|
|
+ (fwnode_property_present(&device->fwnode, "spiSclkPeriod") ||
|
|
|
+ fwnode_property_present(&device->fwnode, "i2cAddress")))
|
|
|
+ return true;
|
|
|
+
|
|
|
INIT_LIST_HEAD(&resource_list);
|
|
|
acpi_dev_get_resources(device, &resource_list, acpi_check_spi_i2c_slave,
|
|
|
&is_spi_i2c_slave);
|