Use devm_platform_ioremap_resource() to simplify code.
Signed-off-by: Yangtao Li <[email protected]>
---
drivers/i2c/busses/i2c-brcmstb.c | 19 ++++++-------------
1 file changed, 6 insertions(+), 13 deletions(-)
diff --git a/drivers/i2c/busses/i2c-brcmstb.c b/drivers/i2c/busses/i2c-brcmstb.c
index cf92cbcb8c86..0d422487161a 100644
--- a/drivers/i2c/busses/i2c-brcmstb.c
+++ b/drivers/i2c/busses/i2c-brcmstb.c
@@ -594,11 +594,10 @@ static int bcm2711_release_bsc(struct brcmstb_i2c_dev *dev)
static int brcmstb_i2c_probe(struct platform_device *pdev)
{
- int rc = 0;
struct brcmstb_i2c_dev *dev;
struct i2c_adapter *adap;
- struct resource *iomem;
const char *int_name;
+ int rc;
/* Allocate memory for private data structure */
dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL);
@@ -614,18 +613,15 @@ static int brcmstb_i2c_probe(struct platform_device *pdev)
init_completion(&dev->done);
/* Map hardware registers */
- iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
- dev->base = devm_ioremap_resource(dev->device, iomem);
- if (IS_ERR(dev->base)) {
- rc = -ENOMEM;
- goto probe_errorout;
- }
+ dev->base = devm_platform_ioremap_resource(pdev, 0);
+ if (IS_ERR(dev->base))
+ return PTR_ERR(dev->base);
if (of_device_is_compatible(dev->device->of_node,
"brcm,bcm2711-hdmi-i2c")) {
rc = bcm2711_release_bsc(dev);
if (rc)
- goto probe_errorout;
+ return rc;
}
rc = of_property_read_string(dev->device->of_node, "interrupt-names",
@@ -678,16 +674,13 @@ static int brcmstb_i2c_probe(struct platform_device *pdev)
adap->dev.of_node = pdev->dev.of_node;
rc = i2c_add_adapter(adap);
if (rc)
- goto probe_errorout;
+ return rc;
dev_info(dev->device, "%s@%dhz registered in %s mode\n",
int_name ? int_name : " ", dev->clk_freq_hz,
(dev->irq >= 0) ? "interrupt" : "polling");
return 0;
-
-probe_errorout:
- return rc;
}
static void brcmstb_i2c_remove(struct platform_device *pdev)
--
2.39.0
On Mon, Jul 10, 2023 at 2:34 AM Yangtao Li <[email protected]> wrote:
>
> Use devm_platform_ioremap_resource() to simplify code.
>
> Signed-off-by: Yangtao Li <[email protected]>
Reviewed-by: Kamal Dasu <[email protected]>
> ---
> drivers/i2c/busses/i2c-brcmstb.c | 19 ++++++-------------
> 1 file changed, 6 insertions(+), 13 deletions(-)
>
> diff --git a/drivers/i2c/busses/i2c-brcmstb.c b/drivers/i2c/busses/i2c-brcmstb.c
> index cf92cbcb8c86..0d422487161a 100644
> --- a/drivers/i2c/busses/i2c-brcmstb.c
> +++ b/drivers/i2c/busses/i2c-brcmstb.c
> @@ -594,11 +594,10 @@ static int bcm2711_release_bsc(struct brcmstb_i2c_dev *dev)
>
> static int brcmstb_i2c_probe(struct platform_device *pdev)
> {
> - int rc = 0;
> struct brcmstb_i2c_dev *dev;
> struct i2c_adapter *adap;
> - struct resource *iomem;
> const char *int_name;
> + int rc;
>
> /* Allocate memory for private data structure */
> dev = devm_kzalloc(&pdev->dev, sizeof(*dev), GFP_KERNEL);
> @@ -614,18 +613,15 @@ static int brcmstb_i2c_probe(struct platform_device *pdev)
> init_completion(&dev->done);
>
> /* Map hardware registers */
> - iomem = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> - dev->base = devm_ioremap_resource(dev->device, iomem);
> - if (IS_ERR(dev->base)) {
> - rc = -ENOMEM;
> - goto probe_errorout;
> - }
> + dev->base = devm_platform_ioremap_resource(pdev, 0);
> + if (IS_ERR(dev->base))
> + return PTR_ERR(dev->base);
>
> if (of_device_is_compatible(dev->device->of_node,
> "brcm,bcm2711-hdmi-i2c")) {
> rc = bcm2711_release_bsc(dev);
> if (rc)
> - goto probe_errorout;
> + return rc;
> }
>
> rc = of_property_read_string(dev->device->of_node, "interrupt-names",
> @@ -678,16 +674,13 @@ static int brcmstb_i2c_probe(struct platform_device *pdev)
> adap->dev.of_node = pdev->dev.of_node;
> rc = i2c_add_adapter(adap);
> if (rc)
> - goto probe_errorout;
> + return rc;
>
> dev_info(dev->device, "%s@%dhz registered in %s mode\n",
> int_name ? int_name : " ", dev->clk_freq_hz,
> (dev->irq >= 0) ? "interrupt" : "polling");
>
> return 0;
> -
> -probe_errorout:
> - return rc;
> }
>
> static void brcmstb_i2c_remove(struct platform_device *pdev)
> --
> 2.39.0
>
On 7/10/2023 8:33 AM, Yangtao Li wrote:
> Use devm_platform_ioremap_resource() to simplify code.
>
> Signed-off-by: Yangtao Li <[email protected]>
Reviewed-by: Florian Fainelli <[email protected]>
--
Florian
Hi Yangtao,
On Mon, Jul 10, 2023 at 02:33:42PM +0800, Yangtao Li wrote:
> Use devm_platform_ioremap_resource() to simplify code.
>
> Signed-off-by: Yangtao Li <[email protected]>
Reviewed-by: Andi Shyti <[email protected]>
Andi