2004-04-22 08:36:34

by René Rebe

[permalink] [raw]
Subject: [PATCH] fix compilation of ppc embedded configs

Hi,

the attached patch converts some arch/ppc/platforms/*_setup.c files to
the new openpic_init argument cleanups and additional fixes the
includes of platforms/pplus.c.

prpmc750 config and pplus config tested and booted.

--- linux-2.6.6-rc2/arch/ppc/platforms/gemini_setup.c 2004-03-11 03:55:27.000000000 +0100
+++ linux-2.6.5-wip/arch/ppc/platforms/gemini_setup.c 2004-04-19 18:02:39.000000000 +0200
@@ -324,7 +324,7 @@
void __init gemini_init_IRQ(void)
{
/* gemini has no 8259 */
- openpic_init(1, 0, 0, -1);
+ openpic_init(0);
}

#define gemini_rtc_read(x) (readb(GEMINI_RTC+(x)))
--- linux-2.6.6-rc2/arch/ppc/platforms/mvme5100_setup.c 2004-03-11 03:55:24.000000000 +0100
+++ linux-2.6.5-wip/arch/ppc/platforms/mvme5100_setup.c 2004-04-19 18:03:09.000000000 +0200
@@ -137,14 +137,14 @@
ppc_md.progress("init_irq: enter", 0);

#ifdef CONFIG_MVME5100_IPMC761_PRESENT
- openpic_init(1, NUM_8259_INTERRUPTS, NULL, -1);
+ openpic_init(NUM_8259_INTERRUPTS);

for(i=0; i < NUM_8259_INTERRUPTS; i++)
irq_desc[i].handler = &i8259_pic;

i8259_init(NULL);
#else
- openpic_init(1, 0, NULL, -1);
+ openpic_init(0);
#endif

if ( ppc_md.progress )
--- linux-2.6.6-rc2/arch/ppc/platforms/powerpmc250.c 2004-03-11 03:55:23.000000000 +0100
+++ linux-2.6.5-wip/arch/ppc/platforms/powerpmc250.c 2004-04-19 18:03:28.000000000 +0200
@@ -197,7 +197,7 @@

OpenPIC_InitSenses = powerpmc250_openpic_initsenses;
OpenPIC_NumInitSenses = sizeof(powerpmc250_openpic_initsenses);
- openpic_init(1, 0, 0, -1);
+ openpic_init(0);
}

/*
--- linux-2.6.6-rc2/arch/ppc/platforms/pplus.c 2004-04-22 10:27:16.000000000 +0200
+++ linux-2.6.5-wip/arch/ppc/platforms/pplus.c 2004-04-18 22:36:08.000000000 +0200
@@ -19,6 +19,7 @@
#include <linux/kernel.h>
#include <linux/interrupt.h>
#include <linux/init.h>
+#include <linux/initrd.h>
#include <linux/ioport.h>
#include <linux/console.h>
#include <linux/pci.h>
--- linux-2.6.6-rc2/arch/ppc/platforms/prpmc750_setup.c 2004-03-11 03:55:25.000000000 +0100
+++ linux-2.6.5-wip/arch/ppc/platforms/prpmc750_setup.c 2004-04-18 22:09:44.000000000 +0200
@@ -39,7 +39,7 @@
#include <platforms/prpmc750.h>
#include <asm/open_pic.h>
#include <asm/bootinfo.h>
-#include <asm/pplus.h>
+#include "pplus.h"

extern void prpmc750_find_bridges(void);
extern int mpic_init(void);
@@ -203,7 +203,7 @@
static void __init
prpmc750_init_IRQ(void)
{
- openpic_init(1, 0, 0, -1);
+ openpic_init(0);
}

/*
--- linux-2.6.6-rc2/arch/ppc/platforms/prpmc800_setup.c 2004-03-11 03:55:28.000000000 +0100
+++ linux-2.6.5-wip/arch/ppc/platforms/prpmc800_setup.c 2004-04-19 18:03:51.000000000 +0200
@@ -197,7 +197,7 @@
static void __init
prpmc800_init_IRQ(void)
{
- openpic_init(1, 0, 0, -1);
+ openpic_init(0);

#define PRIORITY 15
#define VECTOR 16


Sincerely yours,
Ren? Rebe
- ROCK Linux stable release maintainer

--
Ren? Rebe - Europe/Germany/Berlin
[email protected] [email protected]
http://www.rocklinux.org http://www.rocklinux-consulting.de


2004-04-26 16:48:23

by Tom Rini

[permalink] [raw]
Subject: Re: [PATCH] fix compilation of ppc embedded configs

On Thu, Apr 22, 2004 at 10:36:20AM +0200, Rene Rebe wrote:

> Hi,
>
> the attached patch converts some arch/ppc/platforms/*_setup.c files to
> the new openpic_init argument cleanups and additional fixes the
> includes of platforms/pplus.c.
>
> prpmc750 config and pplus config tested and booted.

I'd like to see the hunks that aren't tested dropped as I strongly
suspect there's more subtle errors in these platforms, if the call to
openpic_init hasn't been changed. Also, why is:

> --- linux-2.6.6-rc2/arch/ppc/platforms/pplus.c 2004-04-22 10:27:16.000000000 +0200
> +++ linux-2.6.5-wip/arch/ppc/platforms/pplus.c 2004-04-18 22:36:08.000000000 +0200
> @@ -19,6 +19,7 @@
> #include <linux/kernel.h>
> #include <linux/interrupt.h>
> #include <linux/init.h>
> +#include <linux/initrd.h>
> #include <linux/ioport.h>
> #include <linux/console.h>
> #include <linux/pci.h>

Needed? Thanks.

--
Tom Rini
http://gate.crashing.org/~trini/

2004-04-26 18:23:23

by René Rebe

[permalink] [raw]
Subject: Re: [PATCH] fix compilation of ppc embedded configs

Hi, (un CC'ed Linus)

On: Mon, 26 Apr 2004 09:46:41 -0700,
Tom Rini <[email protected]> wrote:

> I'd like to see the hunks that aren't tested dropped as I strongly

If you think so - I found it logical to fix the found on the way and
not to let too much bit-rot ...

If I have to work with one of those boards in the future I want to
track the real problems I might encounter - and not to fix 20 obvious
compile issues first ...

> suspect there's more subtle errors in these platforms, if the call to
> openpic_init hasn't been changed. Also, why is:

> > --- linux-2.6.6-rc2/arch/ppc/platforms/pplus.c 2004-04-22 10:27:16.000000000 +0200
> > +++ linux-2.6.5-wip/arch/ppc/platforms/pplus.c 2004-04-18 22:36:08.000000000 +0200
> > @@ -19,6 +19,7 @@
> > #include <linux/kernel.h>
> > #include <linux/interrupt.h>
> > #include <linux/init.h>
> > +#include <linux/initrd.h>
> > #include <linux/ioport.h>
> > #include <linux/console.h>
> > #include <linux/pci.h>
>
> Needed? Thanks.

To get the file compile - otherwise you get:

arch/ppc/platforms/pplus.c: In function `pplus_setup_arch':
arch/ppc/platforms/pplus.c:569: `initrd_start' undeclared (first use in this function)
arch/ppc/platforms/pplus.c:569: (Each undeclared identifier is reported only once
arch/ppc/platforms/pplus.c:569: for each function it appears in.)

and since I do not have all the kernel kernel in my memory and the
other files include initrd.h I thought it is the most logical thing to try ...

# grep initrd * | grep include
adir_setup.c:#include <linux/initrd.h>
apus_setup.c:#include <linux/initrd.h>
chrp_setup.c:#include <linux/initrd.h>
ev64260_setup.c:#include <linux/initrd.h>
gemini_setup.c:#include <linux/initrd.h>
k2_setup.c:#include <linux/initrd.h>
lopec_setup.c:#include <linux/initrd.h>
mcpn765_setup.c:#include <linux/initrd.h>
mvme5100_setup.c:#include <linux/initrd.h>
pal4_setup.c:#include <linux/initrd.h>
pcore_setup.c:#include <linux/initrd.h>
pmac_setup.c:#include <linux/initrd.h>
powerpmc250.c:#include <linux/initrd.h>
prep_setup.c:#include <linux/initrd.h>
prpmc750_setup.c:#include <linux/initrd.h>
prpmc800_setup.c:#include <linux/initrd.h>
sandpoint.c:#include <linux/initrd.h>
spruce.c:#include <linux/initrd.h>

Sincerely yours,
Ren? Rebe
- ROCK Linux stable release maintainer

--
Ren? Rebe - Europe/Germany/Berlin
[email protected] [email protected]
http://www.rocklinux.org http://www.rocklinux-consulting.de

2004-04-26 18:39:55

by Tom Rini

[permalink] [raw]
Subject: Re: [PATCH] fix compilation of ppc embedded configs

On Mon, Apr 26, 2004 at 08:22:57PM +0200, Rene Rebe wrote:

> Hi, (un CC'ed Linus)
>
> On: Mon, 26 Apr 2004 09:46:41 -0700,
> Tom Rini <[email protected]> wrote:
>
> > I'd like to see the hunks that aren't tested dropped as I strongly
>
> If you think so - I found it logical to fix the found on the way and
> not to let too much bit-rot ...
>
> If I have to work with one of those boards in the future I want to
> track the real problems I might encounter - and not to fix 20 obvious
> compile issues first ...

I'd really rather see a loudly broken platform than a silently broken
platform until someone with the hardware steps up and verifies that
things actually work still.

> > suspect there's more subtle errors in these platforms, if the call to
> > openpic_init hasn't been changed. Also, why is:
>
> > > --- linux-2.6.6-rc2/arch/ppc/platforms/pplus.c 2004-04-22 10:27:16.000000000 +0200
> > > +++ linux-2.6.5-wip/arch/ppc/platforms/pplus.c 2004-04-18 22:36:08.000000000 +0200
> > > @@ -19,6 +19,7 @@
> > > #include <linux/kernel.h>
> > > #include <linux/interrupt.h>
> > > #include <linux/init.h>
> > > +#include <linux/initrd.h>
> > > #include <linux/ioport.h>
> > > #include <linux/console.h>
> > > #include <linux/pci.h>
> >
> > Needed? Thanks.
>
> To get the file compile - otherwise you get:
>
> arch/ppc/platforms/pplus.c: In function `pplus_setup_arch':
> arch/ppc/platforms/pplus.c:569: `initrd_start' undeclared (first use in this function)
> arch/ppc/platforms/pplus.c:569: (Each undeclared identifier is reported only once
> arch/ppc/platforms/pplus.c:569: for each function it appears in.)
>
> and since I do not have all the kernel kernel in my memory and the
> other files include initrd.h I thought it is the most logical thing to try ...

Good enough, thanks.

--
Tom Rini
http://gate.crashing.org/~trini/