diff options
author | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
---|---|---|
committer | Glenn Elliott <gelliott@cs.unc.edu> | 2012-03-04 19:47:13 -0500 |
commit | c71c03bda1e86c9d5198c5d83f712e695c4f2a1e (patch) | |
tree | ecb166cb3e2b7e2adb3b5e292245fefd23381ac8 /drivers/acpi/pci_link.c | |
parent | ea53c912f8a86a8567697115b6a0d8152beee5c8 (diff) | |
parent | 6a00f206debf8a5c8899055726ad127dbeeed098 (diff) |
Merge branch 'mpi-master' into wip-k-fmlpwip-k-fmlp
Conflicts:
litmus/sched_cedf.c
Diffstat (limited to 'drivers/acpi/pci_link.c')
-rw-r--r-- | drivers/acpi/pci_link.c | 31 |
1 files changed, 8 insertions, 23 deletions
diff --git a/drivers/acpi/pci_link.c b/drivers/acpi/pci_link.c index 8d47a5846aeb..4a29763b8eb4 100644 --- a/drivers/acpi/pci_link.c +++ b/drivers/acpi/pci_link.c | |||
@@ -29,12 +29,11 @@ | |||
29 | * for IRQ management (e.g. start()->_SRS). | 29 | * for IRQ management (e.g. start()->_SRS). |
30 | */ | 30 | */ |
31 | 31 | ||
32 | #include <linux/sysdev.h> | 32 | #include <linux/syscore_ops.h> |
33 | #include <linux/kernel.h> | 33 | #include <linux/kernel.h> |
34 | #include <linux/module.h> | 34 | #include <linux/module.h> |
35 | #include <linux/init.h> | 35 | #include <linux/init.h> |
36 | #include <linux/types.h> | 36 | #include <linux/types.h> |
37 | #include <linux/proc_fs.h> | ||
38 | #include <linux/spinlock.h> | 37 | #include <linux/spinlock.h> |
39 | #include <linux/pm.h> | 38 | #include <linux/pm.h> |
40 | #include <linux/pci.h> | 39 | #include <linux/pci.h> |
@@ -758,14 +757,13 @@ static int acpi_pci_link_resume(struct acpi_pci_link *link) | |||
758 | return 0; | 757 | return 0; |
759 | } | 758 | } |
760 | 759 | ||
761 | static int irqrouter_resume(struct sys_device *dev) | 760 | static void irqrouter_resume(void) |
762 | { | 761 | { |
763 | struct acpi_pci_link *link; | 762 | struct acpi_pci_link *link; |
764 | 763 | ||
765 | list_for_each_entry(link, &acpi_link_list, list) { | 764 | list_for_each_entry(link, &acpi_link_list, list) { |
766 | acpi_pci_link_resume(link); | 765 | acpi_pci_link_resume(link); |
767 | } | 766 | } |
768 | return 0; | ||
769 | } | 767 | } |
770 | 768 | ||
771 | static int acpi_pci_link_remove(struct acpi_device *device, int type) | 769 | static int acpi_pci_link_remove(struct acpi_device *device, int type) |
@@ -872,32 +870,19 @@ static int __init acpi_irq_balance_set(char *str) | |||
872 | 870 | ||
873 | __setup("acpi_irq_balance", acpi_irq_balance_set); | 871 | __setup("acpi_irq_balance", acpi_irq_balance_set); |
874 | 872 | ||
875 | /* FIXME: we will remove this interface after all drivers call pci_disable_device */ | 873 | static struct syscore_ops irqrouter_syscore_ops = { |
876 | static struct sysdev_class irqrouter_sysdev_class = { | ||
877 | .name = "irqrouter", | ||
878 | .resume = irqrouter_resume, | 874 | .resume = irqrouter_resume, |
879 | }; | 875 | }; |
880 | 876 | ||
881 | static struct sys_device device_irqrouter = { | 877 | static int __init irqrouter_init_ops(void) |
882 | .id = 0, | ||
883 | .cls = &irqrouter_sysdev_class, | ||
884 | }; | ||
885 | |||
886 | static int __init irqrouter_init_sysfs(void) | ||
887 | { | 878 | { |
888 | int error; | 879 | if (!acpi_disabled && !acpi_noirq) |
880 | register_syscore_ops(&irqrouter_syscore_ops); | ||
889 | 881 | ||
890 | if (acpi_disabled || acpi_noirq) | 882 | return 0; |
891 | return 0; | ||
892 | |||
893 | error = sysdev_class_register(&irqrouter_sysdev_class); | ||
894 | if (!error) | ||
895 | error = sysdev_register(&device_irqrouter); | ||
896 | |||
897 | return error; | ||
898 | } | 883 | } |
899 | 884 | ||
900 | device_initcall(irqrouter_init_sysfs); | 885 | device_initcall(irqrouter_init_ops); |
901 | 886 | ||
902 | static int __init acpi_pci_link_init(void) | 887 | static int __init acpi_pci_link_init(void) |
903 | { | 888 | { |