]> Pileus Git - ~andy/linux/blobdiff - drivers/spi/spi.c
Merge remote-tracking branch 'spi/fix/core' into spi-linus
[~andy/linux] / drivers / spi / spi.c
index 26f4afd19fafc77ba44ed9d0eaba679dba2f267c..d0b28bba38be6bfff2a420e9fc2850e5c84c690b 100644 (file)
@@ -58,6 +58,11 @@ static ssize_t
 modalias_show(struct device *dev, struct device_attribute *a, char *buf)
 {
        const struct spi_device *spi = to_spi_device(dev);
+       int len;
+
+       len = acpi_device_modalias(dev, buf, PAGE_SIZE - 1);
+       if (len != -ENODEV)
+               return len;
 
        return sprintf(buf, "%s%s\n", SPI_MODULE_PREFIX, spi->modalias);
 }
@@ -114,6 +119,11 @@ static int spi_match_device(struct device *dev, struct device_driver *drv)
 static int spi_uevent(struct device *dev, struct kobj_uevent_env *env)
 {
        const struct spi_device         *spi = to_spi_device(dev);
+       int rc;
+
+       rc = acpi_device_uevent_modalias(dev, env);
+       if (rc != -ENODEV)
+               return rc;
 
        add_uevent_var(env, "MODALIAS=%s%s", SPI_MODULE_PREFIX, spi->modalias);
        return 0;