Re: [PATCH 3/3] platform/x86: intel_speed_select_if: Remove hardcoded map size

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2023-09-26 at 16:16 +0300, Andy Shevchenko wrote:
> On Mon, Sep 25, 2023 at 12:45:55PM -0700, Srinivas Pandruvada wrote:
> > The driver is using 256 as the size while calling devm_ioremap().
> > The
> > maximum offset is already part of struct isst_mmio_range. Use the
> > maximum offset (end field of the struct) plus 4 as the map size to
> > remove
> > hardcoded value of 256.
> 
> ...
> 
> > +       punit_dev->mmio_range = (struct isst_mmio_range *) ent-
> > >driver_data;
> > +
> > +       punit_dev->punit_mmio = devm_ioremap(&pdev->dev, base_addr,
> > +                                            punit_dev-
> > >mmio_range[1].end + sizeof(u32));
> 
> Can we rather fix the mmio_range driver data to have end be actually
> not the
> offset of the last dword? (Better maybe to keep length there.)
> 
We can. But that has to be separate patch on top as there are other
places this range is used.


> With help of
> 
>         struct resource r;
>         ...
>         r = DEFINE_RES_MEM(base_addr, mmio_range.beg +
> mmio_range.len);
> 
> you can switch to devm_ioremap_resource() API.
What is the advantage of creating a resource and then call
devm_ioremap_resource()?

Thanks,
Srinivas

> 





[Index of Archives]     [Linux Kernel Development]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux