diff options
author | Andrey Smirnov <andrew.smirnov@gmail.com> | 2018-10-26 18:32:28 -0700 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2018-10-29 09:54:00 +0100 |
commit | 58063a54ba59cf89249c8e1dc4ba4da3c91aa903 (patch) | |
tree | 7234f4f773315a16f831694208528df8324400f1 /drivers/base | |
parent | 21cc885609e3f3c7a9778daed344c48ae6313c33 (diff) | |
download | barebox-58063a54ba59cf89249c8e1dc4ba4da3c91aa903.tar.gz barebox-58063a54ba59cf89249c8e1dc4ba4da3c91aa903.tar.xz |
drivers: base: Simplify dev_request_mem_region_err_null()
Simplify dev_request_mem_region_err_null() by making use of
dev_request_mem_resource() to implement it.
Signed-off-by: Andrey Smirnov <andrew.smirnov@gmail.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'drivers/base')
-rw-r--r-- | drivers/base/driver.c | 20 |
1 files changed, 8 insertions, 12 deletions
diff --git a/drivers/base/driver.c b/drivers/base/driver.c index 9003416d26..3b39c28494 100644 --- a/drivers/base/driver.c +++ b/drivers/base/driver.c @@ -384,32 +384,28 @@ void __iomem *dev_request_mem_region_by_name(struct device_d *dev, const char *n } EXPORT_SYMBOL(dev_request_mem_region_by_name); -void __iomem *dev_request_mem_region_err_null(struct device_d *dev, int num) +struct resource *dev_request_mem_resource(struct device_d *dev, int num) { struct resource *res; res = dev_get_resource(dev, IORESOURCE_MEM, num); if (IS_ERR(res)) - return NULL; - - res = request_iomem_region(dev_name(dev), res->start, res->end); - if (IS_ERR(res)) - return NULL; + return ERR_CAST(res); - return IOMEM(res->start); + return request_iomem_region(dev_name(dev), res->start, res->end); } -EXPORT_SYMBOL(dev_request_mem_region_err_null); -struct resource *dev_request_mem_resource(struct device_d *dev, int num) +void __iomem *dev_request_mem_region_err_null(struct device_d *dev, int num) { struct resource *res; - res = dev_get_resource(dev, IORESOURCE_MEM, num); + res = dev_request_mem_resource(dev, num); if (IS_ERR(res)) - return ERR_CAST(res); + return NULL; - return request_iomem_region(dev_name(dev), res->start, res->end); + return IOMEM(res->start); } +EXPORT_SYMBOL(dev_request_mem_region_err_null); void __iomem *dev_request_mem_region(struct device_d *dev, int num) { |