aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/acpi/glue.c
diff options
context:
space:
mode:
Diffstat (limited to 'drivers/acpi/glue.c')
-rw-r--r--drivers/acpi/glue.c8
1 files changed, 5 insertions, 3 deletions
diff --git a/drivers/acpi/glue.c b/drivers/acpi/glue.c
index 1470ae4f98c0..5ea5dc219f56 100644
--- a/drivers/acpi/glue.c
+++ b/drivers/acpi/glue.c
@@ -168,7 +168,7 @@ int acpi_bind_one(struct device *dev, struct acpi_device *acpi_dev)
168 struct list_head *physnode_list; 168 struct list_head *physnode_list;
169 unsigned int node_id; 169 unsigned int node_id;
170 int retval = -EINVAL; 170 int retval = -EINVAL;
171 bool coherent; 171 enum dev_dma_attr attr;
172 172
173 if (has_acpi_companion(dev)) { 173 if (has_acpi_companion(dev)) {
174 if (acpi_dev) { 174 if (acpi_dev) {
@@ -225,8 +225,10 @@ int acpi_bind_one(struct device *dev, struct acpi_device *acpi_dev)
225 if (!has_acpi_companion(dev)) 225 if (!has_acpi_companion(dev))
226 ACPI_COMPANION_SET(dev, acpi_dev); 226 ACPI_COMPANION_SET(dev, acpi_dev);
227 227
228 if (acpi_check_dma(acpi_dev, &coherent)) 228 attr = acpi_get_dma_attr(acpi_dev);
229 arch_setup_dma_ops(dev, 0, 0, NULL, coherent); 229 if (attr != DEV_DMA_NOT_SUPPORTED)
230 arch_setup_dma_ops(dev, 0, 0, NULL,
231 attr == DEV_DMA_COHERENT);
230 232
231 acpi_physnode_link_name(physical_node_name, node_id); 233 acpi_physnode_link_name(physical_node_name, node_id);
232 retval = sysfs_create_link(&acpi_dev->dev.kobj, &dev->kobj, 234 retval = sysfs_create_link(&acpi_dev->dev.kobj, &dev->kobj,