2008-08-07 15:36:17

by Randy Dunlap

[permalink] [raw]
Subject: [PATCH -next] drm: sis depends on FB_SIS

From: Randy Dunlap <[email protected]>
cc: [email protected]

drm/sis calls mm functions in fb/sis, so make the former depend
on the latter.

This one happened with FB_SIS=m, AGP_SIS=y, DRM_SYS=y.

sis1.out:sis_mm.c:(.text+0x70014): undefined reference to `sis_free'
sis1.out:sis_mm.c:(.text+0x7002a): undefined reference to `sis_malloc'

Signed-off-by: Randy Dunlap <[email protected]>
---
drivers/gpu/drm/Kconfig | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

--- linux-next-20080806.orig/drivers/gpu/drm/Kconfig
+++ linux-next-20080806/drivers/gpu/drm/Kconfig
@@ -86,7 +86,7 @@ config DRM_MGA

config DRM_SIS
tristate "SiS video cards"
- depends on DRM && AGP
+ depends on DRM && AGP && FB_SIS
help
Choose this option if you have a SiS 630 or compatible video
chipset. If M is selected the module will be called sis. AGP


---
~Randy
Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
http://linuxplumbersconf.org/


2008-08-07 23:10:08

by Dave Airlie

[permalink] [raw]
Subject: Re: [PATCH -next] drm: sis depends on FB_SIS


> From: Randy Dunlap <[email protected]>
> cc: [email protected]
>
> drm/sis calls mm functions in fb/sis, so make the former depend
> on the latter.
>
> This one happened with FB_SIS=m, AGP_SIS=y, DRM_SYS=y.
>
> sis1.out:sis_mm.c:(.text+0x70014): undefined reference to `sis_free'
> sis1.out:sis_mm.c:(.text+0x7002a): undefined reference to `sis_malloc'
>
> Signed-off-by: Randy Dunlap <[email protected]>

NAK but I've no idea what the right answer is.

If someone asks for sisfb then sis drm uses code from it, if they don't
ask for it it doesn't. So I want sisfb to be built in if its selected and
sis drm is built-in.

Maybe I should just rip the dependency out completely, but this patch will
break stuff badly, if someone was using the SIS DRM without sisfb.

Dave.

> ---
> drivers/gpu/drm/Kconfig | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> --- linux-next-20080806.orig/drivers/gpu/drm/Kconfig
> +++ linux-next-20080806/drivers/gpu/drm/Kconfig
> @@ -86,7 +86,7 @@ config DRM_MGA
>
> config DRM_SIS
> tristate "SiS video cards"
> - depends on DRM && AGP
> + depends on DRM && AGP && FB_SIS
> help
> Choose this option if you have a SiS 630 or compatible video
> chipset. If M is selected the module will be called sis. AGP
>
>
> ---
> ~Randy
> Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
> http://linuxplumbersconf.org/
>
>

2008-08-08 01:02:43

by Randy Dunlap

[permalink] [raw]
Subject: Re: [PATCH -next] drm: sis depends on FB_SIS

On Fri, 8 Aug 2008 00:09:42 +0100 (IST) Dave Airlie wrote:

>
> > From: Randy Dunlap <[email protected]>
> > cc: [email protected]
> >
> > drm/sis calls mm functions in fb/sis, so make the former depend
> > on the latter.
> >
> > This one happened with FB_SIS=m, AGP_SIS=y, DRM_SYS=y.
> >
> > sis1.out:sis_mm.c:(.text+0x70014): undefined reference to `sis_free'
> > sis1.out:sis_mm.c:(.text+0x7002a): undefined reference to `sis_malloc'
> >
> > Signed-off-by: Randy Dunlap <[email protected]>
>
> NAK but I've no idea what the right answer is.

I sort of expected a NAK. Is OK.


> If someone asks for sisfb then sis drm uses code from it, if they don't
> ask for it it doesn't. So I want sisfb to be built in if its selected and
> sis drm is built-in.

config DRM_SIS
select FB_SIS

might do it.

> Maybe I should just rip the dependency out completely, but this patch will
> break stuff badly, if someone was using the SIS DRM without sisfb.
>
> Dave.
>
> > ---
> > drivers/gpu/drm/Kconfig | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > --- linux-next-20080806.orig/drivers/gpu/drm/Kconfig
> > +++ linux-next-20080806/drivers/gpu/drm/Kconfig
> > @@ -86,7 +86,7 @@ config DRM_MGA
> >
> > config DRM_SIS
> > tristate "SiS video cards"
> > - depends on DRM && AGP
> > + depends on DRM && AGP && FB_SIS
> > help
> > Choose this option if you have a SiS 630 or compatible video
> > chipset. If M is selected the module will be called sis. AGP

---
~Randy
Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
http://linuxplumbersconf.org/

2008-08-08 02:11:17

by Dave Airlie

[permalink] [raw]
Subject: Re: [PATCH -next] drm: sis depends on FB_SIS


> > If someone asks for sisfb then sis drm uses code from it, if they don't
> > ask for it it doesn't. So I want sisfb to be built in if its selected and
> > sis drm is built-in.
>
> config DRM_SIS
> select FB_SIS

Maybe the other way around, I don't want DRM_SIS influencing whether
FB_SIS is on or off, if the user wants sisfb on, then when they select it,
DRM_SIS should be built in the same way. But if sisfb isn't selected by
the user, then selecting DRM_SIS shouldn't enable it.

Dave.

>
> might do it.
>
> > Maybe I should just rip the dependency out completely, but this patch will
> > break stuff badly, if someone was using the SIS DRM without sisfb.
> >
> > Dave.
> >
> > > ---
> > > drivers/gpu/drm/Kconfig | 2 +-
> > > 1 file changed, 1 insertion(+), 1 deletion(-)
> > >
> > > --- linux-next-20080806.orig/drivers/gpu/drm/Kconfig
> > > +++ linux-next-20080806/drivers/gpu/drm/Kconfig
> > > @@ -86,7 +86,7 @@ config DRM_MGA
> > >
> > > config DRM_SIS
> > > tristate "SiS video cards"
> > > - depends on DRM && AGP
> > > + depends on DRM && AGP && FB_SIS
> > > help
> > > Choose this option if you have a SiS 630 or compatible video
> > > chipset. If M is selected the module will be called sis. AGP
>
> ---
> ~Randy
> Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
> http://linuxplumbersconf.org/
>
>

2008-08-12 13:01:21

by Adrian Bunk

[permalink] [raw]
Subject: Re: [PATCH -next] drm: sis depends on FB_SIS

On Fri, Aug 08, 2008 at 03:11:03AM +0100, Dave Airlie wrote:
>
> > > If someone asks for sisfb then sis drm uses code from it, if they don't
> > > ask for it it doesn't. So I want sisfb to be built in if its selected and
> > > sis drm is built-in.
> >
> > config DRM_SIS
> > select FB_SIS
>
> Maybe the other way around, I don't want DRM_SIS influencing whether
> FB_SIS is on or off, if the user wants sisfb on, then when they select it,
> DRM_SIS should be built in the same way. But if sisfb isn't selected by
> the user, then selecting DRM_SIS shouldn't enable it.

If FB_SIS=m, should DRM_SIS=y be allowed or should in this case DRM_SIS
be restricted to n/m?

> Dave.

cu
Adrian

--

"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed

2008-08-12 21:37:16

by Dave Airlie

[permalink] [raw]
Subject: Re: [PATCH -next] drm: sis depends on FB_SIS


> >
> > Maybe the other way around, I don't want DRM_SIS influencing whether
> > FB_SIS is on or off, if the user wants sisfb on, then when they select it,
> > DRM_SIS should be built in the same way. But if sisfb isn't selected by
> > the user, then selecting DRM_SIS shouldn't enable it.
>
> If FB_SIS=m, should DRM_SIS=y be allowed or should in this case DRM_SIS
> be restricted to n/m?

Probably not. if FB_SIS is selected at all, DRM_SIS should match it, if
FB_SIS isn't selected, DRM_SIS should not select it.

Dave.

2008-08-13 21:59:30

by Adrian Bunk

[permalink] [raw]
Subject: [RFC: -next patch] don't allow FB_SIS=m, DRM_SIS=y

On Tue, Aug 12, 2008 at 10:37:00PM +0100, Dave Airlie wrote:
>
> > >
> > > Maybe the other way around, I don't want DRM_SIS influencing whether
> > > FB_SIS is on or off, if the user wants sisfb on, then when they select it,
> > > DRM_SIS should be built in the same way. But if sisfb isn't selected by
> > > the user, then selecting DRM_SIS shouldn't enable it.
> >
> > If FB_SIS=m, should DRM_SIS=y be allowed or should in this case DRM_SIS
> > be restricted to n/m?
>
> Probably not. if FB_SIS is selected at all, DRM_SIS should match it, if
> FB_SIS isn't selected, DRM_SIS should not select it.

I assume FB_SIS=y, DRM_SIS=m should still be possible?

If this assumption is correct the fix is below.

> Dave.

cu
Adrian


<-- snip -->


FB_SIS=m, DRM_SIS=y is not a legal configuration.

Reported-by: Randy Dunlap <[email protected]>
Signed-off-by: Adrian Bunk <[email protected]>

---
c303119b9561e13be97f3d4b0d7eaa6930fc21d8
diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
index 610d6fd..bf9003e 100644
--- a/drivers/gpu/drm/Kconfig
+++ b/drivers/gpu/drm/Kconfig
@@ -87,6 +87,7 @@ config DRM_MGA
config DRM_SIS
tristate "SiS video cards"
depends on DRM && AGP
+ depends on FB_SIS || FB_SIS=n
help
Choose this option if you have a SiS 630 or compatible video
chipset. If M is selected the module will be called sis. AGP

2008-08-19 22:32:10

by Randy Dunlap

[permalink] [raw]
Subject: Re: [RFC: -next patch] don't allow FB_SIS=m, DRM_SIS=y

On Thu, 14 Aug 2008 00:57:28 +0300 Adrian Bunk wrote:

> On Tue, Aug 12, 2008 at 10:37:00PM +0100, Dave Airlie wrote:
> >
> > > >
> > > > Maybe the other way around, I don't want DRM_SIS influencing whether
> > > > FB_SIS is on or off, if the user wants sisfb on, then when they select it,
> > > > DRM_SIS should be built in the same way. But if sisfb isn't selected by
> > > > the user, then selecting DRM_SIS shouldn't enable it.
> > >
> > > If FB_SIS=m, should DRM_SIS=y be allowed or should in this case DRM_SIS
> > > be restricted to n/m?
> >
> > Probably not. if FB_SIS is selected at all, DRM_SIS should match it, if
> > FB_SIS isn't selected, DRM_SIS should not select it.
>
> I assume FB_SIS=y, DRM_SIS=m should still be possible?
>
> If this assumption is correct the fix is below.
>
> > Dave.
>
> cu
> Adrian
>
>
> <-- snip -->
>
>
> FB_SIS=m, DRM_SIS=y is not a legal configuration.
>
> Reported-by: Randy Dunlap <[email protected]>
> Signed-off-by: Adrian Bunk <[email protected]>
>
> ---
> c303119b9561e13be97f3d4b0d7eaa6930fc21d8
> diff --git a/drivers/gpu/drm/Kconfig b/drivers/gpu/drm/Kconfig
> index 610d6fd..bf9003e 100644
> --- a/drivers/gpu/drm/Kconfig
> +++ b/drivers/gpu/drm/Kconfig
> @@ -87,6 +87,7 @@ config DRM_MGA
> config DRM_SIS
> tristate "SiS video cards"
> depends on DRM && AGP
> + depends on FB_SIS || FB_SIS=n
> help
> Choose this option if you have a SiS 630 or compatible video
> chipset. If M is selected the module will be called sis. AGP
>
> --

Thanks, Adrian.

I don't know if that's the proper fix, but something needs to be fixed/merged. :(


---
~Randy
Linux Plumbers Conference, 17-19 September 2008, Portland, Oregon USA
http://linuxplumbersconf.org/