Patchwork mb862xx: Restrict compliation of platform driver to PPC

login
register
mail settings
Submitter Julian Calaby
Date Jan. 12, 2009, 12:06 a.m.
Message ID <496A89A1.8050302@gmail.com>
Download mbox | patch
Permalink /patch/17865/
State Not Applicable
Headers show

Comments

Julian Calaby - Jan. 12, 2009, 12:06 a.m.
mb862xx: Restrict compliation of platform driver to PPC

The OpenFirmware part of this driver is uncompilable on SPARC due to it's dependance on several PPC specific functions.

Restricting this to PPC to prevent these build errors.

This was found using randconfig builds.

Signed-off-by: Julian Calaby <julian.calaby@gmail.com>

---

A couple of notes:

1. After looking at the includes used by this driver, the OF part may not compile cleanly on PPC either as it doesn't appear to pull in the required headers for all the functions and constants it uses.

2. Also, this bug will *not* show up in allmodconfigs or allyesconfigs as the OF part of this driver is prevented from building when the PCI driver is built, and the PCI driver appears first.

3. This patch is over DaveM's sparc-2.6 git tree as of today.

4. I apologise for the massive cross-posting - I am not sure where exactly to send this patch.

5. Please note that I am not a member of any of these lists, so please keep me CC'd.

Thanks,

Julian Calaby

---
 drivers/video/Kconfig |    1 +
 1 files changed, 1 insertions(+), 0 deletions(-)
Julian Calaby - Jan. 20, 2009, 12:50 a.m.
Ping?

Does anyone maintain this driver?

(akpm: Sorry for cc'ing you on this, I'm not sure who else to send it to)

On Mon, Jan 12, 2009 at 11:06, Julian Calaby <julian.calaby@gmail.com> wrote:
> mb862xx: Restrict compliation of platform driver to PPC
>
> The OpenFirmware part of this driver is uncompilable on SPARC due to it's dependance on several PPC specific functions.
>
> Restricting this to PPC to prevent these build errors.
>
> This was found using randconfig builds.
>
> Signed-off-by: Julian Calaby <julian.calaby@gmail.com>
>
> ---
>
> A couple of notes:
>
> 1. After looking at the includes used by this driver, the OF part may not compile cleanly on PPC either as it doesn't appear to pull in the required headers for all the functions and constants it uses.
>
> 2. Also, this bug will *not* show up in allmodconfigs or allyesconfigs as the OF part of this driver is prevented from building when the PCI driver is built, and the PCI driver appears first.
>
> 3. This patch is over DaveM's sparc-2.6 git tree as of today.
>
> 4. I apologise for the massive cross-posting - I am not sure where exactly to send this patch.
>
> 5. Please note that I am not a member of any of these lists, so please keep me CC'd.
>
> Thanks,
>
> Julian Calaby
>
> ---
>  drivers/video/Kconfig |    1 +
>  1 files changed, 1 insertions(+), 0 deletions(-)
>
> diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
> index 6372f8b..8f18169 100644
> --- a/drivers/video/Kconfig
> +++ b/drivers/video/Kconfig
> @@ -2111,6 +2111,7 @@ config FB_MB862XX_LIME
>        bool "Lime GDC"
>        depends on FB_MB862XX
>        depends on OF && !FB_MB862XX_PCI_GDC
> +       depends on PPC
>        select FB_FOREIGN_ENDIAN
>        select FB_LITTLE_ENDIAN
>        ---help---
>
>
Anton Vorontsov - Jan. 20, 2009, 1:19 a.m.
On Tue, Jan 20, 2009 at 11:50:33AM +1100, Julian Calaby wrote:
> Ping?
> 
> Does anyone maintain this driver?

Should be Anatolij. ;-)

But I'm interested in this driver as well.

FWIW, the patch looks OK, except for the long lines in the commit log.
Also you'd better mention exact build error in the commit log.

Reviewed-by: Anton Vorontsov <avorontsov@ru.mvista.com>


(Btw, we'd better fix the build for sparc instead of adding another
"depends on". Could anybody point to some recent, working sparc cross
toolchain? Last time I googled for it I found only some prehistoric
versions that I didn't bother to try...)

> (akpm: Sorry for cc'ing you on this, I'm not sure who else to send it to)
> 
> On Mon, Jan 12, 2009 at 11:06, Julian Calaby <julian.calaby@gmail.com> wrote:
> > mb862xx: Restrict compliation of platform driver to PPC
> >
> > The OpenFirmware part of this driver is uncompilable on SPARC due to it's dependance on several PPC specific functions.
> >
> > Restricting this to PPC to prevent these build errors.
> >
> > This was found using randconfig builds.
> >
> > Signed-off-by: Julian Calaby <julian.calaby@gmail.com>
> >
> > ---
> >
> > A couple of notes:
> >
> > 1. After looking at the includes used by this driver, the OF part may not compile cleanly on PPC either as it doesn't appear to pull in the required headers for all the functions and constants it uses.
> >
> > 2. Also, this bug will *not* show up in allmodconfigs or allyesconfigs as the OF part of this driver is prevented from building when the PCI driver is built, and the PCI driver appears first.
> >
> > 3. This patch is over DaveM's sparc-2.6 git tree as of today.
> >
> > 4. I apologise for the massive cross-posting - I am not sure where exactly to send this patch.
> >
> > 5. Please note that I am not a member of any of these lists, so please keep me CC'd.
> >
> > Thanks,
> >
> > Julian Calaby
> >
> > ---
> >  drivers/video/Kconfig |    1 +
> >  1 files changed, 1 insertions(+), 0 deletions(-)
> >
> > diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
> > index 6372f8b..8f18169 100644
> > --- a/drivers/video/Kconfig
> > +++ b/drivers/video/Kconfig
> > @@ -2111,6 +2111,7 @@ config FB_MB862XX_LIME
> >        bool "Lime GDC"
> >        depends on FB_MB862XX
> >        depends on OF && !FB_MB862XX_PCI_GDC
> > +       depends on PPC
> >        select FB_FOREIGN_ENDIAN
> >        select FB_LITTLE_ENDIAN
> >        ---help---
> >
> >
Julian Calaby - Jan. 20, 2009, 2 a.m.
On Tue, Jan 20, 2009 at 12:19, Anton Vorontsov <avorontsov@ru.mvista.com> wrote:
> Should be Anatolij. ;-)

Who is the first person on the list, I guess he's missed this or isn't
reading his email.

> But I'm interested in this driver as well.
>
> FWIW, the patch looks OK, except for the long lines in the commit log.

I don't expect this to be applied as is. There is a better fix out
there, but I don't know the hardware so I'm not sure what it is.

> Also you'd better mention exact build error in the commit log.

Essentially it's a huge list of missing definitions for functions
which aren't defined for SPARC. I'll reply with it if you really want
it, however they look to be PPC specific. If they were generic I would
have simply included the correct files so that it compiled, rather
than this nasty hack.

It also appears that these functions are not defined in the headers
that this driver includes.

> (Btw, we'd better fix the build for sparc instead of adding another
> "depends on". Could anybody point to some recent, working sparc cross
> toolchain? Last time I googled for it I found only some prehistoric
> versions that I didn't bother to try...)

Before we commit to fixing this properly, is it really worth it? Is
this hardware ever likely to be used with SPARC?

Given that there are PCI and OF versions of the driver, it seems to me
that this is available as a PCI expansion card, and as a graphics chip
built into some PPC motherboards. The initial commit says: "Lime GDC
support is known to work on PPC440EPx based lwmon5 and MPC8544E based
socrates embedded boards, both equipped with Lime GDC." so I'm
guessing that this graphics chip is designed for embedded boards. I
can find references to it's use in embedded automotive applications on
Google but I can't find any reference to the Fujitsu LIME (MB86276)
and SPARC on Google.

Note that the PCI version of this driver compiles fine with both
allyesconfig and allmodconfig.

If you're sure you want to do this, I'd check out crosstool for a
SPARC cross-complier.

Two other things:
1. SPARC32 and SPARC64 can be compiled with the same compiler.
2. These two platforms have slightly different OpenFirmware interfaces
- so fixing it for both of these will be a pain.

Thanks,
Anatolij Gustschin - Jan. 20, 2009, 1:57 p.m.
Julian Calaby wrote:
> mb862xx: Restrict compliation of platform driver to PPC
> 
> The OpenFirmware part of this driver is uncompilable on SPARC due to it's dependance on several PPC specific functions.
> 
> Restricting this to PPC to prevent these build errors.
> 
> This was found using randconfig builds.
> 
> Signed-off-by: Julian Calaby <julian.calaby@gmail.com>

Acked-by: Anatolij Gustschin <agust@denx.de>
Anatolij Gustschin - Jan. 23, 2009, 10:31 a.m.
Julian Calaby wrote:
> On Tue, Jan 20, 2009 at 12:19, Anton Vorontsov <avorontsov@ru.mvista.com> wrote:
>> Should be Anatolij. ;-)
> 
> Who is the first person on the list, I guess he's missed this or isn't
> reading his email.

I missed this, sorry.

> Before we commit to fixing this properly, is it really worth it? Is
> this hardware ever likely to be used with SPARC?

I don't think it will ever be used with SPARC, so your patch is Ok.

> Given that there are PCI and OF versions of the driver, it seems to me
> that this is available as a PCI expansion card, and as a graphics chip
> built into some PPC motherboards. The initial commit says: "Lime GDC
> support is known to work on PPC440EPx based lwmon5 and MPC8544E based
> socrates embedded boards, both equipped with Lime GDC." so I'm
> guessing that this graphics chip is designed for embedded boards. I
> can find references to it's use in embedded automotive applications on
> Google but I can't find any reference to the Fujitsu LIME (MB86276)
> and SPARC on Google.

If LIME chip should ever be used with SPARC, support for this
could be added later. LIME doesn't have PCI interface, it is
connected to the host cpu bus. PCI version of the driver is for
CoralP and Carmine chips which have PCI interface.

Anatolij

Patch

diff --git a/drivers/video/Kconfig b/drivers/video/Kconfig
index 6372f8b..8f18169 100644
--- a/drivers/video/Kconfig
+++ b/drivers/video/Kconfig
@@ -2111,6 +2111,7 @@  config FB_MB862XX_LIME
 	bool "Lime GDC"
 	depends on FB_MB862XX
 	depends on OF && !FB_MB862XX_PCI_GDC
+	depends on PPC
 	select FB_FOREIGN_ENDIAN
 	select FB_LITTLE_ENDIAN
 	---help---