On Wed, 1 Sep 2010, Amit Kucheria wrote:

> On 10 Sep 01, Nicolas Pitre wrote:
> > On Wed, 1 Sep 2010, Amit Kucheria wrote:
> > 
> 
> [snip] 
> 
> > > Unfortunately, it seems after talking to Nicolas that mdesc->fixup() is
> > > called too early.
> > > 
> > > Nicolas suggested linking the i.MX5 code _after_ the VFP module :)
> > 
> > Something like this patch:
> > 
> > ----- >8
> > From: Nicolas Pitre <nicolas.pi...@linaro.org>
> > Date: Wed, 1 Sep 2010 09:37:05 -0400
> > Subject: [PATCH] ARM: link board specific files after core files
> > 
> > This allows for board specific issues to override decisions made in generic
> > code that might not be suitable due to some errata or the like.
> > 
> > Signed-off-by: Nicolas Pitre <nicolas.pi...@linaro.org>
> > 
> > diff --git a/arch/arm/Makefile b/arch/arm/Makefile
> > index df4ab3c..3e8e3d7 100644
> > --- a/arch/arm/Makefile
> > +++ b/arch/arm/Makefile
> > @@ -243,13 +243,14 @@ ifeq ($(FASTFPE),$(wildcard $(FASTFPE)))
> >  FASTFPE_OBJ        :=$(FASTFPE)/
> >  endif
> >  
> > -# If we have a machine-specific directory, then include it in the build.
> > -core-y                             += arch/arm/kernel/ arch/arm/mm/ 
> > arch/arm/common/
> > -core-y                             += $(machdirs) $(platdirs)
> >  core-$(CONFIG_FPE_NWFPE)   += arch/arm/nwfpe/
> >  core-$(CONFIG_FPE_FASTFPE) += $(FASTFPE_OBJ)
> >  core-$(CONFIG_VFP)         += arch/arm/vfp/
> >  
> > +# If we have a machine-specific directory, then include it in the build.
> > +core-y                             += arch/arm/kernel/ arch/arm/mm/ 
> > arch/arm/common/
> > +core-y                             += $(machdirs) $(platdirs)
> > +
> >  drivers-$(CONFIG_OPROFILE)      += arch/arm/oprofile/
> >  
> >  libs-y                             := arch/arm/lib/ $(libs-y)
> > 8< -----
> > 
> > Then, just add your fixup in a separate patch.  Beware: the above patch 
> > is untested.
> > 
> 
> My fixup patch is attached. Compile-tested along with Nico's patch. But I
> have no TO1/TO2 boards to test. Loic do know anybody that can test with
> Nico's patch and this fixup?
[...]

> @@ -284,6 +292,7 @@ MACHINE_START(MX51_BABBAGE, "Freescale MX51 Babbage 
> Board")
>       .phys_io = MX51_AIPS1_BASE_ADDR,
>       .io_pg_offst = ((MX51_AIPS1_BASE_ADDR_VIRT) >> 18) & 0xfffc,
>       .boot_params = PHYS_OFFSET + 0x100,
> +     .fixup = fixup_mx51_babbage,
>       .map_io = mx51_map_io,
>       .init_irq = mx51_init_irq,
>       .init_machine = mxc_board_init,

This won't work as this is called way too early.

I'd suggest calling mx51_neon_fixup() through a late_initcall instead.  
And making it __init too.


Nicolas

_______________________________________________
linaro-dev mailing list
linaro-dev@lists.linaro.org
http://lists.linaro.org/mailman/listinfo/linaro-dev

Reply via email to