diff options
Diffstat (limited to 'drivers/acpi/glue.c')
-rw-r--r-- | drivers/acpi/glue.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/drivers/acpi/glue.c b/drivers/acpi/glue.c index 39c485b0c25c..b9657af751d1 100644 --- a/drivers/acpi/glue.c +++ b/drivers/acpi/glue.c | |||
@@ -13,6 +13,7 @@ | |||
13 | #include <linux/slab.h> | 13 | #include <linux/slab.h> |
14 | #include <linux/rwsem.h> | 14 | #include <linux/rwsem.h> |
15 | #include <linux/acpi.h> | 15 | #include <linux/acpi.h> |
16 | #include <linux/dma-mapping.h> | ||
16 | 17 | ||
17 | #include "internal.h" | 18 | #include "internal.h" |
18 | 19 | ||
@@ -167,6 +168,7 @@ int acpi_bind_one(struct device *dev, struct acpi_device *acpi_dev) | |||
167 | struct list_head *physnode_list; | 168 | struct list_head *physnode_list; |
168 | unsigned int node_id; | 169 | unsigned int node_id; |
169 | int retval = -EINVAL; | 170 | int retval = -EINVAL; |
171 | bool coherent; | ||
170 | 172 | ||
171 | if (has_acpi_companion(dev)) { | 173 | if (has_acpi_companion(dev)) { |
172 | if (acpi_dev) { | 174 | if (acpi_dev) { |
@@ -223,6 +225,9 @@ int acpi_bind_one(struct device *dev, struct acpi_device *acpi_dev) | |||
223 | if (!has_acpi_companion(dev)) | 225 | if (!has_acpi_companion(dev)) |
224 | ACPI_COMPANION_SET(dev, acpi_dev); | 226 | ACPI_COMPANION_SET(dev, acpi_dev); |
225 | 227 | ||
228 | if (acpi_check_dma(acpi_dev, &coherent)) | ||
229 | arch_setup_dma_ops(dev, 0, 0, NULL, coherent); | ||
230 | |||
226 | acpi_physnode_link_name(physical_node_name, node_id); | 231 | acpi_physnode_link_name(physical_node_name, node_id); |
227 | retval = sysfs_create_link(&acpi_dev->dev.kobj, &dev->kobj, | 232 | retval = sysfs_create_link(&acpi_dev->dev.kobj, &dev->kobj, |
228 | physical_node_name); | 233 | physical_node_name); |