Re: [PATCH net-next 2/6] net: ipa: kill gsi->virt_raw

From: Alex Elder
Date: Sun Mar 05 2023 - 11:59:05 EST


On 2/17/23 7:04 AM, Alex Elder wrote:
On 2/17/23 5:57 AM, Alexander Lobakin wrote:
just devm_platform_ioremap_resource_byname() be used here for simplicity?
Previously, virt_raw would be the "real" re-mapped pointer, and then
virt would be adjusted downward from that.  It was a weird thing to
do, because the result pointed to a non-mapped address.  But all uses
of the virt pointer added an offset that was enough to put the result
into the mapped range.

The new code updates all offsets to account for what the adjustment
previously did.  The test that got removed isn't necessary any more.
Yeah I got it, just asked that maybe you can now use
platform_ioremap_resource_byname() instead of
platform_get_resource_byname() + ioremap() :)

Sorry, I focused on the "devm" part and not this part.
Yes I like that, but let me do that as a follow-on
patch, and I think I can do it in more than this
spot (possibly three, but I have to look closely).

Looking at this today, the only OF functions that look up a
resource and I/O remap it in one call are devm_*() variants.
There is no platform_ioremap_resource_byname() function.

One that's available is devm_platform_ioremap_resource_byname(),
which could possibly be used in the two locations that call
platform_get_resource_byname() followed by ioremap().

As I said earlier, if I were to use any devm_*() function
calls the driver, I would want to convert *everything* to
use devm_*() variants, and I have no plans to do that at
this time.

So I will not be implementing your suggestion.

-Alex

Thanks.

                    -Alex