gpio: xgs-iproc: Fix section mismatch on device tree match table
authorMark Brown <broonie@kernel.org>
Tue, 5 Nov 2019 12:49:15 +0000 (12:49 +0000)
committerLinus Walleij <linus.walleij@linaro.org>
Thu, 7 Nov 2019 07:53:51 +0000 (08:53 +0100)
commit5d682fa3d8943c19a632ebeaf70e8b9e41c78a5b
tree01a4e532cf95d2a94c9578a137665d39feab9c07
parent504369cd6d2ce34c1225063071ac7e0a5a4d5e30
gpio: xgs-iproc: Fix section mismatch on device tree match table

The table of devicetree identifiers is annotated as __initconst
indicating that it can be discarded after kernel boot but it is
referenced from the driver struct which has no init annotation leading
to a linker warning:

WARNING: vmlinux.o(.data+0x82d58): Section mismatch in reference from the variable bcm_iproc_gpio_driver to the variable .init.rodata:bcm_iproc_gpio_of_match
The variable bcm_iproc_gpio_driver references
the variable __initconst bcm_iproc_gpio_of_match

Since drivers can be probed after init the lack of annotation on the
driver struct is correct so remove the annotation from the match table.

Fixes: 6a41b6c5fc20 ("gpio: Add xgs-iproc driver")
Signed-off-by: Mark Brown <broonie@kernel.org>
Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Reviewed-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Tested-by: Yoshihiro Shimoda <yoshihiro.shimoda.uh@renesas.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
drivers/gpio/gpio-xgs-iproc.c