diff options
author | Jingoo Han <jg1.han@samsung.com> | 2014-02-11 08:02:36 -0500 |
---|---|---|
committer | Wolfram Sang <wsa@the-dreams.de> | 2014-03-09 16:43:20 -0400 |
commit | ae50b1df50ee3a4ed9a553eae906485918afd4c8 (patch) | |
tree | 33d551ea17df6878e3538797b00edf0b9f8bbc03 /drivers/i2c | |
parent | 1b31e9b76ef8c62291e698dfdb973499986a7f68 (diff) |
i2c: bcm2835: Use devm_ioremap_resource()
Use devm_ioremap_resource() in order to make the code simpler,
and remove redundant return value check of platform_get_resource()
because the value is checked by devm_ioremap_resource().
Signed-off-by: Jingoo Han <jg1.han@samsung.com>
Acked-by: Stephen Warren <swarren@wwwdotorg.org>
Signed-off-by: Wolfram Sang <wsa@the-dreams.de>
Diffstat (limited to 'drivers/i2c')
-rw-r--r-- | drivers/i2c/busses/i2c-bcm2835.c | 24 |
1 files changed, 4 insertions, 20 deletions
diff --git a/drivers/i2c/busses/i2c-bcm2835.c b/drivers/i2c/busses/i2c-bcm2835.c index 77df97b932af..13b7ed57869b 100644 --- a/drivers/i2c/busses/i2c-bcm2835.c +++ b/drivers/i2c/busses/i2c-bcm2835.c | |||
@@ -219,7 +219,7 @@ static const struct i2c_algorithm bcm2835_i2c_algo = { | |||
219 | static int bcm2835_i2c_probe(struct platform_device *pdev) | 219 | static int bcm2835_i2c_probe(struct platform_device *pdev) |
220 | { | 220 | { |
221 | struct bcm2835_i2c_dev *i2c_dev; | 221 | struct bcm2835_i2c_dev *i2c_dev; |
222 | struct resource *mem, *requested, *irq; | 222 | struct resource *mem, *irq; |
223 | u32 bus_clk_rate, divider; | 223 | u32 bus_clk_rate, divider; |
224 | int ret; | 224 | int ret; |
225 | struct i2c_adapter *adap; | 225 | struct i2c_adapter *adap; |
@@ -234,25 +234,9 @@ static int bcm2835_i2c_probe(struct platform_device *pdev) | |||
234 | init_completion(&i2c_dev->completion); | 234 | init_completion(&i2c_dev->completion); |
235 | 235 | ||
236 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); | 236 | mem = platform_get_resource(pdev, IORESOURCE_MEM, 0); |
237 | if (!mem) { | 237 | i2c_dev->regs = devm_ioremap_resource(&pdev->dev, mem); |
238 | dev_err(&pdev->dev, "No mem resource\n"); | 238 | if (IS_ERR(i2c_dev->regs)) |
239 | return -ENODEV; | 239 | return PTR_ERR(i2c_dev->regs); |
240 | } | ||
241 | |||
242 | requested = devm_request_mem_region(&pdev->dev, mem->start, | ||
243 | resource_size(mem), | ||
244 | dev_name(&pdev->dev)); | ||
245 | if (!requested) { | ||
246 | dev_err(&pdev->dev, "Could not claim register region\n"); | ||
247 | return -EBUSY; | ||
248 | } | ||
249 | |||
250 | i2c_dev->regs = devm_ioremap(&pdev->dev, mem->start, | ||
251 | resource_size(mem)); | ||
252 | if (!i2c_dev->regs) { | ||
253 | dev_err(&pdev->dev, "Could not map registers\n"); | ||
254 | return -ENOMEM; | ||
255 | } | ||
256 | 240 | ||
257 | i2c_dev->clk = devm_clk_get(&pdev->dev, NULL); | 241 | i2c_dev->clk = devm_clk_get(&pdev->dev, NULL); |
258 | if (IS_ERR(i2c_dev->clk)) { | 242 | if (IS_ERR(i2c_dev->clk)) { |