On Sun, Mar 12, 2023 at 11:20:38AM +0100, Krzysztof Kozlowski wrote: > On 11/03/2023 19:14, Vladimir Oltean wrote: > > On Sat, Mar 11, 2023 at 06:32:52PM +0100, Krzysztof Kozlowski wrote: > >> The driver can be compile tested with !CONFIG_OF making certain data > >> unused: > >> > >> drivers/net/dsa/lantiq_gswip.c:1888:34: error: ‘xway_gphy_match’ defined but not used [-Werror=unused-const-variable=] > >> > >> Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@xxxxxxxxxx> > >> --- > > > > Do you happen to have any context as to why of_match_node() without > > CONFIG_OF is implemented as: > > > > #define of_match_node(_matches, _node) NULL > > > > and not as: > > > > static inline const struct of_device_id * > > of_match_node(const struct of_device_id *matches, > > const struct device_node *node) > > { > > return NULL; > > } > > > > ? > > > > Generally, the static inline shim function model is nicer, because it > > allows us to not scatter __maybe_unused all around. > > Sorry, I don't follow. I don't touch that wrappers, just fix errors > related to OF device ID tables, although in few cases it is indeed > related to of_match_node. I'm saying this because in lantiq_gswip.c, xway_gphy_match is accessed through of_match_node(). If the shim definition for of_match_node() was different, the variable wouldn't have been unused with CONFIG_OF=n. I guess it's worth considering changing that wrapper instead of adding the __maybe_unused.