[U-Boot] [PATCH v4 4/4]: arm: Define test_and_set_bit and test_and_clear bit for ARM

Simon Kagstrom
2009-09-07T06:26:58Z

Hi Justin!

On Fri, 4 Sep 2009 17:27:59 -0400
Justin Waters <justin.waters@timesys.com> wrote:

> I found a slight problem with this section of the patch:
>
> On Mon, 2009-08-24 at 03:10 -0400, Simon Kagstrom wrote:
> > diff --git a/include/asm-arm/bitops.h b/include/asm-arm/bitops.h
> > index 854e225..3c7b00c 100644
> > --- a/include/asm-arm/bitops.h
> > +++ b/include/asm-arm/bitops.h
> > @@ -17,6 +17,8 @@
> >
> > #ifdef __KERNEL__
> >
> > +#include <asm/proc/system.h>
> > +
>
> It causes a compiler error on the arm926ejs platform:
>
> In file included from cpu.c:34:
> /home/justin/git/u-boot/include/asm/system.h: At top level:
> /home/justin/git/u-boot/include/asm/system.h:71: error: expected
> identifier or '(' before 'asm'
>
> I did some digging, and it looks like set_cr() is implemented by both
> asm-arm/system.h and asm-arm/proc-armv/system.h. One implements the
> function as a macro, while the other uses a standard C function, hence
> the weird error message. The conflict occurs in cpu/arm926ejs/cpu.c.

You are right, but I believe this was fixed an earlier patch, "[PATCH]
Remove duplicate set_cr" [1], which is in the ARM tree. I guess that
one hasn't shown up in Wolfgangs repository yet, so this series must be
applied to the ARM tree for now.

Thanks for testing!

// Simon

[1] http://git.denx.de/?p=u-boot/u-boot-arm.git;a=commit;h=f3d4f8870e69e0fd177397778d97d0751bbd020a