From mboxrd@z Thu Jan 1 00:00:00 1970 From: Dirk Behme Date: Wed, 19 Dec 2007 09:58:58 +0100 Subject: [U-Boot-Users] [PATCH] ARM926: compile cpu_init_crit function only if CONFIG_SKIP_LOWLEVEL_INIT is not defined In-Reply-To: <59A262E22379284C89D92D603B117F01019E75@blrexsr3.slti.sanyo.co.in> References: <59A262E22379284C89D92D603B117F01019E75@blrexsr3.slti.sanyo.co.in> Message-ID: <4768DD52.2090403@googlemail.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de Gururaja Hebbar K R wrote: > Hi, > > At present in "start.S" inside cpu\arm926ejs, cpu_init_crit is called > only if "CONFIG_SKIP_LOWLEVEL_INIT" is not defined > > #ifndef CONFIG_SKIP_LOWLEVEL_INIT > bl cpu_init_crit > #endif > > But "cpu_init_crit" function doesnt have any if defs which means > cpu_init_crit function will compile irrespective of > "CONFIG_SKIP_LOWLEVEL_INIT". Yes, thats clear. > Hence the patch. The same is done in other > processor files. Kindly check "cpu\arm920t\start.S" So the only reason that you do this is because its done in other files this way as well? To not execute cpu_init_crit the existing ifndef is sufficent. But my point is: When you want to decrease resulting binary size by excluding unnecessary code (cpu_init_crit), then you should also exclude the then unused board specific lowlevel_init called from cpu_init_crit as well. Dirk > ------------------------------------------------------------------------ > *From:* Dirk Behme [mailto:dirk.behme at googlemail.com] > *Sent:* Wed 19-Dec-07 3:27 PM > *To:* Gururaja Hebbar K R > *Cc:* u-boot-users at lists.sourceforge.net > *Subject:* Re: [U-Boot-Users] [PATCH] ARM926: compile cpu_init_crit > function only if CONFIG_SKIP_LOWLEVEL_INIT is not defined > > Hebbar wrote: > > This patches allows cpu_init_crit function to be compilled only if > > CONFIG_SKIP_LOWLEVEL_INIT is not defined. At present irrespective of > > CONFIG_SKIP_LOWLEVEL_INIT, cpu_init_crit is always compilled. This is for > > arm926ejs module. > > > > Signed-off-by: K R Gururaja Hebbar > > > > > > --- u-boot-1.3.1/cpu/arm926ejs/start.S 2007-12-06 > 01:21:19.000000000 -0800 > > +++ uboot/cpu/arm926ejs/start.S 2007-12-19 08:40:37.296875000 -0800 > > @@ -187,7 +187,7 @@ clbss_l:str r2, [r0] /* > clear loop... > > _start_armboot: > > .word start_armboot > > > > - > > +#ifndef CONFIG_SKIP_LOWLEVEL_INIT > > /* > > > ************************************************************************* > > * > > @@ -225,6 +225,9 @@ cpu_init_crit: > > bl lowlevel_init /* go setup pll,mux,memory */ > > mov lr, ip /* restore link */ > > mov pc, lr /* back to my caller */ > > + > > +#endif /* CONFIG_SKIP_LOWLEVEL_INIT */ > > + > > /* > > > ************************************************************************* > > * > > I welcome comments, complaints, suggestions and advices. > > The reason for this is to decrease resulting binary size? If so, all > lowlevel_init() should be encapsulated as well to save even more space? > > Dirk >