2021-05-17 05:48:31

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH] MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c

rt2880_wdt.c uses (well, attempts to use) rt_sysc_membase. However,
when this watchdog driver is built as a loadable module, there is a
build error since the rt_sysc_membase symbol is not exported.
Export it to quell the build error.

ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/rt2880_wdt.ko] undefined!

Fixes: 473cf939ff34 ("watchdog: add ralink watchdog driver")
Signed-off-by: Randy Dunlap <[email protected]>
Cc: Guenter Roeck <[email protected]>
Cc: Wim Van Sebroeck <[email protected]>
Cc: John Crispin <[email protected]>
Cc: [email protected]
Cc: [email protected]
---
or make the Kconfig symbol RALINK_WDT bool instead of tristate?

arch/mips/ralink/of.c | 2 ++
1 file changed, 2 insertions(+)

--- linux-next-20210514.orig/arch/mips/ralink/of.c
+++ linux-next-20210514/arch/mips/ralink/of.c
@@ -8,6 +8,7 @@

#include <linux/io.h>
#include <linux/clk.h>
+#include <linux/export.h>
#include <linux/init.h>
#include <linux/sizes.h>
#include <linux/of_fdt.h>
@@ -25,6 +26,7 @@

__iomem void *rt_sysc_membase;
__iomem void *rt_memc_membase;
+EXPORT_SYMBOL_GPL(rt_sysc_membase);

__iomem void *plat_of_remap_node(const char *node)
{


2021-05-17 07:06:33

by Guenter Roeck

[permalink] [raw]
Subject: Re: [PATCH] MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c

On 5/16/21 5:54 PM, Randy Dunlap wrote:
> rt2880_wdt.c uses (well, attempts to use) rt_sysc_membase. However,
> when this watchdog driver is built as a loadable module, there is a
> build error since the rt_sysc_membase symbol is not exported.
> Export it to quell the build error.
>
> ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/rt2880_wdt.ko] undefined!
>
> Fixes: 473cf939ff34 ("watchdog: add ralink watchdog driver")
> Signed-off-by: Randy Dunlap <[email protected]>
> Cc: Guenter Roeck <[email protected]>
> Cc: Wim Van Sebroeck <[email protected]>

Acked-by: Guenter Roeck <[email protected]>

> Cc: John Crispin <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> ---
> or make the Kconfig symbol RALINK_WDT bool instead of tristate?
>

You'd have to change several other config symbols to boolean as well.

Example with PHY_MT7621_PCI=m:

ERROR: modpost: "rt_sysc_membase" [drivers/phy/ralink/phy-mt7621-pci.ko] undefined!
make[1]: *** [scripts/Makefile.modpost:150: modules-only.symvers] Error 1

Same with MT7621_WDT=m.

ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/mt7621_wdt.ko] undefined!

At that point I stopped looking.

Guenter

> arch/mips/ralink/of.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> --- linux-next-20210514.orig/arch/mips/ralink/of.c
> +++ linux-next-20210514/arch/mips/ralink/of.c
> @@ -8,6 +8,7 @@
>
> #include <linux/io.h>
> #include <linux/clk.h>
> +#include <linux/export.h>
> #include <linux/init.h>
> #include <linux/sizes.h>
> #include <linux/of_fdt.h>
> @@ -25,6 +26,7 @@
>
> __iomem void *rt_sysc_membase;
> __iomem void *rt_memc_membase;
> +EXPORT_SYMBOL_GPL(rt_sysc_membase);
>
> __iomem void *plat_of_remap_node(const char *node)
> {
>


2021-05-17 12:10:53

by Sergio Paracuellos

[permalink] [raw]
Subject: Re: [PATCH] MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c

Hi Guenter,

On Mon, May 17, 2021 at 8:23 AM Guenter Roeck <[email protected]> wrote:
>
> On 5/16/21 5:54 PM, Randy Dunlap wrote:
> > rt2880_wdt.c uses (well, attempts to use) rt_sysc_membase. However,
> > when this watchdog driver is built as a loadable module, there is a
> > build error since the rt_sysc_membase symbol is not exported.
> > Export it to quell the build error.
> >
> > ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/rt2880_wdt.ko] undefined!
> >
> > Fixes: 473cf939ff34 ("watchdog: add ralink watchdog driver")
> > Signed-off-by: Randy Dunlap <[email protected]>
> > Cc: Guenter Roeck <[email protected]>
> > Cc: Wim Van Sebroeck <[email protected]>
>
> Acked-by: Guenter Roeck <[email protected]>
>
> > Cc: John Crispin <[email protected]>
> > Cc: [email protected]
> > Cc: [email protected]
> > ---
> > or make the Kconfig symbol RALINK_WDT bool instead of tristate?
> >
>
> You'd have to change several other config symbols to boolean as well.
>
> Example with PHY_MT7621_PCI=m:
>
> ERROR: modpost: "rt_sysc_membase" [drivers/phy/ralink/phy-mt7621-pci.ko] undefined!
> make[1]: *** [scripts/Makefile.modpost:150: modules-only.symvers] Error 1

This is already changed and not using this rt_* apis anymore. See:

https://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy.git/commit/?h=next&id=60ece833ccd00c4fc9b10bbce2fa6291f61c6230
https://git.kernel.org/pub/scm/linux/kernel/git/phy/linux-phy.git/commit/?h=next&id=6eded551cefe3ef6e2b3ff76b6a77a2ecd4fa20a

>
> Same with MT7621_WDT=m.
>
> ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/mt7621_wdt.ko] undefined!
>
> At that point I stopped looking.
>
> Guenter

Best regards,
Sergio Paracuellos

>
> > arch/mips/ralink/of.c | 2 ++
> > 1 file changed, 2 insertions(+)
> >
> > --- linux-next-20210514.orig/arch/mips/ralink/of.c
> > +++ linux-next-20210514/arch/mips/ralink/of.c
> > @@ -8,6 +8,7 @@
> >
> > #include <linux/io.h>
> > #include <linux/clk.h>
> > +#include <linux/export.h>
> > #include <linux/init.h>
> > #include <linux/sizes.h>
> > #include <linux/of_fdt.h>
> > @@ -25,6 +26,7 @@
> >
> > __iomem void *rt_sysc_membase;
> > __iomem void *rt_memc_membase;
> > +EXPORT_SYMBOL_GPL(rt_sysc_membase);
> >
> > __iomem void *plat_of_remap_node(const char *node)
> > {
> >
>

2021-05-25 13:49:51

by Thomas Bogendoerfer

[permalink] [raw]
Subject: Re: [PATCH] MIPS: ralink: export rt_sysc_membase for rt2880_wdt.c

On Sun, May 16, 2021 at 05:54:17PM -0700, Randy Dunlap wrote:
> rt2880_wdt.c uses (well, attempts to use) rt_sysc_membase. However,
> when this watchdog driver is built as a loadable module, there is a
> build error since the rt_sysc_membase symbol is not exported.
> Export it to quell the build error.
>
> ERROR: modpost: "rt_sysc_membase" [drivers/watchdog/rt2880_wdt.ko] undefined!
>
> Fixes: 473cf939ff34 ("watchdog: add ralink watchdog driver")
> Signed-off-by: Randy Dunlap <[email protected]>
> Cc: Guenter Roeck <[email protected]>
> Cc: Wim Van Sebroeck <[email protected]>
> Cc: John Crispin <[email protected]>
> Cc: [email protected]
> Cc: [email protected]
> ---
> or make the Kconfig symbol RALINK_WDT bool instead of tristate?
>
> arch/mips/ralink/of.c | 2 ++
> 1 file changed, 2 insertions(+)

applied to mips-fixes.

Thomas.

--
Crap can work. Given enough thrust pigs will fly, but it's not necessarily a
good idea. [ RFC1925, 2.3 ]