diff options
Diffstat (limited to 'lib/devres.c')
-rw-r--r-- | lib/devres.c | 13 |
1 files changed, 4 insertions, 9 deletions
diff --git a/lib/devres.c b/lib/devres.c index fbe2aac522e6..f13a2468ff39 100644 --- a/lib/devres.c +++ b/lib/devres.c | |||
@@ -119,10 +119,9 @@ EXPORT_SYMBOL(devm_iounmap); | |||
119 | * @dev: generic device to handle the resource for | 119 | * @dev: generic device to handle the resource for |
120 | * @res: resource to be handled | 120 | * @res: resource to be handled |
121 | * | 121 | * |
122 | * Checks that a resource is a valid memory region, requests the memory region | 122 | * Checks that a resource is a valid memory region, requests the memory |
123 | * and ioremaps it either as cacheable or as non-cacheable memory depending on | 123 | * region and ioremaps it. All operations are managed and will be undone |
124 | * the resource's flags. All operations are managed and will be undone on | 124 | * on driver detach. |
125 | * driver detach. | ||
126 | * | 125 | * |
127 | * Returns a pointer to the remapped memory or an ERR_PTR() encoded error code | 126 | * Returns a pointer to the remapped memory or an ERR_PTR() encoded error code |
128 | * on failure. Usage example: | 127 | * on failure. Usage example: |
@@ -153,11 +152,7 @@ void __iomem *devm_ioremap_resource(struct device *dev, struct resource *res) | |||
153 | return IOMEM_ERR_PTR(-EBUSY); | 152 | return IOMEM_ERR_PTR(-EBUSY); |
154 | } | 153 | } |
155 | 154 | ||
156 | if (res->flags & IORESOURCE_CACHEABLE) | 155 | dest_ptr = devm_ioremap(dev, res->start, size); |
157 | dest_ptr = devm_ioremap(dev, res->start, size); | ||
158 | else | ||
159 | dest_ptr = devm_ioremap_nocache(dev, res->start, size); | ||
160 | |||
161 | if (!dest_ptr) { | 156 | if (!dest_ptr) { |
162 | dev_err(dev, "ioremap failed for resource %pR\n", res); | 157 | dev_err(dev, "ioremap failed for resource %pR\n", res); |
163 | devm_release_mem_region(dev, res->start, size); | 158 | devm_release_mem_region(dev, res->start, size); |