On 10/11/2019 11:05, Thomas Bogendoerfer wrote:
> Simplify ioremapping of registers by using devm_platform_ioremap_resource.
> 
> Signed-off-by: Thomas Bogendoerfer <tbogendoer...@suse.de>
> ---
>  drivers/rtc/rtc-ds1685.c   | 23 +++--------------------
>  include/linux/rtc/ds1685.h |  1 -
>  2 files changed, 3 insertions(+), 21 deletions(-)
> 
> diff --git a/drivers/rtc/rtc-ds1685.c b/drivers/rtc/rtc-ds1685.c
> index 51f568473de8..349a8d1caca1 100644
> --- a/drivers/rtc/rtc-ds1685.c
> +++ b/drivers/rtc/rtc-ds1685.c
> @@ -1040,7 +1040,6 @@ static int
>  ds1685_rtc_probe(struct platform_device *pdev)
>  {
>       struct rtc_device *rtc_dev;
> -     struct resource *res;
>       struct ds1685_priv *rtc;
>       struct ds1685_rtc_platform_data *pdata;
>       u8 ctrla, ctrlb, hours;
> @@ -1070,25 +1069,9 @@ ds1685_rtc_probe(struct platform_device *pdev)
>        * that sits behind the IOC3 PCI metadevice.
>        */
>       if (pdata->alloc_io_resources) {
> -             /* Get the platform resources. */
> -             res = platform_get_resource(pdev, IORESOURCE_MEM, 0);
> -             if (!res)
> -                     return -ENXIO;
> -             rtc->size = resource_size(res);
> -
> -             /* Request a memory region. */
> -             /* XXX: mmio-only for now. */
> -             if (!devm_request_mem_region(&pdev->dev, res->start, rtc->size,
> -                                          pdev->name))
> -                     return -EBUSY;
> -
> -             /*
> -              * Set the base address for the rtc, and ioremap its
> -              * registers.
> -              */
> -             rtc->regs = devm_ioremap(&pdev->dev, res->start, rtc->size);
> -             if (!rtc->regs)
> -                     return -ENOMEM;
> +             rtc->regs = devm_platform_ioremap_resource(pdev, 0);
> +             if (IS_ERR(rtc->regs))
> +                     return PTR_ERR(rtc->regs);
>       }
>  
>       /* Get the register step size. */
> diff --git a/include/linux/rtc/ds1685.h b/include/linux/rtc/ds1685.h
> index b9671d00d964..101c7adc05a2 100644
> --- a/include/linux/rtc/ds1685.h
> +++ b/include/linux/rtc/ds1685.h
> @@ -43,7 +43,6 @@ struct ds1685_priv {
>       struct rtc_device *dev;
>       void __iomem *regs;
>       u32 regstep;
> -     size_t size;
>       int irq_num;
>       bool bcd_mode;
>       bool no_irq;
> 


Acked-by: Joshua Kinard <ku...@gentoo.org>

Reply via email to