[U-Boot] [patch] rm9200 ethernet driver: board-specific quirk?(csb337)

Jean-Christophe PLAGNIOL-VILLARD plagnioj at jcrosoft.com
Sat Jun 13 16:54:39 CEST 2009


On 10:50 Sat 13 Jun     , Mike Frysinger wrote:
> On Saturday 13 June 2009 08:28:23 Jean-Christophe PLAGNIOL-VILLARD wrote:
> > On 04:13 Sat 13 Jun     , David Brownell wrote:
> > > On Saturday 13 June 2009, Jean-Christophe PLAGNIOL-VILLARD wrote:
> > > > > The machine_is_X() macros are automatically #ifdeffed in
> > > > > the header; no size impact.  Read <asm/mach-types.h> ...
> > > >
> > > > If I use this pacth on the rm9200ek the u-boot.bin size will increase
> > > > for nothing
> > >
> > > I'm not following you.  The lines are:
> > >
> > >
> > > #ifdef CONFIG_MACH_CSB337
> > > # ifdef machine_arch_type
> > > #  undef machine_arch_type
> > > #  define machine_arch_type     __machine_arch_type
> > > # else
> > > #  define machine_arch_type     MACH_TYPE_CSB337
> > > # endif
> > > # define machine_is_csb337()    (machine_arch_type == MACH_TYPE_CSB337)
> > > #else
> > > # define machine_is_csb337()    (0)
> > > #endif
> > >
> > > ... and similar for EK.  The csb337 config file sets CONFIG_MACH_CSB337,
> > > and nothing else does.  Result:  on rm9200ek, that test becomes if(0),
> > > while on csb337 it becomes if (X == X), where X == MACH_TYPE_CSB337.
> > >
> > > > If I was able to detect dynamicly on which board I will run ok
> > > > but it's not the case here
> > > > so please use
> > > > #ifdef CONFIG_MACH_xxx
> > > > #else
> > > > #endif
> > >
> > > See above.  There already *IS* such an #ifdef, but it's just not
> > > cluttering up the guts of that driver.
> >
> > you adding MUST have NO size impact on other board
> >
> > if we apply you code as it we will increase the size of u-boot for every
> > rm9200 board that use the ethernet
> 
> i dont get it.  the CPP expands into if(0) and unless you have a completely 
> shitty compiler, gcc will do dead code elimination on it resulting in the same 
> binary size.
I've seen to much "shitty version" that does not do it correctly
so I prefer ot avoid the problem

Best Regards,
J.


More information about the U-Boot mailing list