Merge tag 'pm+acpi-3.14-rc1-2' of git://git.kernel.org/pub/scm/linux/kernel/git/rafae...
[deliverable/linux.git] / drivers / base / platform.c
index 3a94b799f16640eb6a8e34ef2df78a31e3085e9c..bc78848dd59aec9af389b9ce8caa4be984c4cc42 100644 (file)
@@ -677,7 +677,17 @@ static ssize_t modalias_show(struct device *dev, struct device_attribute *a,
                             char *buf)
 {
        struct platform_device  *pdev = to_platform_device(dev);
-       int len = snprintf(buf, PAGE_SIZE, "platform:%s\n", pdev->name);
+       int len;
+
+       len = of_device_get_modalias(dev, buf, PAGE_SIZE -1);
+       if (len != -ENODEV)
+               return len;
+
+       len = acpi_device_modalias(dev, buf, PAGE_SIZE -1);
+       if (len != -ENODEV)
+               return len;
+
+       len = snprintf(buf, PAGE_SIZE, "platform:%s\n", pdev->name);
 
        return (len >= PAGE_SIZE) ? (PAGE_SIZE - 1) : len;
 }
@@ -699,6 +709,10 @@ static int platform_uevent(struct device *dev, struct kobj_uevent_env *env)
        if (rc != -ENODEV)
                return rc;
 
+       rc = acpi_device_uevent_modalias(dev, env);
+       if (rc != -ENODEV)
+               return rc;
+
        add_uevent_var(env, "MODALIAS=%s%s", PLATFORM_MODULE_PREFIX,
                        pdev->name);
        return 0;
This page took 0.028606 seconds and 5 git commands to generate.