2010-04-23 12:00:18

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Wed, 2010-03-31 at 15:01 +0300, Paulius Zaleckas wrote:
> On 03/25/2010 06:26 PM, Nicolas Pitre wrote:
> > On Thu, 25 Mar 2010, Paulius Zaleckas wrote:
> >
> >> We must tell GCC to use even register for variable passed
> >> to ldrd instruction. Without this patch GCC 4.2.1 puts this
> >> variable to r2/r3 on EABI and r3/r4 on OABI, so force it to
> >> r2/r3. This does not change anything when EABI and OABI
> >> compilation works OK.
> >>
> >> Without this patch and with OABI I get:
> >> CC drivers/mtd/nand/orion_nand.o
> >> /tmp/ccMkwOCs.s: Assembler messages:
> >> /tmp/ccMkwOCs.s:63: Error: first destination register must be even -- `ldrd r3,[ip]'
> >> make[5]: *** [drivers/mtd/nand/orion_nand.o] Error 1
> >>
> >> Signed-off-by: Paulius Zaleckas<[email protected]>
> >
> > Acked-by: Nicolas Pitre<[email protected]>
>
> David,
>
> Will you take this patch?
> Or you are waiting till I will add all Cc as Jamie suggested?

Meanwhile, I've pushed your patch to my l2-mtd-2.6.git / dunno.

--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)


2010-04-23 12:54:18

by Nicolas Pitre

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Fri, 23 Apr 2010, Artem Bityutskiy wrote:

> On Wed, 2010-03-31 at 15:01 +0300, Paulius Zaleckas wrote:
> > On 03/25/2010 06:26 PM, Nicolas Pitre wrote:
> > > On Thu, 25 Mar 2010, Paulius Zaleckas wrote:
> > >
> > >> We must tell GCC to use even register for variable passed
> > >> to ldrd instruction. Without this patch GCC 4.2.1 puts this
> > >> variable to r2/r3 on EABI and r3/r4 on OABI, so force it to
> > >> r2/r3. This does not change anything when EABI and OABI
> > >> compilation works OK.
> > >>
> > >> Without this patch and with OABI I get:
> > >> CC drivers/mtd/nand/orion_nand.o
> > >> /tmp/ccMkwOCs.s: Assembler messages:
> > >> /tmp/ccMkwOCs.s:63: Error: first destination register must be even -- `ldrd r3,[ip]'
> > >> make[5]: *** [drivers/mtd/nand/orion_nand.o] Error 1
> > >>
> > >> Signed-off-by: Paulius Zaleckas<[email protected]>
> > >
> > > Acked-by: Nicolas Pitre<[email protected]>
> >
> > David,
> >
> > Will you take this patch?
> > Or you are waiting till I will add all Cc as Jamie suggested?
>
> Meanwhile, I've pushed your patch to my l2-mtd-2.6.git / dunno.

I think it should go to mainline. It is not perfect, but still better
than the current situation.


Nicolas

2010-04-23 15:13:49

by Artem Bityutskiy

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Fri, 2010-04-23 at 08:54 -0400, Nicolas Pitre wrote:
> On Fri, 23 Apr 2010, Artem Bityutskiy wrote:
>
> > On Wed, 2010-03-31 at 15:01 +0300, Paulius Zaleckas wrote:
> > > On 03/25/2010 06:26 PM, Nicolas Pitre wrote:
> > > > On Thu, 25 Mar 2010, Paulius Zaleckas wrote:
> > > >
> > > >> We must tell GCC to use even register for variable passed
> > > >> to ldrd instruction. Without this patch GCC 4.2.1 puts this
> > > >> variable to r2/r3 on EABI and r3/r4 on OABI, so force it to
> > > >> r2/r3. This does not change anything when EABI and OABI
> > > >> compilation works OK.
> > > >>
> > > >> Without this patch and with OABI I get:
> > > >> CC drivers/mtd/nand/orion_nand.o
> > > >> /tmp/ccMkwOCs.s: Assembler messages:
> > > >> /tmp/ccMkwOCs.s:63: Error: first destination register must be even -- `ldrd r3,[ip]'
> > > >> make[5]: *** [drivers/mtd/nand/orion_nand.o] Error 1
> > > >>
> > > >> Signed-off-by: Paulius Zaleckas<[email protected]>
> > > >
> > > > Acked-by: Nicolas Pitre<[email protected]>
> > >
> > > David,
> > >
> > > Will you take this patch?
> > > Or you are waiting till I will add all Cc as Jamie suggested?
> >
> > Meanwhile, I've pushed your patch to my l2-mtd-2.6.git / dunno.
>
> I think it should go to mainline. It is not perfect, but still better
> than the current situation.

Fine with me, but not up to me. But I guess Andrew could merge it.

--
Best Regards,
Artem Bityutskiy (Артём Битюцкий)

2010-04-23 17:50:17

by Nicolas Pitre

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Fri, 23 Apr 2010, Artem Bityutskiy wrote:

> On Fri, 2010-04-23 at 08:54 -0400, Nicolas Pitre wrote:
> > On Fri, 23 Apr 2010, Artem Bityutskiy wrote:
> >
> > > On Wed, 2010-03-31 at 15:01 +0300, Paulius Zaleckas wrote:
> > > > On 03/25/2010 06:26 PM, Nicolas Pitre wrote:
> > > > > On Thu, 25 Mar 2010, Paulius Zaleckas wrote:
> > > > >
> > > > >> We must tell GCC to use even register for variable passed
> > > > >> to ldrd instruction. Without this patch GCC 4.2.1 puts this
> > > > >> variable to r2/r3 on EABI and r3/r4 on OABI, so force it to
> > > > >> r2/r3. This does not change anything when EABI and OABI
> > > > >> compilation works OK.
> > > > >>
> > > > >> Without this patch and with OABI I get:
> > > > >> CC drivers/mtd/nand/orion_nand.o
> > > > >> /tmp/ccMkwOCs.s: Assembler messages:
> > > > >> /tmp/ccMkwOCs.s:63: Error: first destination register must be even -- `ldrd r3,[ip]'
> > > > >> make[5]: *** [drivers/mtd/nand/orion_nand.o] Error 1
> > > > >>
> > > > >> Signed-off-by: Paulius Zaleckas<[email protected]>
> > > > >
> > > > > Acked-by: Nicolas Pitre<[email protected]>
> > > >
> > > > David,
> > > >
> > > > Will you take this patch?
> > > > Or you are waiting till I will add all Cc as Jamie suggested?
> > >
> > > Meanwhile, I've pushed your patch to my l2-mtd-2.6.git / dunno.
> >
> > I think it should go to mainline. It is not perfect, but still better
> > than the current situation.
>
> Fine with me, but not up to me. But I guess Andrew could merge it.

The patch is providing a fix to my own code, and I acked it already. The
root of the problem is a defficiency in gcc, and dwmw2 asked that a PR
be filled for that and a reference to it added to the patch. This has
been done.


Nicolas

2010-04-23 18:01:37

by Andrew Morton

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Fri, 23 Apr 2010 13:50:10 -0400 (EDT)
Nicolas Pitre <[email protected]> wrote:

> > Fine with me, but not up to me. But I guess Andrew could merge it.
>
> The patch is providing a fix to my own code, and I acked it already. The
> root of the problem is a defficiency in gcc, and dwmw2 asked that a PR
> be filled for that and a reference to it added to the patch. This has
> been done.

Well, I merged it and can send it upstream. But Jamie's observations
give me pause?

2010-04-23 18:22:09

by Nicolas Pitre

[permalink] [raw]
Subject: Re: [PATCH v2] MTD: Fix Orion NAND driver compilation with ARM OABI

On Fri, 23 Apr 2010, Andrew Morton wrote:

> On Fri, 23 Apr 2010 13:50:10 -0400 (EDT)
> Nicolas Pitre <[email protected]> wrote:
>
> > > Fine with me, but not up to me. But I guess Andrew could merge it.
> >
> > The patch is providing a fix to my own code, and I acked it already. The
> > root of the problem is a defficiency in gcc, and dwmw2 asked that a PR
> > be filled for that and a reference to it added to the patch. This has
> > been done.
>
> Well, I merged it and can send it upstream. But Jamie's observations
> give me pause?

What observation? Let me find that.


Nicolas