|
@@ -20,6 +20,8 @@
|
|
#include <linux/platform_device.h>
|
|
#include <linux/platform_device.h>
|
|
#include <linux/libata.h>
|
|
#include <linux/libata.h>
|
|
#include <linux/ahci_platform.h>
|
|
#include <linux/ahci_platform.h>
|
|
|
|
+#include <linux/acpi.h>
|
|
|
|
+#include <linux/pci_ids.h>
|
|
#include "ahci.h"
|
|
#include "ahci.h"
|
|
|
|
|
|
#define DRV_NAME "ahci"
|
|
#define DRV_NAME "ahci"
|
|
@@ -79,12 +81,19 @@ static const struct of_device_id ahci_of_match[] = {
|
|
};
|
|
};
|
|
MODULE_DEVICE_TABLE(of, ahci_of_match);
|
|
MODULE_DEVICE_TABLE(of, ahci_of_match);
|
|
|
|
|
|
|
|
+static const struct acpi_device_id ahci_acpi_match[] = {
|
|
|
|
+ { ACPI_DEVICE_CLASS(PCI_CLASS_STORAGE_SATA_AHCI, 0xffffff) },
|
|
|
|
+ {},
|
|
|
|
+};
|
|
|
|
+MODULE_DEVICE_TABLE(acpi, ahci_acpi_match);
|
|
|
|
+
|
|
static struct platform_driver ahci_driver = {
|
|
static struct platform_driver ahci_driver = {
|
|
.probe = ahci_probe,
|
|
.probe = ahci_probe,
|
|
.remove = ata_platform_remove_one,
|
|
.remove = ata_platform_remove_one,
|
|
.driver = {
|
|
.driver = {
|
|
.name = DRV_NAME,
|
|
.name = DRV_NAME,
|
|
.of_match_table = ahci_of_match,
|
|
.of_match_table = ahci_of_match,
|
|
|
|
+ .acpi_match_table = ahci_acpi_match,
|
|
.pm = &ahci_pm_ops,
|
|
.pm = &ahci_pm_ops,
|
|
},
|
|
},
|
|
};
|
|
};
|