[U-Boot] [PATCH] arm: fix a build error with CONFIG_USE_IRQ

Albert ARIBAUD albert.u.boot at aribaud.net
Mon Jun 9 11:42:02 CEST 2014


Hi Masahiro,

On Mon, 09 Jun 2014 18:29:26 +0900, Masahiro Yamada
<yamada.m at jp.panasonic.com> wrote:

> Hi Albert,
> 
> 
> On Mon, 9 Jun 2014 10:35:06 +0200
> Albert ARIBAUD <albert.u.boot at aribaud.net> wrote:
> 
> > Hi Masahiro,
> > 
> > On Mon, 09 Jun 2014 16:36:56 +0900, Masahiro Yamada
> > <yamada.m at jp.panasonic.com> wrote:
> > 
> > > Hi Albert,
> > > 
> > > On Mon, 9 Jun 2014 09:14:11 +0200
> > > Albert ARIBAUD <albert.u.boot at aribaud.net> wrote:
> > > 
> > > > Hi Masahiro,
> > > > 
> > > > On Mon, 26 May 2014 19:43:50 +0900, Masahiro Yamada
> > > > <yamada.m at jp.panasonic.com> wrote:
> > > > 
> > > > > Commit 41623c91 moved exception handling to arch/arm/lib/vectors.S,
> > > > > breaking CONFIG_USE_IRQ feature.
> > > > > 
> > > > > If CONFIG_USE_IRQ is enabled, undefined reference error occurs.
> > > > > 
> > > > >   arch/arm/lib/built-in.o: In function `interrupt_init':
> > > > >   arch/arm/lib/interrupts.c:37: undefined reference to `IRQ_STACK_START'
> > > > >   arch/arm/lib/interrupts.c:37: undefined reference to `FIQ_STACK_START'
> > > > >   make: *** [u-boot] Error 1
> > > > > 
> > > > > Because arch/arm/lib/vectors.S includes references to
> > > > > CONFIG_SYS_DV_NOR_BOOT_CFG and CONFIG_USE_IRQ, it must include <config.h>.
> > > > 
> > > > I routinely build all of ARM (32-bit) and AARCH64 (64-bit) targets and
> > > > make sure all of them build properly, and concerning CONFIG_USE_IRQ, I
> > > > even have a branch set to remove this option since a
> > > > 
> > > > 	git grep CONFIG_USE_IRQ | grep -vE \
> > > > 	'(#define|#ifdef|#ifndef|#if.*defined|#undef|#endif)'
> > > > 
> > > > shows that it is defined nowhere in our code.
> > > > 
> > > > Which source code are you using?
> > > 
> > > Out-of-tree board support code, maintained locally.
> > 
> > Then I'm afraid you'll have to keep this patch local too -- and note
> > that I am considering overhauling, and possibly removing entirely,
> > CONFIG_USE_IRQ (my grep command comes from my WIP on this).
> 
> 
> You are not understanding at all what is the problem.
> 
> You changed the behaviour of three boards,
> "enbw_cmc", "da850evm_direct_nor", "calimain"!
> Probably they are broken.
> 
> These boards expects "0x00000011" (=CONFIG_SYS_DV_NOR_BOOT_CFG)
> at the beginning of the image.
> But since commit 41623c91, that is missing.
> 
> If you still don't understand,  you should checkout   41623c91^ and 41623c91
> and compare u-boot.dis.

Sorry, I though your patch was about CONFIG_USE_IRQ and its related
feature, as the subject and commit message both heavily refer to it
and mention CONFIG_SYS_DV_NOR_BOOT_CFG almost incidentally.

Since the issue is that CONFIG_SYS_DV_NOR_BOOT_CFG definition is broken
for three mainline targets, then then please repost a V2 of your
patch, with an amended commit message (and subject) which make it clear
that the problem is with CONFIG_SYS_DV_NOR_BOOT_CFG breaking these
boards, not with CONFIG_USE_IRQ which is unused anyway. I will then make
sure to apply your V2 patch ASAP as it is a bug fix.

> Best Regards
> Masahiro Yamada

Amicalement,
-- 
Albert.


More information about the U-Boot mailing list