From mboxrd@z Thu Jan 1 00:00:00 1970 From: Jean-Christophe PLAGNIOL-VILLARD Date: Sat, 13 Jun 2009 16:54:39 +0200 Subject: [U-Boot] [patch] rm9200 ethernet driver: board-specific quirk?(csb337) In-Reply-To: <200906131050.16471.vapier@gentoo.org> References: <200906091114.24166.david-b@pacbell.net> <200906130413.59441.david-b@pacbell.net> <20090613122823.GC3814@game.jcrosoft.org> <200906131050.16471.vapier@gentoo.org> Message-ID: <20090613145439.GG25406@game.jcrosoft.org> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de 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 ... > > > > > > > > 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.