Subject: Re: [PATCH v2 net-next 08/14] net: dsa: felix: update init_regmap to be string-based

From: Jakub Kicinski <[email-masked]>
Date: Thu, 22 Sep 2022 19:39:06 -0700

On Wed, 21 Sep 2022 21:00:56 -0700 Colin Foster wrote:
> During development, it was believed that a wrapper for ocelot_regmap_init()
> would be sufficient for the felix driver to work in non-mmio scenarios.
> This was merged in during commit 242bd0c10bbd ("net: dsa: ocelot: felix:
> add interface for custom regmaps")
> 
> As the external ocelot DSA driver grew closer to an acceptable state, it
> was realized that most of the parameters that were passed in from struct
> resource *res were useless and ignored. This is due to the fact that the
> external ocelot DSA driver utilizes dev_get_regmap(dev, resource->name).
> 
> Instead of simply ignoring those parameters, refactor the API to only
> require the name as an argument. MMIO scenarios this will reconstruct the
> struct resource before calling ocelot_regmap_init(ocelot, resource). MFD
> scenarios need only call dev_get_regmap(dev, name).
> 
> Signed-off-by: Colin Foster <[email-masked]>

drivers/net/dsa/ocelot/felix.c:1328:14: warning: variable 'match' is used uninitialized whenever 'for' loop exits because its condition is false [-Wsometimes-uninitialized]
        for (i = 0; i < TARGET_MAX; i++) {
                    ^~~~~~~~~~~~~~
drivers/net/dsa/ocelot/felix.c:1338:7: note: uninitialized use occurs here
        if (!match) {
             ^~~~~
drivers/net/dsa/ocelot/felix.c:1328:14: note: remove the condition if it is always true
        for (i = 0; i < TARGET_MAX; i++) {
                    ^~~~~~~~~~~~~~
drivers/net/dsa/ocelot/felix.c:1324:30: note: initialize the variable 'match' to silence this warning
        const struct resource *match;
                                    ^
                                     = NULL