zl程序教程

您现在的位置是:首页 >  其它

当前栏目

TQ210 —— S5PV210 uboot顶层Makefile分析

分析 Makefile uboot 顶层
2023-09-14 08:58:47 时间
  1.  转自:http://blog.csdn.net/wqx521/article/details/52469759
  2. # (C) Copyright 2000-2008  
  3. # Wolfgang Denk, DENX Software Engineering, wd@denx.de.  
  4. #  
  5. # See file CREDITS for list of people who contributed to this  
  6. # project.  
  7. #  
  8. # This program is free software; you can redistribute it and/or  
  9. # modify it under the terms of the GNU General Public License as  
  10. # published by the Free Software Foundatio; either version 2 of  
  11. # the License, or (at your option) any later version.  
  12. #  
  13. # This program is distributed in the hope that it will be useful,  
  14. # but WITHOUT ANY WARRANTY; without even the implied warranty of  
  15. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the  
  16. # GNU General Public License for more details.  
  17. #  
  18. # You should have received a copy of the GNU General Public License  
  19. # along with this program; if not, write to the Free Software  
  20. # Foundation, Inc., 59 Temple Place, Suite 330, Boston,  
  21. # MA 02111-1307 USA  
  22. #  
  23. ##################################################################################  
  24. # U_BOOT_VERSION = 1.3.4  
  25. # 从2008年10月,发行版的名称的含义发生了变化,从数字版本号变为使用时间戳作为版本号,    
  26. # 使用发布年份和月份确定发布的版本号(VERSION和PATCHLEVEL),    
  27. # (SUBLEVEL和EXTRAVERSION)表示候选发布版或修复bug了的稳定版本    
  28. # 指定时间信息头文件和版本信息头文件    
  29. VERSION = 1  
  30. PATCHLEVEL = 3  
  31. SUBLEVEL = 4  
  32. EXTRAVERSION =  
  33. U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)  
  34. VERSION_FILE = $(obj)include/version_autogenerated.h  
  35. ##################################################################################################################  
  36. # HOSTARCH这个变量的赋值,是通过执行一套shell程序来完成的,其中$(shell xxx)的语法就是在shell中执行xxx的命令.    
  37. # 这里的'|'就是linux中的管道处理符,'\'就是换行的连接符,表示下一行与本行是同行程序处理. uname -m,得到机器硬件名。      
  38. # sed -e允许在同一行里执行多条命令,就是表示后面跟的是一串命令脚本,s/abc/def/的命令表达式,    
  39. # 就是表示要从标准输入中,查找到内容为abc的,然后替换成def。例如电脑使用Intel Core2系列的CPU,因此"uname –m"    
  40. # 输出"i686"。 "i686"可以匹配命令"sed -e s/i.86/i386/"中的"i.86",因此在执行Makefile时,HOSTARCH将被设置成"i386" 。    
  41. # 这样执行这一套程序下来,就知道了机器的硬件体系了。   
  42. HOSTARCH := $(shell uname -m | \  
  43.     sed -e s/i.86/i386/ \  
  44.         -e s/sun4u/sparc64/ \  
  45.         -e s/arm.*/arm/ \  
  46.         -e s/sa110/arm/ \  
  47.         -e s/powerpc/ppc/ \  
  48.         -e s/ppc64/ppc/ \  
  49.         -e s/macppc/ppc/)  
  50.   
  51. ##########################################################################################  
  52. # "uname –s"输出主机内核名字,因此"uname –s"结果是"Linux"。    
  53. # "tr '[:upper:]' '[:lower:]'"作用是将标准输入中的所有大写字母转换为响应的小写字母。    
  54. # 结果是将HOSTOS = "linux"    
  55. HOSTOS := $(shell uname -s | tr '[:upper:]' '[:lower:]' | \  
  56.         sed -e 's/cygwin.*/cygwin/')  
  57.   
  58. #########################################################################  
  59. # export等价于C中的extern,即变量全局可用,这样这些变量将设置成环境变量  
  60. # export的作用就是将自定义变量转成环境变量【环境变量就是在哪里都能用】  
  61. export  HOSTARCH HOSTOS  
  62.   
  63. # Deal with colliding definitions from tcsh etc.  
  64. # 定义生产厂家名称  
  65. VENDOR=  
  66.   
  67. #########################################################################  
  68. # Allow for silent builds  
  69. ################################################################################  
  70. # 检查是否禁止在编译过程中向终端输出信息,findstring函数检查MAKEFLAGS是否为参数s  
  71. # 如编译uboot时,输入make -s,则MAKEFLAGS = s,执行XECHO = echo,即输出编译信息  
  72. # 否则XECHO = :,不输出编译信息  
  73. ifeq (,$(findstring s,$(MAKEFLAGS)))  
  74. XECHO = echo  
  75. else  
  76. XECHO = :  
  77. endif  
  78.   
  79. #########################################################################  
  80. #  
  81. # U-boot build supports producing a object files to the separate external  
  82. # directory. Two use cases are supported:  
  83. #  
  84. # 1) Add O= to the make command line  
  85. # 'make O=/tmp/build all'  
  86. #  
  87. # 2) Set environement variable BUILD_DIR to point to the desired location  
  88. # 'export BUILD_DIR=/tmp/build'  
  89. # 'make'  
  90. #  
  91. # The second approach can also be used with a MAKEALL script  
  92. # 'export BUILD_DIR=/tmp/build'  
  93. # './MAKEALL'  
  94. #  
  95. # Command line 'O=' setting overrides BUILD_DIR environent variable.  
  96. #  
  97. # When none of the above methods is used the local build is performed and  
  98. # the object files are placed in the source directory.  
  99. #  
  100. #########################################################################    
  101. # U-boot支持定义源码及生成的目标文件存放的目录的功能。有两种方法可以实现:    
  102. # 1)指定编译参数 O=目录,例如:make O= /tmp/build all    
  103. # 2)设置环境变量BUILD_DIR,该变量指定目录并设置为设置为环境变量    
  104. #   例如:export BUILD_DIR=/tmp/build 然后 make    
  105. # 第二种方法同样可以用在一个 MAKEALL脚本    
  106. # 例如:export BUILD_DIR=/tmp/build  然后执行之 ./MAKEALL    
  107. # 命令行参数的设置会覆盖到  BUILD_DIR这一环境变量    
  108. # 如果不指定任何目录,则编译生成的目标文件存放在源代码的顶层目录下    
  109. #    
  110. # 如果参数O不为空(即使用了O参数),则利用函数origin返回的参数O的来源    
  111. # 函数$( origin, variable) 输出的结果是一个字符串,输出结果由变量variable定义的方式决定,    
  112. # 若variable在命令行中定义过,则origin函数返回值为"command line"。    
  113. # 假若在命令行中执行了“export BUILD_DIR=/tmp/build”的命令,则“$(origin O)”值为“command line”,    
  114. # 而BUILD_DIR被设置为“/tmp/build”。   
  115. ifdef O  
  116. ifeq ("$(origin O)""command line")  
  117. BUILD_DIR := $(O)  
  118. endif  
  119. endif  
  120.   
  121. #########################################################################    
  122. # 如果BUILD_DIR不为空,则将BUILD_DIR路径保存到saved-output中  
  123. ifneq ($(BUILD_DIR),)  
  124. saved-output := $(BUILD_DIR)  
  125.   
  126. # Attempt to create a output directory.  
  127. # 如果BUILD_DIR不存在,则创建BUILD_DIR目录  
  128. $(shell [ -d ${BUILD_DIR} ] || mkdir -p ${BUILD_DIR})  
  129.   
  130. # Verify if it was successful.  
  131. ###############################################################################  
  132. # 执行cd命令进入BUILD_DIR目录,然后执行pwd命令得到当前目录路径【防止创建失败】  
  133. # if(a, b, c) —— 判断a的真假,为真执行b,为假执行c(类似三目运算符)  
  134. # 这段意思是如果BUILD_DIR创建成功,则什么不做,失败则返回error这段错误代码  
  135. BUILD_DIR := $(shell cd $(BUILD_DIR) && /bin/pwd)  
  136. $(if $(BUILD_DIR),,$(error output directory "$(saved-output)" does not exist))  
  137. endif # ifneq ($(BUILD_DIR),)  
  138.   
  139. #########################################################################    
  140. # 普通的变量赋值,OBJTREE和LNDIR存放生成文件的目录,SRCTREE和TOPDIR为源码  
  141. # 目录,CURDIR变量指示当前的工作目录【uboot顶层目录】  
  142. # export将这些变量设置成环境变量  
  143. OBJTREE     := $(if $(BUILD_DIR),$(BUILD_DIR),$(CURDIR))  
  144. SRCTREE     := $(CURDIR)  
  145. TOPDIR      := $(SRCTREE)  
  146. LNDIR       := $(OBJTREE)  
  147. export  TOPDIR SRCTREE OBJTREE  
  148.   
  149. #########################################################################    
  150. # MKCONFIG指向源码根目录下的mkconfig脚本文件,并设置为设置为环境变量    
  151. MKCONFIG    := $(SRCTREE)/mkconfig  
  152. export MKCONFIG  
  153.   
  154. #################################################################################  
  155. # 如果存放生成文件的目录和源码目录相同则REMOTE_BUILD = 1,并设置为设置为环境变量    
  156. ifneq ($(OBJTREE),$(SRCTREE))  
  157. REMOTE_BUILD    := 1  
  158. export REMOTE_BUILD  
  159. endif  
  160.   
  161. # $(obj) and (src) are defined in config.mk but here in main Makefile  
  162. # we also need them before config.mk is included which is the case for  
  163. # some targets like unconfig, clean, clobber, distclean, etc.  
  164. # $(obj)和$(src)在config.mk中有定义,但是在包含config.mk之前主Makefile在执行某些目标    
  165. # 如unconfig, clean, clobber, distclean, etc等的时候同样需要$(obj)和$(src)  
  166. #  
  167. # 如果OBJTREE和SRCTREE不同目录,则指定obj和src为OBJTREE和SRCTREE目录,  
  168. # obj:编译文件的输出目录,src:uboot代码顶层目录  
  169. # 作为编译输出文件的存放目录,一般OBJTREE和SRCTREE是相同的路径,否则obj和src为空  
  170. # 设置obj和src为环境变量  
  171. ifneq ($(OBJTREE),$(SRCTREE))  
  172. obj := $(OBJTREE)/  
  173. src := $(SRCTREE)/  
  174. else  
  175. obj :=  
  176. src :=  
  177. endif  
  178. export obj src  
  179.   
  180. # Make sure CDPATH settings don't interfere  
  181. # 撤销CDPATH为环境变量,设置其为文件私有,为了防止冲突  
  182. unexport CDPATH  
  183.   
  184. #########################################################################  
  185. # 如果ARCH等价于powerpc,则ARCH等于ppc  
  186. ifeq ($(ARCH),powerpc)  
  187. ARCH = ppc  
  188. endif  
  189.   
  190. ##################################################################################################  
  191. # 检查include目录下是否存在config.mk文件,【wildcard函数是取匹配模式的文件名】    
  192. # 如果include下存在config.mk文件,则$(wildcard $(obj)include/config.mk)就会    
  193. # 返回$(obj)include/config.mk,如果不存在config.mk文件,则返回值为空。  
  194. # include目录下是否存在config.mk文件。    
  195. # 为什么要检查config.mk存在与否呢?原因是:我们在编译U-boot前必须配置目标板的信息,也就是要执行    
  196. # make xxx_config,xxx为目标板的名称,执行了这一步,会在$(obj)include/中生成一个config.mk    
  197. # 文件,里边一般记录有5个变量信息,这是U-boot必须获得的信息,没有它们U-boot就不能编译,会跳转到该    
  198. # ifeq的else分支执行,也就是提示错,else分支在文件尾部。    
  199. # 信息:System not configured - see README    
  200. #     make ***[all] error 1    
  201. # 所以如果没有make xxx_config,直接make是编译不过去的,通过这样的判断U-boot就知道你是否已经做过    
  202. # make xxx_config这一步了。   
  203. ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk))  
  204.   
  205. # load ARCH, BOARD, and CPU configuration  
  206. ########################################################################################  
  207. # 加载$(obj)include/config.mk,设置ARCH CPU BOARD VENDOR SOC5为环境变量   
  208. # ARCH = 目标板的CPU架构   CPU = 具体使用的CPU型号   BOARD = 目标板名称  SOC = 芯片名称    
  209. # TQ210【三星S5pv210】:ARCH=arm  CPU=S5pv210 BOARD=TQ210 SOC= Cortex A8  
  210. include $(obj)include/config.mk  
  211. export  ARCH CPU BOARD VENDOR SOC  
  212.   
  213. #####################################################################################################  
  214. # 判断如果宿主机的架构和目标板的架构是同一种架构,则CROSS_COMPILE为空,也即采用宿主机默认的交叉编译链    
  215. # 通常我们将目标板使用的交叉工具链安装好以后,在宿主机中设置环境变量,指定开发板使用的交叉编译链    
  216. # 如果不采用设置环境变量的方法,则应该在使用make的时候指定工具链,例如:make CROSS_COMPILE=arm-linux-   
  217. ifndef CROSS_COMPILE  
  218. ifeq ($(HOSTARCH),$(ARCH))  
  219. CROSS_COMPILE =  
  220. else  
  221. ifeq ($(ARCH),ppc)  
  222. CROSS_COMPILE = ppc_8xx-  
  223. endif  
  224. ifeq ($(ARCH),arm)  
  225. CROSS_COMPILE = arm-linux-  
  226. #CROSS_COMPILE = /usr/local/arm/4.4.1-eabi-cortex-a8/usr/bin/arm-linux-  
  227. #CROSS_COMPILE = /usr/local/arm/4.2.2-eabi/usr/bin/arm-linux-  
  228. #CROSS_COMPILE = /usr/local/arm/arm-2009q3-4.4.1/bin/arm-none-linux-gnueabi-  
  229. #CROSS_COMPILE = /usr/local/arm/arm-2009q3/bin/arm-none-linux-gnueabi-  
  230. #CROSS_COMPILE = /usr/local/arm/4.5.1/bin/arm-none-linux-gnueabi-  
  231. endif  
  232. ifeq ($(ARCH),i386)  
  233. CROSS_COMPILE = i386-linux-  
  234. endif  
  235. ifeq ($(ARCH),mips)  
  236. CROSS_COMPILE = mips_4KC-  
  237. endif  
  238. ifeq ($(ARCH),nios)  
  239. CROSS_COMPILE = nios-elf-  
  240. endif  
  241. ifeq ($(ARCH),nios2)  
  242. CROSS_COMPILE = nios2-elf-  
  243. endif  
  244. ifeq ($(ARCH),m68k)  
  245. CROSS_COMPILE = m68k-elf-  
  246. endif  
  247. ifeq ($(ARCH),microblaze)  
  248. CROSS_COMPILE = mb-  
  249. endif  
  250. ifeq ($(ARCH),blackfin)  
  251. CROSS_COMPILE = bfin-uclinux-  
  252. endif  
  253. ifeq ($(ARCH),avr32)  
  254. CROSS_COMPILE = avr32-linux-  
  255. endif  
  256. ifeq ($(ARCH),sh)  
  257. CROSS_COMPILE = sh4-linux-  
  258. endif  
  259. ifeq ($(ARCH),sparc)  
  260. CROSS_COMPILE = sparc-elf-  
  261. endif   # sparc  
  262. endif   # HOSTARCH,ARCH  
  263. endif   # CROSS_COMPILE  
  264.   
  265. export  CROSS_COMPILE  
  266.   
  267. # load other configuration  
  268. # 加载顶层目录的config.mk文件  
  269. include $(TOPDIR)/config.mk  
  270.   
  271. #########################################################################  
  272. # U-Boot objects....order is important (i.e. start must be first)  
  273. #########################################################################  
  274. # 定义编译的目标对象OBJS,start.o必须第一位,顺序不能乱cpu/S5PV210/start.o  
  275. # S5PV210使用的是arm架构,i386/ppc4xx/mpc85xx都不会被加载进来  
  276. OBJS  = cpu/$(CPU)/start.o  
  277. ifeq ($(CPU),i386)  
  278. OBJS += cpu/$(CPU)/start16.o  
  279. OBJS += cpu/$(CPU)/reset.o  
  280. endif  
  281. ifeq ($(CPU),ppc4xx)  
  282. OBJS += cpu/$(CPU)/resetvec.o  
  283. endif  
  284. ifeq ($(CPU),mpc85xx)  
  285. OBJS += cpu/$(CPU)/resetvec.o  
  286. endif  
  287.   
  288. # addprefix(加前缀函数)给OBJS中的对象加上$(obj)  
  289. OBJS := $(addprefix $(obj),$(OBJS))  
  290.   
  291. # 将这些文件加入库  
  292. LIBS  = lib_generic/libgeneric.a  
  293. LIBS += $(shell if [ -f board/$(VENDOR)/common/Makefile ]; then echo \  
  294.     "board/$(VENDOR)/common/lib$(VENDOR).a"; fi)  
  295. LIBS += cpu/$(CPU)/lib$(CPU).a  
  296. ifdef SOC  
  297. LIBS += cpu/$(CPU)/$(SOC)/lib$(SOC).a  
  298. endif  
  299. # 如果不是ixp架构的cpu则不会把该对象追加进来  
  300. ifeq ($(CPU),ixp)  
  301. LIBS += cpu/ixp/npe/libnpe.a  
  302. endif  
  303. LIBS += lib_$(ARCH)/lib$(ARCH).a  
  304. LIBS += fs/cramfs/libcramfs.a fs/fat/libfat.a fs/fdos/libfdos.a fs/jffs2/libjffs2.a \  
  305.     fs/reiserfs/libreiserfs.a fs/ext2/libext2fs.a  
  306. LIBS += net/libnet.a  
  307. LIBS += disk/libdisk.a  
  308. LIBS += drivers/bios_emulator/libatibiosemu.a  
  309. LIBS += drivers/block/libblock.a  
  310. LIBS += drivers/dma/libdma.a  
  311. LIBS += drivers/hwmon/libhwmon.a  
  312. LIBS += drivers/i2c/libi2c.a  
  313. LIBS += drivers/input/libinput.a  
  314. LIBS += drivers/misc/libmisc.a  
  315. LIBS += drivers/mmc/libmmc.a  
  316. LIBS += drivers/mtd/libmtd.a  
  317. LIBS += drivers/mtd/nand/libnand.a  
  318. LIBS += drivers/mtd/nand_legacy/libnand_legacy.a  
  319. LIBS += drivers/mtd/onenand/libonenand.a  
  320. LIBS += drivers/mtd/ubi/libubi.a  
  321. LIBS += drivers/mtd/spi/libspi_flash.a  
  322. LIBS += drivers/net/libnet.a  
  323. LIBS += drivers/net/sk98lin/libsk98lin.a  
  324. LIBS += drivers/pci/libpci.a  
  325. LIBS += drivers/pcmcia/libpcmcia.a  
  326. LIBS += drivers/spi/libspi.a  
  327. ####################################################################  
  328. # 如果不是mpc83xx,mpc85xx,mpc86xx架构的cpu则不会把下列对象追加进来    
  329. ifeq ($(CPU),mpc83xx)  
  330. LIBS += drivers/qe/qe.a  
  331. endif  
  332. ifeq ($(CPU),mpc85xx)  
  333. LIBS += drivers/qe/qe.a  
  334. endif  
  335. LIBS += drivers/rtc/librtc.a  
  336. LIBS += drivers/serial/libserial.a  
  337. LIBS += drivers/usb/libusb.a  
  338. LIBS += drivers/video/libvideo.a  
  339. LIBS += common/libcommon.a  
  340. LIBS += libfdt/libfdt.a  
  341. LIBS += api/libapi.a  
  342. LIBS += post/libpost.a  
  343.   
  344. LIBS := $(addprefix $(obj),$(LIBS))  
  345. .PHONY : $(LIBS) $(VERSION_FILE)  
  346.   
  347. LIBBOARD = board/$(BOARDDIR)/lib$(BOARD).a  
  348. LIBBOARD := $(addprefix $(obj),$(LIBBOARD))  
  349.   
  350. # Add GCC lib  
  351. # 添加GCC的库  
  352. PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc  
  353.   
  354. # The "tools" are needed early, so put this first  
  355. # Don't include stuff already done in $(LIBS)  
  356. SUBDIRS = tools \  
  357.       examples \  
  358.       api_examples  
  359.   
  360. .PHONY : $(SUBDIRS)  
  361.   
  362. ifeq ($(CONFIG_NAND_U_BOOT),y)  
  363. NAND_SPL = nand_spl  
  364. U_BOOT_NAND = $(obj)u-boot-nand.bin  
  365. endif  
  366.   
  367. ifeq ($(CONFIG_ONENAND_U_BOOT),y)  
  368. ONENAND_IPL = onenand_bl1  
  369. U_BOOT_ONENAND = $(obj)u-boot-onenand.bin  
  370. endif  
  371.   
  372. #######################################################################  
  373. # __OBJS = arch/arm/cpu/armv7/start.o (如果换了别的目标板该值会有变动)    
  374. # __LIBS = 按名称首字母排序(a-z)的各种库文件和目标对象文件   
  375. __OBJS := $(subst $(obj),,$(OBJS))  
  376. __LIBS := $(subst $(obj),,$(LIBS)) $(subst $(obj),,$(LIBBOARD))  
  377.   
  378. #########################################################################  
  379. #########################################################################  
  380.   
  381. ALL += $(obj)u-boot.srec $(obj)u-boot.bin $(obj)System.map $(U_BOOT_NAND) $(U_BOOT_ONENAND) $(obj)u-boot.dis  
  382. ifeq ($(ARCH),blackfin)  
  383. ALL += $(obj)u-boot.ldr  
  384. endif  
  385.   
  386. #############################################################################  
  387. # 定义all为目标,生成各种镜像。    
  388. # u-boot.hex:生成16进制的镜像   u-boot.srec是Motorola S-Record format文件  
  389. # u-boot.bin是最终烧写到开发板的二进制可执行的文件  
  390. # ...  
  391. all:        $(ALL)  
  392.   
  393. $(obj)u-boot.hex:   $(obj)u-boot  
  394.         $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@  
  395.   
  396. $(obj)u-boot.srec:  $(obj)u-boot  
  397.         $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@  
  398.   
  399. $(obj)u-boot.bin:   $(obj)u-boot  
  400.         $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@  
  401.   
  402. $(obj)u-boot.ldr:   $(obj)u-boot  
  403.         $(LDR) -T $(CONFIG_BFIN_CPU) -f -c $@ $< $(LDR_FLAGS)  
  404.   
  405. $(obj)u-boot.ldr.hex:   $(obj)u-boot.ldr  
  406.         $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@ -I binary  
  407.   
  408. $(obj)u-boot.ldr.srec:  $(obj)u-boot.ldr  
  409.         $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@ -I binary  
  410.   
  411. $(obj)u-boot.img:   $(obj)u-boot.bin  
  412.         ./tools/mkimage -A $(ARCH) -T firmware -C none \  
  413.         -a $(TEXT_BASE) -e 0 \  
  414.         -n $(shell sed -n -e 's/.*U_BOOT_VERSION//p' $(VERSION_FILE) | \  
  415.             sed -e 's/"[     ]*$$/ for $(BOARD) board"/') \  
  416.         -d $< $@  
  417.   
  418. $(obj)u-boot.sha1:  $(obj)u-boot.bin  
  419.         $(obj)tools/ubsha1 $(obj)u-boot.bin  
  420.   
  421. $(obj)u-boot.dis:   $(obj)u-boot  
  422.         $(OBJDUMP) -d $< > $@  
  423.   
  424. $(obj)u-boot:       depend $(SUBDIRS) $(OBJS) $(LIBBOARD) $(LIBS) $(LDSCRIPT)  
  425.         UNDEF_SYM=`$(OBJDUMP) -x $(LIBBOARD) $(LIBS) | \  
  426.         sed  -n -e 's/.*$(SYM_PREFIX)__u_boot_cmd_.*/-u\1/p'|sort|uniq`;\  
  427.         cd $(LNDIR) && $(LD) $(LDFLAGS) $$UNDEF_SYM $(__OBJS) \  
  428.             --start-group $(__LIBS) --end-group $(PLATFORM_LIBS) \  
  429.             -Map u-boot.map -o u-boot  
  430.   
  431. $(OBJS):    depend $(obj)include/autoconf.mk  
  432.         $(MAKE) -C cpu/$(CPU) $(if $(REMOTE_BUILD),$@,$(notdir $@))  
  433.   
  434. $(LIBS):    depend $(obj)include/autoconf.mk  
  435.         $(MAKE) -C $(dir $(subst $(obj),,$@))  
  436.   
  437. $(LIBBOARD):    depend $(LIBS) $(obj)include/autoconf.mk  
  438.         $(MAKE) -C $(dir $(subst $(obj),,$@))  
  439.   
  440. $(SUBDIRS): depend $(obj)include/autoconf.mk  
  441.         $(MAKE) -C $@ all  
  442.   
  443. $(LDSCRIPT):    depend $(obj)include/autoconf.mk  
  444.         $(MAKE) -C $(dir $@) $(notdir $@)  
  445.   
  446. $(NAND_SPL):    $(VERSION_FILE) $(obj)include/autoconf.mk  
  447.         $(MAKE) -C nand_spl/board/$(BOARDDIR) all  
  448.   
  449. $(U_BOOT_NAND): $(NAND_SPL) $(obj)u-boot.bin $(obj)include/autoconf.mk  
  450.         cat $(obj)nand_spl/u-boot-spl-16k.bin $(obj)u-boot.bin > $(obj)u-boot-nand.bin  
  451.   
  452. #$(ONENAND_IPL):    $(VERSION_FILE) $(obj)include/autoconf.mk  
  453. #       $(MAKE) -C onenand_ipl/board/$(BOARDDIR) all  
  454. #  
  455. #$(U_BOOT_ONENAND): $(ONENAND_IPL) $(obj)u-boot.bin $(obj)include/autoconf.mk  
  456. #       cat $(obj)onenand_ipl/onenand-ipl-2k.bin $(obj)u-boot.bin > $(obj)u-boot-onenand.bin  
  457. #       cat $(obj)onenand_ipl/onenand-ipl-4k.bin $(obj)u-boot.bin > $(obj)u-boot-flexonenand.bin  
  458.   
  459. $(ONENAND_IPL): $(VERSION_FILE) $(obj)include/autoconf.mk  
  460.         $(MAKE) -C $(obj)onenand_bl1/$(BOARD) all  
  461.   
  462. $(U_BOOT_ONENAND):  $(ONENAND_IPL) $(obj)u-boot.bin $(obj)include/autoconf.mk  
  463.         cat $(obj)onenand_bl1/$(BOARD)/BL1.bin.padding $(obj)u-boot.bin > $(U_BOOT_ONENAND)  
  464.   
  465. $(VERSION_FILE):  
  466.         @( printf '#define U_BOOT_VERSION "U-Boot %s%s"\n' "$(U_BOOT_VERSION)" \  
  467.          '$(shell $(CONFIG_SHELL) $(TOPDIR)/tools/setlocalversion $(TOPDIR))' \  
  468.          ) > $@.tmp  
  469.         @cmp -s $@ $@.tmp && rm -f $@.tmp || mv -f $@.tmp $@  
  470.   
  471. gdbtools:  
  472.         $(MAKE) -C tools/gdb all || exit 1  
  473.   
  474. updater:  
  475.         $(MAKE) -C tools/updater all || exit 1  
  476.   
  477. env:  
  478.         $(MAKE) -C tools/env all MTD_VERSION=${MTD_VERSION} || exit 1  
  479.   
  480. ###############################################################################  
  481. # 定义依赖目标depend,dep,加载各种文件并进入各种中目录执行对应的makfile   
  482. # “make _depend”,生成各个子目录的.depend文件,.depend列出每个目标文件的依赖文件。  
  483. depend dep: $(VERSION_FILE)  
  484.         for dir in $(SUBDIRS) ; do $(MAKE) -C $$dir _depend ; done  
  485.   
  486. TAG_SUBDIRS += include  
  487. TAG_SUBDIRS += lib_generic board/$(BOARDDIR)  
  488. TAG_SUBDIRS += cpu/$(CPU)  
  489. TAG_SUBDIRS += lib_$(ARCH)  
  490. TAG_SUBDIRS += fs/cramfs  
  491. TAG_SUBDIRS += fs/fat  
  492. TAG_SUBDIRS += fs/fdos  
  493. TAG_SUBDIRS += fs/jffs2  
  494. TAG_SUBDIRS += net  
  495. TAG_SUBDIRS += disk  
  496. TAG_SUBDIRS += common  
  497. TAG_SUBDIRS += drivers/bios_emulator  
  498. TAG_SUBDIRS += drivers/block  
  499. TAG_SUBDIRS += drivers/hwmon  
  500. TAG_SUBDIRS += drivers/i2c  
  501. TAG_SUBDIRS += drivers/input  
  502. TAG_SUBDIRS += drivers/misc  
  503. TAG_SUBDIRS += drivers/mmc  
  504. TAG_SUBDIRS += drivers/mtd  
  505. TAG_SUBDIRS += drivers/mtd/nand  
  506. TAG_SUBDIRS += drivers/mtd/nand_legacy  
  507. TAG_SUBDIRS += drivers/mtd/onenand  
  508. TAG_SUBDIRS += drivers/mtd/spi  
  509. TAG_SUBDIRS += drivers/net  
  510. TAG_SUBDIRS += drivers/net/sk98lin  
  511. TAG_SUBDIRS += drivers/pci  
  512. TAG_SUBDIRS += drivers/pcmcia  
  513. TAG_SUBDIRS += drivers/qe  
  514. TAG_SUBDIRS += drivers/rtc  
  515. TAG_SUBDIRS += drivers/serial  
  516. TAG_SUBDIRS += drivers/spi  
  517. TAG_SUBDIRS += drivers/usb  
  518. TAG_SUBDIRS += drivers/video  
  519.   
  520. tags ctags:  
  521.         ctags -w -o $(obj)ctags `find $(SUBDIRS) $(TAG_SUBDIRS) \  
  522.                         -name '*.[ch]' -print`  
  523.   
  524. etags:  
  525.         etags -a -o $(obj)etags `find $(SUBDIRS) $(TAG_SUBDIRS) \  
  526.                         -name '*.[ch]' -print`  
  527. cscope:  
  528.         find $(SUBDIRS) $(TAG_SUBDIRS) -name '*.[ch]' -print \  
  529.                         > cscope.files  
  530.         cscope -b -q -k  
  531.   
  532. ##############################################################################################   
  533. # System.map是U-Boot的符号表,它包含了U-Boot的全局变量和函数的地址信息    
  534. # 也就是将arm-linux-nm命令查看u-boot的输出信息经过过滤和排序后输出到System.map    
  535. # System.map表示的是地址标号到该标号表示的地址的一个映射关系。System.map每一行的    
  536. # 格式都是“addr type name”,addr是标号对应的地址值,name是标号名,type表示标号的类型。     
  537. # U-Boot的编译和运行并不一定要生成System.map,这个文件主要是提供给用户或外部程序调试时使用的。          
  538. $(obj)System.map:   $(obj)u-boot  
  539.         @$(NM) $< | \  
  540.         grep -v 'compiled\|\.o$$\|[aUw]\|\.\.ng$$\|LASH[RL]DI' | \  
  541.         sort > $(obj)System.map  
  542.   
  543. #  
  544. # Auto-generate the autoconf.mk file (which is included by all makefiles)  
  545. #  
  546. # This target actually generates 2 files; autoconf.mk and autoconf.mk.dep.  
  547. # the dep file is only include in this top level makefile to determine when  
  548. # to regenerate the autoconf.mk file.  
  549. # 自动生成autoconf.mk文件(所有makefile文件都应该包含该文件),实际上这个目标生成两个文件    
  550. # autoconf.mk和autoconf.mk.dep。只有顶层的makefile直接包含autoconf.mk.dep文件以    
  551. # 生成autoconf.mk文件。    
  552. $(obj)include/autoconf.mk.dep: $(obj)include/config.h include/common.h  
  553.     @$(XECHO) Generating $@ ; \  
  554.     set -e ; \  
  555.     : Generate the dependancies ; \  
  556.     $(CC) -x c -DDO_DEPS_ONLY -M $(HOST_CFLAGS) $(CPPFLAGS) \  
  557.         -MQ $(obj)include/autoconf.mk include/common.h > $@  
  558.   
  559. $(obj)include/autoconf.mk: $(obj)include/config.h  
  560.     @$(XECHO) Generating $@ ; \  
  561.     set -e ; \  
  562.     : Extract the config macros ; \  
  563.     $(CPP) $(CFLAGS) -DDO_DEPS_ONLY -dM include/common.h | \  
  564.         sed -n -f tools/scripts/define2mk.sed > $@  
  565.   
  566. sinclude $(obj)include/autoconf.mk.dep  
  567.   
  568. #########################################################################  
  569. # ifeq ($(obj)include/config.mk,$(wildcard $(obj)include/config.mk))    
  570. # 下面的else分支和文件前面的上句对应,也就是include目录下不存在config.mk文件的时候    
  571. # 提示错误信息:    
  572. # System not configured - see README    
  573. # make ***[all] error 1    
  574. else    # !config.mk  
  575. all $(obj)u-boot.hex $(obj)u-boot.srec $(obj)u-boot.bin \  
  576. $(obj)u-boot.img $(obj)u-boot.dis $(obj)u-boot \  
  577. $(SUBDIRS) $(VERSION_FILE) gdbtools updater env depend \  
  578. dep tags ctags etags cscope $(obj)System.map:  
  579.     @echo "System not configured - see README" >&2  
  580.     @ exit 1  
  581. endif   # config.mk  
  582.   
  583. .PHONY : CHANGELOG  
  584. CHANGELOG:  
  585.     git log --no-merges U-Boot-1_1_5.. | \  
  586.     unexpand -a | sed -e 's/\s\s*$$//' > $@  
  587.   
  588. #####################################################################################  
  589. # 删除这些目录下的文件(生成的各种配置文件),我使用的TQ210开发板:make TQ210_config  
  590. # 下面的一大半xxx_config是不用管的,我们只需要管TQ210_config,搜索TQ210_config转而  
  591. # 分析TQ210_config内的内容  
  592. unconfig:  
  593.     @rm -f $(obj)include/config.h $(obj)include/config.mk \  
  594.         $(obj)board/*/config.tmp $(obj)board/*/*/config.tmp \  
  595.         $(obj)include/autoconf.mk $(obj)include/autoconf.mk.dep \  
  596.         $(obj)board/$(VENDOR)/$(BOARD)/config.mk  
  597.   
  598. #========================================================================  
  599. # PowerPC  
  600. #========================================================================  
  601.   
  602. #########################################################################  
  603. ## MPC5xx Systems  
  604. #########################################################################  
  605.   
  606. canmb_config:   unconfig  
  607.     @$(MKCONFIG) -a canmb ppc mpc5xxx canmb  
  608.   
  609. cmi_mpc5xx_config:  unconfig  
  610.     @$(MKCONFIG) $(@:_config=) ppc mpc5xx cmi  
  611.   
  612. PATI_config:        unconfig  
  613.     @$(MKCONFIG) $(@:_config=) ppc mpc5xx pati mpl  
  614.   
  615. #########################################################################  
  616. ## MPC5xxx Systems  
  617. #########################################################################  
  618.   
  619. aev_config: unconfig  
  620.     @$(MKCONFIG) -a aev ppc mpc5xxx tqm5200 tqc  
  621.   
  622. BC3450_config:  unconfig  
  623.     @$(MKCONFIG) -a BC3450 ppc mpc5xxx bc3450  
  624.   
  625. cm5200_config:  unconfig  
  626.     @$(MKCONFIG) -a cm5200 ppc mpc5xxx cm5200  
  627.   
  628. cpci5200_config:  unconfig  
  629.     @$(MKCONFIG) -a cpci5200  ppc mpc5xxx cpci5200 esd  
  630.   
  631. hmi1001_config: unconfig  
  632.     @$(MKCONFIG) hmi1001 ppc mpc5xxx hmi1001  
  633.   
  634. Lite5200_config             \  
  635. Lite5200_LOWBOOT_config         \  
  636. Lite5200_LOWBOOT08_config       \  
  637. icecube_5200_config         \  
  638. icecube_5200_LOWBOOT_config     \  
  639. icecube_5200_LOWBOOT08_config       \  
  640. icecube_5200_DDR_config         \  
  641. icecube_5200_DDR_LOWBOOT_config     \  
  642. icecube_5200_DDR_LOWBOOT08_config   \  
  643. icecube_5100_config:            unconfig  
  644.     @mkdir -p $(obj)include  
  645.     @mkdir -p $(obj)board/icecube  
  646.     @[ -z "$(findstring LOWBOOT_,$@)" ] || \  
  647.         { if [ "$(findstring DDR,$@)" ] ; \  
  648.             then echo "TEXT_BASE = 0xFF800000" >$(obj)board/icecube/config.tmp ; \  
  649.             else echo "TEXT_BASE = 0xFF000000" >$(obj)board/icecube/config.tmp ; \  
  650.           fi ; \  
  651.           $(XECHO) "... with LOWBOOT configuration" ; \  
  652.         }  
  653.     @[ -z "$(findstring LOWBOOT08,$@)" ] || \  
  654.         { echo "TEXT_BASE = 0xFF800000" >$(obj)board/icecube/config.tmp ; \  
  655.           echo "... with 8 MB flash only" ; \  
  656.           $(XECHO) "... with LOWBOOT configuration" ; \  
  657.         }  
  658.     @[ -z "$(findstring DDR,$@)" ] || \  
  659.         { echo "#define CONFIG_MPC5200_DDR" >>$(obj)include/config.h ; \  
  660.           $(XECHO) "... DDR memory revision" ; \  
  661.         }  
  662.     @[ -z "$(findstring 5200,$@)" ] || \  
  663.         { echo "#define CONFIG_MPC5200"     >>$(obj)include/config.h ; \  
  664.           $(XECHO) "... with MPC5200 processor" ; \  
  665.         }  
  666.     @[ -z "$(findstring 5100,$@)" ] || \  
  667.         { echo "#define CONFIG_MGT5100"     >>$(obj)include/config.h ; \  
  668.           $(XECHO) "... with MGT5100 processor" ; \  
  669.         }  
  670.     @$(MKCONFIG) -a IceCube ppc mpc5xxx icecube  
  671.   
  672. jupiter_config: unconfig  
  673.     @$(MKCONFIG) jupiter ppc mpc5xxx jupiter  
  674.   
  675. inka4x0_config: unconfig  
  676.     @$(MKCONFIG) inka4x0 ppc mpc5xxx inka4x0  
  677.   
  678. lite5200b_config    \  
  679. lite5200b_PM_config \  
  680. lite5200b_LOWBOOT_config:   unconfig  
  681.     @mkdir -p $(obj)include  
  682.     @mkdir -p $(obj)board/icecube  
  683.     @ echo "#define CONFIG_MPC5200_DDR" >>$(obj)include/config.h  
  684.     @ $(XECHO) "... DDR memory revision"  
  685.     @ echo "#define CONFIG_MPC5200"     >>$(obj)include/config.h  
  686.     @ echo "#define CONFIG_LITE5200B"   >>$(obj)include/config.h  
  687.     @[ -z "$(findstring _PM_,$@)" ] || \  
  688.         { echo "#define CONFIG_LITE5200B_PM"    >>$(obj)include/config.h ; \  
  689.           $(XECHO) "... with power management (low-power mode) support" ; \  
  690.         }  
  691.     @[ -z "$(findstring LOWBOOT_,$@)" ] || \  
  692.         { echo "TEXT_BASE = 0xFF000000" >$(obj)board/icecube/config.tmp ; \  
  693.           $(XECHO) "... with LOWBOOT configuration" ; \  
  694.         }  
  695.     @ $(XECHO) "... with MPC5200B processor"  
  696.     @$(MKCONFIG) -a IceCube  ppc mpc5xxx icecube  
  697.   
  698. mcc200_config   \  
  699. mcc200_SDRAM_config \  
  700. mcc200_highboot_config  \  
  701. mcc200_COM12_config \  
  702. mcc200_COM12_SDRAM_config   \  
  703. mcc200_COM12_highboot_config    \  
  704. mcc200_COM12_highboot_SDRAM_config  \  
  705. mcc200_highboot_SDRAM_config    \  
  706. prs200_config   \  
  707. prs200_DDR_config   \  
  708. prs200_highboot_config  \  
  709. prs200_highboot_DDR_config: unconfig  
  710.     @mkdir -p $(obj)include  
  711.     @mkdir -p $(obj)board/mcc200  
  712.     @[ -n "$(findstring highboot,$@)" ] || \  
  713.         { $(XECHO) "... with lowboot configuration" ; \  
  714.         }  
  715.     @[ -z "$(findstring highboot,$@)" ] || \  
  716.         { echo "TEXT_BASE = 0xFFF00000" >$(obj)board/mcc200/config.tmp ; \  
  717.           $(XECHO) "... with highboot configuration" ; \  
  718.         }  
  719.     @[ -n "$(findstring _SDRAM,$@)" ] || \  
  720.         { if [ -n "$(findstring mcc200,$@)" ]; \  
  721.           then \  
  722.             $(XECHO) "... with DDR" ; \  
  723.           else \  
  724.             if [ -n "$(findstring _DDR,$@)" ];\  
  725.             then \  
  726.                 $(XECHO) "... with DDR" ; \  
  727.             else \  
  728.                 echo "#define CONFIG_MCC200_SDRAM" >>$(obj)include/config.h ;\  
  729.                 $(XECHO) "... with SDRAM" ; \  
  730.             fi; \  
  731.           fi; \  
  732.         }  
  733.     @[ -z "$(findstring _SDRAM,$@)" ] || \  
  734.         { echo "#define CONFIG_MCC200_SDRAM"    >>$(obj)include/config.h ; \  
  735.           $(XECHO) "... with SDRAM" ; \  
  736.         }  
  737.     @[ -z "$(findstring COM12,$@)" ] || \  
  738.         { echo "#define CONFIG_CONSOLE_COM12"   >>$(obj)include/config.h ; \  
  739.           $(XECHO) "... with console on COM12" ; \  
  740.         }  
  741.     @[ -z "$(findstring prs200,$@)" ] || \  
  742.         { echo "#define CONFIG_PRS200"  >>$(obj)include/config.h ;\  
  743.         }  
  744.     @$(MKCONFIG) -n $@ -a mcc200 ppc mpc5xxx mcc200  
  745.   
  746. mecp5200_config:  unconfig  
  747.     @$(MKCONFIG) mecp5200  ppc mpc5xxx mecp5200 esd  
  748.   
  749. motionpro_config:   unconfig  
  750.     @$(MKCONFIG) motionpro ppc mpc5xxx motionpro  
  751.   
  752. munices_config: unconfig  
  753.     @$(MKCONFIG) munices ppc mpc5xxx munices  
  754.   
  755. MVBC_P_config: unconfig  
  756.     @mkdir -p $(obj)include  
  757.     @mkdir -p $(obj)board/mvbc_p  
  758.     @ >$(obj)include/config.h  
  759.     @[ -z "$(findstring MVBC_P,$@)" ] || \  
  760.     {       echo "#define CONFIG_MVBC_P"    >>$(obj)include/config.h; }  
  761.     @$(MKCONFIG) -n $@ -a MVBC_P ppc mpc5xxx mvbc_p matrix_vision  
  762.   
  763. o2dnt_config:   unconfig  
  764.     @$(MKCONFIG) o2dnt ppc mpc5xxx o2dnt  
  765.   
  766. pf5200_config:  unconfig  
  767.     @$(MKCONFIG) pf5200  ppc mpc5xxx pf5200 esd  
  768.   
  769. PM520_config \  
  770. PM520_DDR_config \  
  771. PM520_ROMBOOT_config \  
  772. PM520_ROMBOOT_DDR_config:   unconfig  
  773.     @mkdir -p $(obj)include  
  774.     @[ -z "$(findstring DDR,$@)" ] || \  
  775.         { echo "#define CONFIG_MPC5200_DDR" >>$(obj)include/config.h ; \  
  776.           $(XECHO) "... DDR memory revision" ; \  
  777.         }  
  778.     @[ -z "$(findstring ROMBOOT,$@)" ] || \  
  779.         { echo "#define CONFIG_BOOT_ROM" >>$(obj)include/config.h ; \  
  780.           $(XECHO) "... booting from 8-bit flash" ; \  
  781.         }  
  782.     @$(MKCONFIG) -a PM520 ppc mpc5xxx pm520  
  783.   
  784. smmaco4_config: unconfig  
  785.     @$(MKCONFIG) -a smmaco4 ppc mpc5xxx tqm5200 tqc  
  786.   
  787. spieval_config: unconfig  
  788.     @$(MKCONFIG) -a spieval ppc mpc5xxx tqm5200 tqc  
  789.   
  790. TB5200_B_config \  
  791. TB5200_config:  unconfig  
  792.     @mkdir -p $(obj)include  
  793.     @[ -z "$(findstring _B,$@)" ] || \  
  794.         { echo "#define CONFIG_TQM5200_B"   >>$(obj)include/config.h ; \  
  795.           $(XECHO) "... with MPC5200B processor" ; \  
  796.         }  
  797.     @$(MKCONFIG) -n $@ -a TB5200 ppc mpc5xxx tqm5200 tqc  
  798.   
  799. MINI5200_config \  
  800. EVAL5200_config \  
  801. TOP5200_config: unconfig  
  802.     @mkdir -p $(obj)include  
  803.     @ echo "#define CONFIG_$(@:_config=) 1" >$(obj)include/config.h  
  804.     @$(MKCONFIG) -n $@ -a TOP5200 ppc mpc5xxx top5200 emk  
  805.   
  806. Total5100_config        \  
  807. Total5200_config        \  
  808. Total5200_lowboot_config    \  
  809. Total5200_Rev2_config       \  
  810. Total5200_Rev2_lowboot_config:  unconfig  
  811.     @mkdir -p $(obj)include  
  812.     @mkdir -p $(obj)board/total5200  
  813.     @[ -z "$(findstring 5100,$@)" ] || \  
  814.         { echo "#define CONFIG_MGT5100"     >>$(obj)include/config.h ; \  
  815.           $(XECHO) "... with MGT5100 processor" ; \  
  816.         }  
  817.     @[ -z "$(findstring 5200,$@)" ] || \  
  818.         { echo "#define CONFIG_MPC5200"     >>$(obj)include/config.h ; \  
  819.           $(XECHO) "... with MPC5200 processor" ; \  
  820.         }  
  821.     @[ -n "$(findstring Rev,$@)" ] || \  
  822.         { echo "#define CONFIG_TOTAL5200_REV 1" >>$(obj)include/config.h ; \  
  823.           $(XECHO) "... revision 1 board" ; \  
  824.         }  
  825.     @[ -z "$(findstring Rev2_,$@)" ] || \  
  826.         { echo "#define CONFIG_TOTAL5200_REV 2" >>$(obj)include/config.h ; \  
  827.           $(XECHO) "... revision 2 board" ; \  
  828.         }  
  829.     @[ -z "$(findstring lowboot_,$@)" ] || \  
  830.         { echo "TEXT_BASE = 0xFE000000" >$(obj)board/total5200/config.tmp ; \  
  831.           $(XECHO) "... with lowboot configuration" ; \  
  832.         }  
  833.     @$(MKCONFIG) -a Total5200 ppc mpc5xxx total5200  
  834.   
  835. cam5200_config \  
  836. cam5200_niosflash_config \  
  837. fo300_config \  
  838. MiniFAP_config \  
  839. TQM5200S_config \  
  840. TQM5200S_HIGHBOOT_config \  
  841. TQM5200_B_config \  
  842. TQM5200_B_HIGHBOOT_config \  
  843. TQM5200_config  \  
  844. TQM5200_STK100_config:  unconfig  
  845.     @mkdir -p $(obj)include  
  846.     @mkdir -p $(obj)board/tqc/tqm5200  
  847.     @[ -z "$(findstring cam5200,$@)" ] || \  
  848.         { echo "#define CONFIG_CAM5200" >>$(obj)include/config.h ; \  
  849.           echo "#define CONFIG_TQM5200S"    >>$(obj)include/config.h ; \  
  850.           echo "#define CONFIG_TQM5200_B"   >>$(obj)include/config.h ; \  
  851.           $(XECHO) "... TQM5200S on Cam5200" ; \  
  852.         }  
  853.     @[ -z "$(findstring niosflash,$@)" ] || \  
  854.         { echo "#define CONFIG_CAM5200_NIOSFLASH"   >>$(obj)include/config.h ; \  
  855.           $(XECHO) "... with NIOS flash driver" ; \  
  856.         }  
  857.     @[ -z "$(findstring fo300,$@)" ] || \  
  858.         { echo "#define CONFIG_FO300"   >>$(obj)include/config.h ; \  
  859.           $(XECHO) "... TQM5200 on FO300" ; \  
  860.         }  
  861.     @[ -z "$(findstring MiniFAP,$@)" ] || \  
  862.         { echo "#define CONFIG_MINIFAP" >>$(obj)include/config.h ; \  
  863.           $(XECHO) "... TQM5200_AC on MiniFAP" ; \  
  864.         }  
  865.     @[ -z "$(findstring STK100,$@)" ] || \  
  866.         { echo "#define CONFIG_STK52XX_REV100"  >>$(obj)include/config.h ; \  
  867.           $(XECHO) "... on a STK52XX.100 base board" ; \  
  868.         }  
  869.     @[ -z "$(findstring TQM5200_B,$@)" ] || \  
  870.         { echo "#define CONFIG_TQM5200_B"   >>$(obj)include/config.h ; \  
  871.         }  
  872.     @[ -z "$(findstring TQM5200S,$@)" ] || \  
  873.         { echo "#define CONFIG_TQM5200S"    >>$(obj)include/config.h ; \  
  874.           echo "#define CONFIG_TQM5200_B"   >>$(obj)include/config.h ; \  
  875.         }  
  876.     @[ -z "$(findstring HIGHBOOT,$@)" ] || \  
  877.         { echo "TEXT_BASE = 0xFFF00000" >$(obj)board/tqm5200/config.tmp ; \  
  878.         }  
  879.     @$(MKCONFIG) -n $@ -a TQM5200 ppc mpc5xxx tqm5200 tqc  
  880.   
  881. uc101_config:       unconfig  
  882.     @$(MKCONFIG) uc101 ppc mpc5xxx uc101  
  883.   
  884. v38b_config: unconfig  
  885.     @$(MKCONFIG) -a v38b ppc mpc5xxx v38b  
  886.   
  887. #########################################################################  
  888. ## MPC512x Systems  
  889. #########################################################################  
  890.   
  891. ads5121_config \  
  892. ads5121_rev2_config \  
  893.     : unconfig  
  894.     @mkdir -p $(obj)include  
  895.     @if [ "$(findstring rev2,$@)" ] ; then \  
  896.         echo "#define CONFIG_ADS5121_REV2 1" > $(obj)include/config.h; \  
  897.     fi  
  898.     @$(MKCONFIG) -a ads5121 ppc mpc512x ads5121  
  899.   
  900.   
  901. #########################################################################  
  902. ## MPC8xx Systems  
  903. #########################################################################  
  904.   
  905. Adder_config    \  
  906. Adder87x_config \  
  907. AdderII_config  \  
  908.     :       unconfig  
  909.     @mkdir -p $(obj)include  
  910.     $(if $(findstring AdderII,$@), \  
  911.     @echo "#define CONFIG_MPC852T" > $(obj)include/config.h)  
  912.     @$(MKCONFIG) -a Adder ppc mpc8xx adder  
  913.   
  914. AdderUSB_config:    unconfig  
  915.     @$(MKCONFIG) -a AdderUSB ppc mpc8xx adder  
  916.   
  917. ADS860_config     \  
  918. FADS823_config    \  
  919. FADS850SAR_config \  
  920. MPC86xADS_config  \  
  921. MPC885ADS_config  \  
  922. FADS860T_config:    unconfig  
  923.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx fads  
  924.   
  925. AMX860_config   :   unconfig  
  926.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx amx860 westel  
  927.   
  928. c2mon_config:       unconfig  
  929.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx c2mon  
  930.   
  931. CCM_config:     unconfig  
  932.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx CCM siemens  
  933.   
  934. cogent_mpc8xx_config:   unconfig  
  935.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx cogent  
  936.   
  937. ELPT860_config:     unconfig  
  938.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx elpt860 LEOX  
  939.   
  940. EP88x_config:       unconfig  
  941.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx ep88x  
  942.   
  943. ESTEEM192E_config:  unconfig  
  944.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx esteem192e  
  945.   
  946. ETX094_config   :   unconfig  
  947.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx etx094  
  948.   
  949. FLAGADM_config: unconfig  
  950.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx flagadm  
  951.   
  952. xtract_GEN860T = $(subst _SC,,$(subst _config,,$1))  
  953.   
  954. GEN860T_SC_config   \  
  955. GEN860T_config: unconfig  
  956.     @mkdir -p $(obj)include  
  957.     @[ -z "$(findstring _SC,$@)" ] || \  
  958.         { echo "#define CONFIG_SC" >>$(obj)include/config.h ; \  
  959.           $(XECHO) "With reduced H/W feature set (SC)..." ; \  
  960.         }  
  961.     @$(MKCONFIG) -a $(call xtract_GEN860T,$@) ppc mpc8xx gen860t  
  962.   
  963. GENIETV_config: unconfig  
  964.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx genietv  
  965.   
  966. GTH_config: unconfig  
  967.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx gth  
  968.   
  969. hermes_config   :   unconfig  
  970.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx hermes  
  971.   
  972. HMI10_config    :   unconfig  
  973.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx tqm8xx tqc  
  974.   
  975. IAD210_config: unconfig  
  976.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx IAD210 siemens  
  977.   
  978. xtract_ICU862 = $(subst _100MHz,,$(subst _config,,$1))  
  979.   
  980. ICU862_100MHz_config    \  
  981. ICU862_config: unconfig  
  982.     @mkdir -p $(obj)include  
  983.     @[ -z "$(findstring _100MHz,$@)" ] || \  
  984.         { echo "#define CONFIG_100MHz"  >>$(obj)include/config.h ; \  
  985.           $(XECHO) "... with 100MHz system clock" ; \  
  986.         }  
  987.     @$(MKCONFIG) -a $(call xtract_ICU862,$@) ppc mpc8xx icu862  
  988.   
  989. IP860_config    :   unconfig  
  990.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx ip860  
  991.   
  992. IVML24_256_config \  
  993. IVML24_128_config \  
  994. IVML24_config:  unconfig  
  995.     @mkdir -p $(obj)include  
  996.     @[ -z "$(findstring IVML24_config,$@)" ] || \  
  997.          { echo "#define CONFIG_IVML24_16M" >>$(obj)include/config.h ; \  
  998.          }  
  999.     @[ -z "$(findstring IVML24_128_config,$@)" ] || \  
  1000.          { echo "#define CONFIG_IVML24_32M" >>$(obj)include/config.h ; \  
  1001.          }  
  1002.     @[ -z "$(findstring IVML24_256_config,$@)" ] || \  
  1003.          { echo "#define CONFIG_IVML24_64M" >>$(obj)include/config.h ; \  
  1004.          }  
  1005.     @$(MKCONFIG) -a IVML24 ppc mpc8xx ivm  
  1006.   
  1007. IVMS8_256_config \  
  1008. IVMS8_128_config \  
  1009. IVMS8_config:   unconfig  
  1010.     @mkdir -p $(obj)include  
  1011.     @[ -z "$(findstring IVMS8_config,$@)" ] || \  
  1012.          { echo "#define CONFIG_IVMS8_16M"  >>$(obj)include/config.h ; \  
  1013.          }  
  1014.     @[ -z "$(findstring IVMS8_128_config,$@)" ] || \  
  1015.          { echo "#define CONFIG_IVMS8_32M"  >>$(obj)include/config.h ; \  
  1016.          }  
  1017.     @[ -z "$(findstring IVMS8_256_config,$@)" ] || \  
  1018.          { echo "#define CONFIG_IVMS8_64M"  >>$(obj)include/config.h ; \  
  1019.          }  
  1020.     @$(MKCONFIG) -a IVMS8 ppc mpc8xx ivm  
  1021.   
  1022. KUP4K_config    :   unconfig  
  1023.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx kup4k kup  
  1024.   
  1025. KUP4X_config    :   unconfig  
  1026.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx kup4x kup  
  1027.   
  1028. LANTEC_config   :   unconfig  
  1029.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx lantec  
  1030.   
  1031. lwmon_config:       unconfig  
  1032.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx lwmon  
  1033.   
  1034. MBX_config  \  
  1035. MBX860T_config: unconfig  
  1036.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx mbx8xx  
  1037.   
  1038. mgsuvd_config:      unconfig  
  1039.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx mgsuvd  
  1040.   
  1041. MHPC_config:        unconfig  
  1042.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx mhpc eltec  
  1043.   
  1044. MVS1_config :       unconfig  
  1045.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx mvs1  
  1046.   
  1047. xtract_NETVIA = $(subst _V2,,$(subst _config,,$1))  
  1048.   
  1049. NETVIA_V2_config \  
  1050. NETVIA_config:      unconfig  
  1051.     @mkdir -p $(obj)include  
  1052.     @[ -z "$(findstring NETVIA_config,$@)" ] || \  
  1053.          { echo "#define CONFIG_NETVIA_VERSION 1" >>$(obj)include/config.h ; \  
  1054.           $(XECHO) "... Version 1" ; \  
  1055.          }  
  1056.     @[ -z "$(findstring NETVIA_V2_config,$@)" ] || \  
  1057.          { echo "#define CONFIG_NETVIA_VERSION 2" >>$(obj)include/config.h ; \  
  1058.           $(XECHO) "... Version 2" ; \  
  1059.          }  
  1060.     @$(MKCONFIG) -a $(call xtract_NETVIA,$@) ppc mpc8xx netvia  
  1061.   
  1062. xtract_NETPHONE = $(subst _V2,,$(subst _config,,$1))  
  1063.   
  1064. NETPHONE_V2_config \  
  1065. NETPHONE_config:    unconfig  
  1066.     @mkdir -p $(obj)include  
  1067.     @[ -z "$(findstring NETPHONE_config,$@)" ] || \  
  1068.          { echo "#define CONFIG_NETPHONE_VERSION 1" >>$(obj)include/config.h ; \  
  1069.          }  
  1070.     @[ -z "$(findstring NETPHONE_V2_config,$@)" ] || \  
  1071.          { echo "#define CONFIG_NETPHONE_VERSION 2" >>$(obj)include/config.h ; \  
  1072.          }  
  1073.     @$(MKCONFIG) -a $(call xtract_NETPHONE,$@) ppc mpc8xx netphone  
  1074.   
  1075. xtract_NETTA = $(subst _SWAPHOOK,,$(subst _6412,,$(subst _ISDN,,$(subst _config,,$1))))  
  1076.   
  1077. NETTA_ISDN_6412_SWAPHOOK_config \  
  1078. NETTA_ISDN_SWAPHOOK_config \  
  1079. NETTA_6412_SWAPHOOK_config \  
  1080. NETTA_SWAPHOOK_config \  
  1081. NETTA_ISDN_6412_config \  
  1082. NETTA_ISDN_config \  
  1083. NETTA_6412_config \  
  1084. NETTA_config:       unconfig  
  1085.     @mkdir -p $(obj)include  
  1086.     @[ -z "$(findstring ISDN_,$@)" ] || \  
  1087.          { echo "#define CONFIG_NETTA_ISDN 1" >>$(obj)include/config.h ; \  
  1088.          }  
  1089.     @[ -n "$(findstring ISDN_,$@)" ] || \  
  1090.          { echo "#undef CONFIG_NETTA_ISDN" >>$(obj)include/config.h ; \  
  1091.          }  
  1092.     @[ -z "$(findstring 6412_,$@)" ] || \  
  1093.          { echo "#define CONFIG_NETTA_6412 1" >>$(obj)include/config.h ; \  
  1094.          }  
  1095.     @[ -n "$(findstring 6412_,$@)" ] || \  
  1096.          { echo "#undef CONFIG_NETTA_6412" >>$(obj)include/config.h ; \  
  1097.          }  
  1098.     @[ -z "$(findstring SWAPHOOK_,$@)" ] || \  
  1099.          { echo "#define CONFIG_NETTA_SWAPHOOK 1" >>$(obj)include/config.h ; \  
  1100.          }  
  1101.     @[ -n "$(findstring SWAPHOOK_,$@)" ] || \  
  1102.          { echo "#undef CONFIG_NETTA_SWAPHOOK" >>$(obj)include/config.h ; \  
  1103.          }  
  1104.     @$(MKCONFIG) -a $(call xtract_NETTA,$@) ppc mpc8xx netta  
  1105.   
  1106. xtract_NETTA2 = $(subst _V2,,$(subst _config,,$1))  
  1107.   
  1108. NETTA2_V2_config \  
  1109. NETTA2_config:      unconfig  
  1110.     @mkdir -p $(obj)include  
  1111.     @[ -z "$(findstring NETTA2_config,$@)" ] || \  
  1112.          { echo "#define CONFIG_NETTA2_VERSION 1" >>$(obj)include/config.h ; \  
  1113.          }  
  1114.     @[ -z "$(findstring NETTA2_V2_config,$@)" ] || \  
  1115.          { echo "#define CONFIG_NETTA2_VERSION 2" >>$(obj)include/config.h ; \  
  1116.          }  
  1117.     @$(MKCONFIG) -a $(call xtract_NETTA2,$@) ppc mpc8xx netta2  
  1118.   
  1119. NC650_Rev1_config \  
  1120. NC650_Rev2_config \  
  1121. CP850_config:   unconfig  
  1122.     @mkdir -p $(obj)include  
  1123.     @[ -z "$(findstring CP850,$@)" ] || \  
  1124.          { echo "#define CONFIG_CP850 1" >>$(obj)include/config.h ; \  
  1125.            echo "#define CONFIG_IDS852_REV2 1" >>$(obj)include/config.h ; \  
  1126.          }  
  1127.     @[ -z "$(findstring Rev1,$@)" ] || \  
  1128.          { echo "#define CONFIG_IDS852_REV1 1" >>$(obj)include/config.h ; \  
  1129.          }  
  1130.     @[ -z "$(findstring Rev2,$@)" ] || \  
  1131.          { echo "#define CONFIG_IDS852_REV2 1" >>$(obj)include/config.h ; \  
  1132.          }  
  1133.     @$(MKCONFIG) -a NC650 ppc mpc8xx nc650  
  1134.   
  1135. NX823_config:       unconfig  
  1136.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx nx823  
  1137.   
  1138. pcu_e_config:       unconfig  
  1139.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx pcu_e siemens  
  1140.   
  1141. QS850_config:   unconfig  
  1142.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx qs850 snmc  
  1143.   
  1144. QS823_config:   unconfig  
  1145.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx qs850 snmc  
  1146.   
  1147. QS860T_config:  unconfig  
  1148.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx qs860t snmc  
  1149.   
  1150. quantum_config: unconfig  
  1151.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx quantum  
  1152.   
  1153. R360MPI_config: unconfig  
  1154.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx r360mpi  
  1155.   
  1156. RBC823_config:  unconfig  
  1157.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx rbc823  
  1158.   
  1159. RPXClassic_config:  unconfig  
  1160.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx RPXClassic  
  1161.   
  1162. RPXlite_config:     unconfig  
  1163.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx RPXlite  
  1164.   
  1165. RPXlite_DW_64_config        \  
  1166. RPXlite_DW_LCD_config       \  
  1167. RPXlite_DW_64_LCD_config    \  
  1168. RPXlite_DW_NVRAM_config     \  
  1169. RPXlite_DW_NVRAM_64_config  \  
  1170. RPXlite_DW_NVRAM_LCD_config \  
  1171. RPXlite_DW_NVRAM_64_LCD_config  \  
  1172. RPXlite_DW_config:  unconfig  
  1173.     @mkdir -p $(obj)include  
  1174.     @[ -z "$(findstring _64,$@)" ] || \  
  1175.         { echo "#define RPXlite_64MHz"      >>$(obj)include/config.h ; \  
  1176.           $(XECHO) "... with 64MHz system clock ..."; \  
  1177.         }  
  1178.     @[ -z "$(findstring _LCD,$@)" ] || \  
  1179.         { echo "#define CONFIG_LCD"     >>$(obj)include/config.h ; \  
  1180.           echo "#define CONFIG_NEC_NL6448BC20"  >>$(obj)include/config.h ; \  
  1181.           $(XECHO) "... with LCD display ..."; \  
  1182.         }  
  1183.     @[ -z "$(findstring _NVRAM,$@)" ] || \  
  1184.         { echo "#define  CFG_ENV_IS_IN_NVRAM"   >>$(obj)include/config.h ; \  
  1185.           $(XECHO) "... with ENV in NVRAM ..."; \  
  1186.         }  
  1187.     @$(MKCONFIG) -a RPXlite_DW ppc mpc8xx RPXlite_dw  
  1188.   
  1189. rmu_config: unconfig  
  1190.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx rmu  
  1191.   
  1192. RRvision_config:    unconfig  
  1193.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx RRvision  
  1194.   
  1195. RRvision_LCD_config:    unconfig  
  1196.     @mkdir -p $(obj)include  
  1197.     @echo "#define CONFIG_LCD" >$(obj)include/config.h  
  1198.     @echo "#define CONFIG_SHARP_LQ104V7DS01" >>$(obj)include/config.h  
  1199.     @$(MKCONFIG) -a RRvision ppc mpc8xx RRvision  
  1200.   
  1201. SM850_config    :   unconfig  
  1202.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx tqm8xx tqc  
  1203.   
  1204. spc1920_config:     unconfig  
  1205.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx spc1920  
  1206.   
  1207. SPD823TS_config:    unconfig  
  1208.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx spd8xx  
  1209.   
  1210. stxxtc_config:  unconfig  
  1211.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx stxxtc  
  1212.   
  1213. svm_sc8xx_config:   unconfig  
  1214.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx svm_sc8xx  
  1215.   
  1216. SXNI855T_config:    unconfig  
  1217.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx sixnet  
  1218.   
  1219. # EMK MPC8xx based modules  
  1220. TOP860_config:      unconfig  
  1221.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx top860 emk  
  1222.   
  1223. # Play some tricks for configuration selection  
  1224. # Only 855 and 860 boards may come with FEC  
  1225. # and only 823 boards may have LCD support  
  1226. xtract_8xx = $(subst _LCD,,$(subst _config,,$1))  
  1227.   
  1228. FPS850L_config      \  
  1229. FPS860L_config      \  
  1230. NSCU_config     \  
  1231. TQM823L_config      \  
  1232. TQM823L_LCD_config  \  
  1233. TQM850L_config      \  
  1234. TQM855L_config      \  
  1235. TQM860L_config      \  
  1236. TQM862L_config      \  
  1237. TQM823M_config      \  
  1238. TQM850M_config      \  
  1239. TQM855M_config      \  
  1240. TQM860M_config      \  
  1241. TQM862M_config      \  
  1242. TQM866M_config      \  
  1243. TQM885D_config      \  
  1244. TK885D_config       \  
  1245. virtlab2_config:    unconfig  
  1246.     @mkdir -p $(obj)include  
  1247.     @[ -z "$(findstring _LCD,$@)" ] || \  
  1248.         { echo "#define CONFIG_LCD"     >>$(obj)include/config.h ; \  
  1249.           echo "#define CONFIG_NEC_NL6448BC20"  >>$(obj)include/config.h ; \  
  1250.           $(XECHO) "... with LCD display" ; \  
  1251.         }  
  1252.     @$(MKCONFIG) -a $(call xtract_8xx,$@) ppc mpc8xx tqm8xx tqc  
  1253.   
  1254. TTTech_config:  unconfig  
  1255.     @mkdir -p $(obj)include  
  1256.     @echo "#define CONFIG_LCD" >$(obj)include/config.h  
  1257.     @echo "#define CONFIG_SHARP_LQ104V7DS01" >>$(obj)include/config.h  
  1258.     @$(MKCONFIG) -a TQM823L ppc mpc8xx tqm8xx tqc  
  1259.   
  1260. uc100_config    :   unconfig  
  1261.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx uc100  
  1262.   
  1263. v37_config: unconfig  
  1264.     @mkdir -p $(obj)include  
  1265.     @echo "#define CONFIG_LCD" >$(obj)include/config.h  
  1266.     @echo "#define CONFIG_SHARP_LQ084V1DG21" >>$(obj)include/config.h  
  1267.     @$(MKCONFIG) $(@:_config=) ppc mpc8xx v37  
  1268.   
  1269. wtk_config: unconfig  
  1270.     @mkdir -p $(obj)include  
  1271.     @echo "#define CONFIG_LCD" >$(obj)include/config.h  
  1272.     @echo "#define CONFIG_SHARP_LQ065T9DR51U" >>$(obj)include/config.h  
  1273.     @$(MKCONFIG) -a TQM823L ppc mpc8xx tqm8xx tqc  
  1274.   
  1275. #########################################################################  
  1276. ## PPC4xx Systems  
  1277. #########################################################################  
  1278. xtract_4xx = $(subst _25,,$(subst _33,,$(subst _BA,,$(subst _ME,,$(subst _HI,,$(subst _config,,$1))))))  
  1279.   
  1280. acadia_config:  unconfig  
  1281.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx acadia amcc  
  1282.   
  1283. acadia_nand_config: unconfig  
  1284.     @mkdir -p $(obj)include $(obj)board/amcc/acadia  
  1285.     @mkdir -p $(obj)nand_spl/board/amcc/acadia  
  1286.     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h  
  1287.     @$(MKCONFIG) -n $@ -a acadia ppc ppc4xx acadia amcc  
  1288.     @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/acadia/config.tmp  
  1289.     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk  
  1290.   
  1291. ADCIOP_config:  unconfig  
  1292.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx adciop esd  
  1293.   
  1294. alpr_config:    unconfig  
  1295.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx alpr prodrive  
  1296.   
  1297. AP1000_config:unconfig  
  1298.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ap1000 amirix  
  1299.   
  1300. APC405_config:  unconfig  
  1301.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx apc405 esd  
  1302.   
  1303. AR405_config:   unconfig  
  1304.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ar405 esd  
  1305.   
  1306. ASH405_config:  unconfig  
  1307.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ash405 esd  
  1308.   
  1309. bamboo_config:  unconfig  
  1310.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx bamboo amcc  
  1311.   
  1312. bamboo_nand_config: unconfig  
  1313.     @mkdir -p $(obj)include $(obj)board/amcc/bamboo  
  1314.     @mkdir -p $(obj)nand_spl/board/amcc/bamboo  
  1315.     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h  
  1316.     @$(MKCONFIG) -n $@ -a bamboo ppc ppc4xx bamboo amcc  
  1317.     @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/bamboo/config.tmp  
  1318.     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk  
  1319.   
  1320. bubinga_config: unconfig  
  1321.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx bubinga amcc  
  1322.   
  1323. CANBT_config:   unconfig  
  1324.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx canbt esd  
  1325.   
  1326. # Canyonlands & Glacier use different U-Boot images  
  1327. canyonlands_config \  
  1328. glacier_config: unconfig  
  1329.     @mkdir -p $(obj)include  
  1330.     @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \  
  1331.         tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h  
  1332.     @$(MKCONFIG) -n $@ -a canyonlands ppc ppc4xx canyonlands amcc  
  1333.   
  1334. canyonlands_nand_config \  
  1335. glacier_nand_config:    unconfig  
  1336.     @mkdir -p $(obj)include $(obj)board/amcc/canyonlands  
  1337.     @mkdir -p $(obj)nand_spl/board/amcc/canyonlands  
  1338.     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h  
  1339.     @echo "#define CONFIG_$$(echo $(subst ,,$(@:_nand_config=)) | \  
  1340.         tr '[:lower:]' '[:upper:]')" >> $(obj)include/config.h  
  1341.     @$(MKCONFIG) -n $@ -a canyonlands ppc ppc4xx canyonlands amcc  
  1342.     @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/canyonlands/config.tmp  
  1343.     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk  
  1344.   
  1345. CATcenter_config    \  
  1346. CATcenter_25_config \  
  1347. CATcenter_33_config:    unconfig  
  1348.     @mkdir -p $(obj)include  
  1349.     @ echo "/* CATcenter uses PPChameleon Model ME */"  > $(obj)include/config.h  
  1350.     @ echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 1" >> $(obj)include/config.h  
  1351.     @[ -z "$(findstring _25,$@)" ] || \  
  1352.         { echo "#define CONFIG_PPCHAMELEON_CLK_25" >> $(obj)include/config.h ; \  
  1353.           $(XECHO) "SysClk = 25MHz" ; \  
  1354.         }  
  1355.     @[ -z "$(findstring _33,$@)" ] || \  
  1356.         { echo "#define CONFIG_PPCHAMELEON_CLK_33" >> $(obj)include/config.h ; \  
  1357.           $(XECHO) "SysClk = 33MHz" ; \  
  1358.         }  
  1359.     @$(MKCONFIG) -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave  
  1360.   
  1361. CMS700_config:  unconfig  
  1362.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx cms700 esd  
  1363.   
  1364. CPCI2DP_config: unconfig  
  1365.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpci2dp esd  
  1366.   
  1367. CPCI405_config  \  
  1368. CPCI4052_config \  
  1369. CPCI405DT_config    \  
  1370. CPCI405AB_config:   unconfig  
  1371.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpci405 esd  
  1372.     @echo "BOARD_REVISION = $(@:_config=)"  >> $(obj)include/config.mk  
  1373.   
  1374. CPCIISER4_config:   unconfig  
  1375.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx cpciiser4 esd  
  1376.   
  1377. CRAYL1_config:  unconfig  
  1378.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx L1 cray  
  1379.   
  1380. csb272_config:  unconfig  
  1381.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx csb272  
  1382.   
  1383. csb472_config:  unconfig  
  1384.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx csb472  
  1385.   
  1386. DASA_SIM_config: unconfig  
  1387.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx dasa_sim esd  
  1388.   
  1389. DP405_config:   unconfig  
  1390.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx dp405 esd  
  1391.   
  1392. DU405_config:   unconfig  
  1393.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx du405 esd  
  1394.   
  1395. DU440_config:   unconfig  
  1396.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx du440 esd  
  1397.   
  1398. ebony_config:   unconfig  
  1399.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ebony amcc  
  1400.   
  1401. ERIC_config:    unconfig  
  1402.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx eric  
  1403.   
  1404. EXBITGEN_config:    unconfig  
  1405.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx exbitgen  
  1406.   
  1407. G2000_config:   unconfig  
  1408.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx g2000  
  1409.   
  1410. hcu4_config:    unconfig  
  1411.     @mkdir -p $(obj)board/netstal/common  
  1412.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx hcu4 netstal  
  1413.   
  1414. hcu5_config:    unconfig  
  1415.     @mkdir -p $(obj)board/netstal/common  
  1416.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx hcu5 netstal  
  1417.   
  1418. HH405_config:   unconfig  
  1419.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx hh405 esd  
  1420.   
  1421. HUB405_config:  unconfig  
  1422.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx hub405 esd  
  1423.   
  1424. JSE_config: unconfig  
  1425.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx jse  
  1426.   
  1427. KAREF_config: unconfig  
  1428.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx karef sandburst  
  1429.   
  1430. katmai_config:  unconfig  
  1431.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx katmai amcc  
  1432.   
  1433. # Kilauea & Haleakala images are identical (recognized via PVR)  
  1434. kilauea_config \  
  1435. haleakala_config: unconfig  
  1436.     @$(MKCONFIG) -n $@ -a kilauea ppc ppc4xx kilauea amcc  
  1437.   
  1438. kilauea_nand_config \  
  1439. haleakala_nand_config: unconfig  
  1440.     @mkdir -p $(obj)include $(obj)board/amcc/kilauea  
  1441.     @mkdir -p $(obj)nand_spl/board/amcc/kilauea  
  1442.     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h  
  1443.     @$(MKCONFIG) -n $@ -a kilauea ppc ppc4xx kilauea amcc  
  1444.     @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/kilauea/config.tmp  
  1445.     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk  
  1446.   
  1447. korat_config:   unconfig  
  1448.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx korat  
  1449.   
  1450. luan_config:    unconfig  
  1451.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx luan amcc  
  1452.   
  1453. lwmon5_config:  unconfig  
  1454.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx lwmon5  
  1455.   
  1456. makalu_config:  unconfig  
  1457.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx makalu amcc  
  1458.   
  1459. mcu25_config:  unconfig  
  1460.     @mkdir -p $(obj)board/netstal/common  
  1461.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx mcu25 netstal  
  1462.   
  1463. METROBOX_config: unconfig  
  1464.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx metrobox sandburst  
  1465.   
  1466. MIP405_config:  unconfig  
  1467.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx mip405 mpl  
  1468.   
  1469. MIP405T_config: unconfig  
  1470.     @mkdir -p $(obj)include  
  1471.     @echo "#define CONFIG_MIP405T" >$(obj)include/config.h  
  1472.     @$(XECHO) "Enable subset config for MIP405T"  
  1473.     @$(MKCONFIG) -a MIP405 ppc ppc4xx mip405 mpl  
  1474.   
  1475. ML2_config: unconfig  
  1476.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ml2  
  1477.   
  1478. ml300_config:   unconfig  
  1479.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ml300 xilinx  
  1480.   
  1481. ocotea_config:  unconfig  
  1482.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ocotea amcc  
  1483.   
  1484. OCRTC_config        \  
  1485. ORSG_config:    unconfig  
  1486.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx ocrtc esd  
  1487.   
  1488. p3p440_config:  unconfig  
  1489.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx p3p440 prodrive  
  1490.   
  1491. PCI405_config:  unconfig  
  1492.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx pci405 esd  
  1493.   
  1494. pcs440ep_config:    unconfig  
  1495.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx pcs440ep  
  1496.   
  1497. PIP405_config:  unconfig  
  1498.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx pip405 mpl  
  1499.   
  1500. PLU405_config:  unconfig  
  1501.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx plu405 esd  
  1502.   
  1503. PMC405_config:  unconfig  
  1504.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx pmc405 esd  
  1505.   
  1506. PMC440_config:  unconfig  
  1507.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx pmc440 esd  
  1508.   
  1509. PPChameleonEVB_config       \  
  1510. PPChameleonEVB_BA_25_config \  
  1511. PPChameleonEVB_ME_25_config \  
  1512. PPChameleonEVB_HI_25_config \  
  1513. PPChameleonEVB_BA_33_config \  
  1514. PPChameleonEVB_ME_33_config \  
  1515. PPChameleonEVB_HI_33_config:    unconfig  
  1516.     @mkdir -p $(obj)include  
  1517.     @[ -z "$(findstring EVB_BA,$@)" ] || \  
  1518.         { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 0" >>$(obj)include/config.h ; \  
  1519.           $(XECHO) "... BASIC model" ; \  
  1520.         }  
  1521.     @[ -z "$(findstring EVB_ME,$@)" ] || \  
  1522.         { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 1" >>$(obj)include/config.h ; \  
  1523.           $(XECHO) "... MEDIUM model" ; \  
  1524.         }  
  1525.     @[ -z "$(findstring EVB_HI,$@)" ] || \  
  1526.         { echo "#define CONFIG_PPCHAMELEON_MODULE_MODEL 2" >>$(obj)include/config.h ; \  
  1527.           $(XECHO) "... HIGH-END model" ; \  
  1528.         }  
  1529.     @[ -z "$(findstring _25,$@)" ] || \  
  1530.         { echo "#define CONFIG_PPCHAMELEON_CLK_25" >>$(obj)include/config.h ; \  
  1531.           $(XECHO) "SysClk = 25MHz" ; \  
  1532.         }  
  1533.     @[ -z "$(findstring _33,$@)" ] || \  
  1534.         { echo "#define CONFIG_PPCHAMELEON_CLK_33" >>$(obj)include/config.h ; \  
  1535.           $(XECHO) "SysClk = 33MHz" ; \  
  1536.         }  
  1537.     @$(MKCONFIG) -a $(call xtract_4xx,$@) ppc ppc4xx PPChameleonEVB dave  
  1538.   
  1539. quad100hd_config:   unconfig  
  1540.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx quad100hd  
  1541.   
  1542. sbc405_config:  unconfig  
  1543.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx sbc405  
  1544.   
  1545. sc3_config:unconfig  
  1546.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx sc3  
  1547.   
  1548. sequoia_config \  
  1549. rainier_config: unconfig  
  1550.     @mkdir -p $(obj)include  
  1551.     @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \  
  1552.         tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h  
  1553.     @$(MKCONFIG) -n $@ -a sequoia ppc ppc4xx sequoia amcc  
  1554.   
  1555. sequoia_nand_config \  
  1556. rainier_nand_config: unconfig  
  1557.     @mkdir -p $(obj)include $(obj)board/amcc/sequoia  
  1558.     @mkdir -p $(obj)nand_spl/board/amcc/sequoia  
  1559.     @echo "#define CONFIG_NAND_U_BOOT" > $(obj)include/config.h  
  1560.     @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \  
  1561.         tr '[:lower:]' '[:upper:]')" >> $(obj)include/config.h  
  1562.     @$(MKCONFIG) -n $@ -a sequoia ppc ppc4xx sequoia amcc  
  1563.     @echo "TEXT_BASE = 0x01000000" > $(obj)board/amcc/sequoia/config.tmp  
  1564.     @echo "CONFIG_NAND_U_BOOT = y" >> $(obj)include/config.mk  
  1565.   
  1566. taihu_config:   unconfig  
  1567.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx taihu amcc  
  1568.   
  1569. taishan_config: unconfig  
  1570.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx taishan amcc  
  1571.   
  1572. VOH405_config:  unconfig  
  1573.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx voh405 esd  
  1574.   
  1575. VOM405_config:  unconfig  
  1576.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx vom405 esd  
  1577.   
  1578. W7OLMC_config   \  
  1579. W7OLMG_config: unconfig  
  1580.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx w7o  
  1581.   
  1582. # Walnut & Sycamore images are identical (recognized via PVR)  
  1583. walnut_config \  
  1584. sycamore_config: unconfig  
  1585.     @$(MKCONFIG) -n $@ -a walnut ppc ppc4xx walnut amcc  
  1586.   
  1587. WUH405_config:  unconfig  
  1588.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx wuh405 esd  
  1589.   
  1590. XPEDITE1K_config:   unconfig  
  1591.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx xpedite1k  
  1592.   
  1593. yosemite_config \  
  1594. yellowstone_config: unconfig  
  1595.     @mkdir -p $(obj)include  
  1596.     @echo "#define CONFIG_$$(echo $(subst ,,$(@:_config=)) | \  
  1597.         tr '[:lower:]' '[:upper:]')" >$(obj)include/config.h  
  1598.     @$(MKCONFIG) -n $@ -a yosemite ppc ppc4xx yosemite amcc  
  1599.   
  1600. yucca_config:   unconfig  
  1601.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx yucca amcc  
  1602.   
  1603. zeus_config:    unconfig  
  1604.     @$(MKCONFIG) $(@:_config=) ppc ppc4xx zeus  
  1605.   
  1606. #########################################################################  
  1607. ## MPC8220 Systems  
  1608. #########################################################################  
  1609.   
  1610. Alaska8220_config   \  
  1611. Yukon8220_config:   unconfig  
  1612.     @$(MKCONFIG) $(@:_config=) ppc mpc8220 alaska  
  1613.   
  1614. sorcery_config:     unconfig  
  1615.     @$(MKCONFIG) $(@:_config=) ppc mpc8220 sorcery  
  1616.   
  1617. #########################################################################  
  1618. ## MPC824x Systems  
  1619. #########################################################################  
  1620. xtract_82xx = $(subst _BIGFLASH,,$(subst _ROMBOOT,,$(subst _L2,,$(subst _266MHz,,$(subst _300MHz,,$(subst _config,,$1))))))  
  1621.   
  1622. A3000_config: unconfig  
  1623.     @$(MKCONFIG) $(@:_config=) ppc mpc824x a3000  
  1624.   
  1625. barco_config: unconfig  
  1626.     @$(MKCONFIG) $(@:_config=) ppc mpc824x barco  
  1627.   
  1628. BMW_config: unconfig  
  1629.     @$(MKCONFIG) $(@:_config=) ppc mpc824x bmw  
  1630.   
  1631. CPC45_config    \  
  1632. CPC45_ROMBOOT_config:   unconfig  
  1633.     @$(MKCONFIG) $(call xtract_82xx,$@) ppc mpc824x cpc45  
  1634.     @cd $(obj)include ;             \  
  1635.     if [ "$(findstring _ROMBOOT_,$@)" ] ; then \  
  1636.         echo "CONFIG_BOOT_ROM = y" >> config.mk ; \  
  1637.         $(XECHO) "... booting from 8-bit flash" ; \  
  1638.     else \  
  1639.         echo "CONFIG_BOOT_ROM = n" >> config.mk ; \  
  1640.         $(XECHO) "... booting from 64-bit flash" ; \  
  1641.     fi; \  
  1642.     echo "export CONFIG_BOOT_ROM" >> config.mk;  
  1643.   
  1644. CU824_config: unconfig  
  1645.     @$(MKCONFIG) $(@:_config=) ppc mpc824x cu824  
  1646.   
  1647. debris_config: unconfig  
  1648.     @$(MKCONFIG) $(@:_config=) ppc mpc824x debris etin  
  1649.   
  1650. eXalion_config: unconfig  
  1651.     @$(MKCONFIG) $(@:_config=) ppc mpc824x eXalion  
  1652.   
  1653. HIDDEN_DRAGON_config: unconfig  
  1654.     @$(MKCONFIG) $(@:_config=) ppc mpc824x hidden_dragon  
  1655.   
  1656. kvme080_config: unconfig  
  1657.     @$(MKCONFIG) $(@:_config=) ppc mpc824x kvme080 etin  
  1658.   
  1659. # HDLAN is broken ATM. Should be fixed as soon as hardware is available and as  
  1660. # time permits.  
  1661. #linkstation_HDLAN_config \  
  1662. # Remove this line when HDLAN is fixed  
  1663. linkstation_HGLAN_config: unconfig  
  1664.     @mkdir -p $(obj)include  
  1665.     @case $@ in \  
  1666.         *HGLAN*) echo "#define CONFIG_HGLAN 1" >$(obj)include/config.h; ;; \  
  1667.         *HDLAN*) echo "#define CONFIG_HLAN 1" >$(obj)include/config.h; ;; \  
  1668.     esac  
  1669.     @$(MKCONFIG) -n $@ -a linkstation ppc mpc824x linkstation  
  1670.   
  1671. MOUSSE_config: unconfig  
  1672.     @$(MKCONFIG) $(@:_config=) ppc mpc824x mousse  
  1673.   
  1674. MUSENKI_config: unconfig  
  1675.     @$(MKCONFIG) $(@:_config=) ppc mpc824x musenki  
  1676.   
  1677. MVBLUE_config:  unconfig  
  1678.     @$(MKCONFIG) $(@:_config=) ppc mpc824x mvblue  
  1679.   
  1680. OXC_config: unconfig  
  1681.     @$(MKCONFIG) $(@:_config=) ppc mpc824x oxc  
  1682.   
  1683. PN62_config: unconfig  
  1684.     @$(MKCONFIG) $(@:_config=) ppc mpc824x pn62  
  1685.   
  1686. Sandpoint8240_config: unconfig  
  1687.     @$(MKCONFIG) $(@:_config=) ppc mpc824x sandpoint  
  1688.   
  1689. Sandpoint8245_config: unconfig  
  1690.     @$(MKCONFIG) $(@:_config=) ppc mpc824x sandpoint  
  1691.   
  1692. sbc8240_config: unconfig  
  1693.     @$(MKCONFIG) $(@:_config=) ppc mpc824x sbc8240  
  1694.   
  1695. SL8245_config: unconfig  
  1696.     @$(MKCONFIG) $(@:_config=) ppc mpc824x sl8245  
  1697.   
  1698. utx8245_config: unconfig  
  1699.     @$(MKCONFIG) $(@:_config=) ppc mpc824x utx8245  
  1700.   
  1701. #########################################################################  
  1702. ## MPC8260 Systems  
  1703. #########################################################################  
  1704.   
  1705. atc_config: unconfig  
  1706.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 atc  
  1707.   
  1708. cogent_mpc8260_config:  unconfig  
  1709.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 cogent  
  1710.   
  1711. CPU86_config    \  
  1712. CPU86_ROMBOOT_config: unconfig  
  1713.     @$(MKCONFIG) $(call xtract_82xx,$@) ppc mpc8260 cpu86  
  1714.     @cd $(obj)include ;             \  
  1715.     if [ "$(findstring _ROMBOOT_,$@)" ] ; then \  
  1716.         echo "CONFIG_BOOT_ROM = y" >> config.mk ; \  
  1717.         $(XECHO) "... booting from 8-bit flash" ; \  
  1718.     else \  
  1719.         echo "CONFIG_BOOT_ROM = n" >> config.mk ; \  
  1720.         $(XECHO) "... booting from 64-bit flash" ; \  
  1721.     fi; \  
  1722.     echo "export CONFIG_BOOT_ROM" >> config.mk;  
  1723.   
  1724. CPU87_config    \  
  1725. CPU87_ROMBOOT_config: unconfig  
  1726.     @$(MKCONFIG) $(call xtract_82xx,$@) ppc mpc8260 cpu87  
  1727.     @cd $(obj)include ;             \  
  1728.     if [ "$(findstring _ROMBOOT_,$@)" ] ; then \  
  1729.         echo "CONFIG_BOOT_ROM = y" >> config.mk ; \  
  1730.         $(XECHO) "... booting from 8-bit flash" ; \  
  1731.     else \  
  1732.         echo "CONFIG_BOOT_ROM = n" >> config.mk ; \  
  1733.         $(XECHO) "... booting from 64-bit flash" ; \  
  1734.     fi; \  
  1735.     echo "export CONFIG_BOOT_ROM" >> config.mk;  
  1736.   
  1737. ep8248_config   \  
  1738. ep8248E_config  :   unconfig  
  1739.     @$(MKCONFIG) ep8248 ppc mpc8260 ep8248  
  1740.   
  1741. ep8260_config:  unconfig  
  1742.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 ep8260  
  1743.   
  1744. ep82xxm_config: unconfig  
  1745.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 ep82xxm  
  1746.   
  1747. gw8260_config:  unconfig  
  1748.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 gw8260  
  1749.   
  1750. hymod_config:   unconfig  
  1751.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 hymod  
  1752.   
  1753. IDS8247_config: unconfig  
  1754.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 ids8247  
  1755.   
  1756. IPHASE4539_config:  unconfig  
  1757.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 iphase4539  
  1758.   
  1759. ISPAN_config        \  
  1760. ISPAN_REVB_config:  unconfig  
  1761.     @mkdir -p $(obj)include  
  1762.     @if [ "$(findstring _REVB_,$@)" ] ; then \  
  1763.         echo "#define CFG_REV_B" > $(obj)include/config.h ; \  
  1764.     fi  
  1765.     @$(MKCONFIG) -a ISPAN ppc mpc8260 ispan  
  1766.   
  1767. mgcoge_config   :   unconfig  
  1768.     @$(MKCONFIG) mgcoge ppc mpc8260 mgcoge  
  1769.   
  1770. MPC8260ADS_config   \  
  1771. MPC8260ADS_lowboot_config   \  
  1772. MPC8260ADS_33MHz_config \  
  1773. MPC8260ADS_33MHz_lowboot_config \  
  1774. MPC8260ADS_40MHz_config \  
  1775. MPC8260ADS_40MHz_lowboot_config \  
  1776. MPC8272ADS_config   \  
  1777. MPC8272ADS_lowboot_config   \  
  1778. PQ2FADS_config      \  
  1779. PQ2FADS_lowboot_config      \  
  1780. PQ2FADS-VR_config   \  
  1781. PQ2FADS-VR_lowboot_config   \  
  1782. PQ2FADS-ZU_config   \  
  1783. PQ2FADS-ZU_lowboot_config   \  
  1784. PQ2FADS-ZU_66MHz_config \  
  1785. PQ2FADS-ZU_66MHz_lowboot_config \  
  1786.     :       unconfig  
  1787.     @mkdir -p $(obj)include  
  1788.     @mkdir -p $(obj)board/freescale/mpc8260ads  
  1789.     $(if $(findstring PQ2FADS,$@), \  
  1790.     @echo "#define CONFIG_ADSTYPE CFG_PQ2FADS" > $(obj)include/config.h, \  
  1791.     @echo "#define CONFIG_ADSTYPE CFG_"$(subst MPC,,$(word 1,$(subst _, ,$@))) > $(obj)include/config.h)  
  1792.     $(if $(findstring MHz,$@), \  
  1793.     @echo "#define CONFIG_8260_CLKIN" $(subst MHz,,$(word 2,$(subst _, ,$@)))"000000" >> $(obj)include/config.h, \  
  1794.     $(if $(findstring VR,$@), \  
  1795.     @echo "#define CONFIG_8260_CLKIN 66000000" >> $(obj)include/config.h))  
  1796.     @[ -z "$(findstring lowboot_,$@)" ] || \  
  1797.         { echo "TEXT_BASE = 0xFF800000" >$(obj)board/freescale/mpc8260ads/config.tmp ; \  
  1798.           $(XECHO) "... with lowboot configuration" ; \  
  1799.         }  
  1800.     @$(MKCONFIG) -a MPC8260ADS ppc mpc8260 mpc8260ads freescale  
  1801.   
  1802. MPC8266ADS_config:  unconfig  
  1803.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 mpc8266ads freescale  
  1804.   
  1805. # PM825/PM826 default configuration:  small (= 8 MB) Flash / boot from 64-bit flash  
  1806. PM825_config    \  
  1807. PM825_ROMBOOT_config    \  
  1808. PM825_BIGFLASH_config   \  
  1809. PM825_ROMBOOT_BIGFLASH_config   \  
  1810. PM826_config    \  
  1811. PM826_ROMBOOT_config    \  
  1812. PM826_BIGFLASH_config   \  
  1813. PM826_ROMBOOT_BIGFLASH_config:  unconfig  
  1814.     @mkdir -p $(obj)include  
  1815.     @mkdir -p $(obj)board/pm826  
  1816.     @if [ "$(findstring PM825_,$@)" ] ; then \  
  1817.         echo "#define CONFIG_PCI"   >$(obj)include/config.h ; \  
  1818.     else \  
  1819.         >$(obj)include/config.h ; \  
  1820.     fi  
  1821.     @if [ "$(findstring _ROMBOOT_,$@)" ] ; then \  
  1822.         $(XECHO) "... booting from 8-bit flash" ; \  
  1823.         echo "#define CONFIG_BOOT_ROM" >>$(obj)include/config.h ; \  
  1824.         echo "TEXT_BASE = 0xFF800000" >$(obj)board/pm826/config.tmp ; \  
  1825.         if [ "$(findstring _BIGFLASH_,$@)" ] ; then \  
  1826.             $(XECHO) "... with 32 MB Flash" ; \  
  1827.             echo "#define CONFIG_FLASH_32MB" >>$(obj)include/config.h ; \  
  1828.         fi; \  
  1829.     else \  
  1830.         $(XECHO) "... booting from 64-bit flash" ; \  
  1831.         if [ "$(findstring _BIGFLASH_,$@)" ] ; then \  
  1832.             $(XECHO) "... with 32 MB Flash" ; \  
  1833.             echo "#define CONFIG_FLASH_32MB" >>$(obj)include/config.h ; \  
  1834.             echo "TEXT_BASE = 0x40000000" >$(obj)board/pm826/config.tmp ; \  
  1835.         else \  
  1836.             echo "TEXT_BASE = 0xFF000000" >$(obj)board/pm826/config.tmp ; \  
  1837.         fi; \  
  1838.     fi  
  1839.     @$(MKCONFIG) -a PM826 ppc mpc8260 pm826  
  1840.   
  1841. PM828_config    \  
  1842. PM828_PCI_config    \  
  1843. PM828_ROMBOOT_config    \  
  1844. PM828_ROMBOOT_PCI_config:   unconfig  
  1845.     @mkdir -p $(obj)include  
  1846.     @mkdir -p $(obj)board/pm826  
  1847.     @if [ "$(findstring _PCI_,$@)" ] ; then \  
  1848.         echo "#define CONFIG_PCI"  >>$(obj)include/config.h ; \  
  1849.         $(XECHO) "... with PCI enabled" ; \  
  1850.     fi  
  1851.     @if [ "$(findstring _ROMBOOT_,$@)" ] ; then \  
  1852.         $(XECHO) "... booting from 8-bit flash" ; \  
  1853.         echo "#define CONFIG_BOOT_ROM" >>$(obj)include/config.h ; \  
  1854.         echo "TEXT_BASE = 0xFF800000" >$(obj)board/pm826/config.tmp ; \  
  1855.     fi  
  1856.     @$(MKCONFIG) -a PM828 ppc mpc8260 pm828  
  1857.   
  1858. ppmc8260_config:    unconfig  
  1859.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 ppmc8260  
  1860.   
  1861. Rattler8248_config  \  
  1862. Rattler_config:     unconfig  
  1863.     @mkdir -p $(obj)include  
  1864.     $(if $(findstring 8248,$@), \  
  1865.     @echo "#define CONFIG_MPC8248" > $(obj)include/config.h)  
  1866.     @$(MKCONFIG) -a Rattler ppc mpc8260 rattler  
  1867.   
  1868. RPXsuper_config:    unconfig  
  1869.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 rpxsuper  
  1870.   
  1871. rsdproto_config:    unconfig  
  1872.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 rsdproto  
  1873.   
  1874. sacsng_config:  unconfig  
  1875.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 sacsng  
  1876.   
  1877. sbc8260_config: unconfig  
  1878.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 sbc8260  
  1879.   
  1880. SCM_config:     unconfig  
  1881.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 SCM siemens  
  1882.   
  1883. TQM8255_AA_config \  
  1884. TQM8260_AA_config \  
  1885. TQM8260_AB_config \  
  1886. TQM8260_AC_config \  
  1887. TQM8260_AD_config \  
  1888. TQM8260_AE_config \  
  1889. TQM8260_AF_config \  
  1890. TQM8260_AG_config \  
  1891. TQM8260_AH_config \  
  1892. TQM8260_AI_config \  
  1893. TQM8265_AA_config:  unconfig  
  1894.     @mkdir -p $(obj)include  
  1895.     @case "$@" in \  
  1896.     TQM8255_AA_config) CTYPE=MPC8255; CFREQ=300; CACHE=no;  BMODE=8260;;  \  
  1897.     TQM8260_AA_config) CTYPE=MPC8260; CFREQ=200; CACHE=no;  BMODE=8260;; \  
  1898.     TQM8260_AB_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;;  \  
  1899.     TQM8260_AC_config) CTYPE=MPC8260; CFREQ=200; CACHE=yes; BMODE=60x;;  \  
  1900.     TQM8260_AD_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=60x;;  \  
  1901.     TQM8260_AE_config) CTYPE=MPC8260; CFREQ=266; CACHE=no;  BMODE=8260;; \  
  1902.     TQM8260_AF_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=60x;;  \  
  1903.     TQM8260_AG_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=8260;; \  
  1904.     TQM8260_AH_config) CTYPE=MPC8260; CFREQ=300; CACHE=yes; BMODE=60x;;  \  
  1905.     TQM8260_AI_config) CTYPE=MPC8260; CFREQ=300; CACHE=no;  BMODE=60x;;  \  
  1906.     TQM8265_AA_config) CTYPE=MPC8265; CFREQ=300; CACHE=no;  BMODE=60x;;  \  
  1907.     esac; \  
  1908.     if [ "$${CTYPE}" != "MPC8260" ] ; then \  
  1909.         echo "#define CONFIG_$${CTYPE}" >>$(obj)include/config.h ; \  
  1910.     fi; \  
  1911.     echo "#define CONFIG_$${CFREQ}MHz"  >>$(obj)include/config.h ; \  
  1912.     echo "... with $${CFREQ}MHz system clock" ; \  
  1913.     if [ "$${CACHE}" = "yes" ] ; then \  
  1914.         echo "#define CONFIG_L2_CACHE"  >>$(obj)include/config.h ; \  
  1915.         $(XECHO) "... with L2 Cache support" ; \  
  1916.     else \  
  1917.         echo "#undef CONFIG_L2_CACHE"   >>$(obj)include/config.h ; \  
  1918.         $(XECHO) "... without L2 Cache support" ; \  
  1919.     fi; \  
  1920.     if [ "$${BMODE}" = "60x" ] ; then \  
  1921.         echo "#define CONFIG_BUSMODE_60x" >>$(obj)include/config.h ; \  
  1922.         $(XECHO) "... with 60x Bus Mode" ; \  
  1923.     else \  
  1924.         echo "#undef CONFIG_BUSMODE_60x"  >>$(obj)include/config.h ; \  
  1925.         $(XECHO) "... without 60x Bus Mode" ; \  
  1926.     fi  
  1927.     @$(MKCONFIG) -a TQM8260 ppc mpc8260 tqm8260 tqc  
  1928.   
  1929. TQM8272_config: unconfig  
  1930.     @$(MKCONFIG) TQM8272 ppc mpc8260 tqm8272 tqc  
  1931.   
  1932. VoVPN-GW_66MHz_config   \  
  1933. VoVPN-GW_100MHz_config:     unconfig  
  1934.     @mkdir -p $(obj)include  
  1935.     @echo "#define CONFIG_CLKIN_$(word 2,$(subst _, ,$@))" > $(obj)include/config.h  
  1936.     @$(MKCONFIG) -a VoVPN-GW ppc mpc8260 vovpn-gw funkwerk  
  1937.   
  1938. ZPC1900_config: unconfig  
  1939.     @$(MKCONFIG) $(@:_config=) ppc mpc8260 zpc1900  
  1940.   
  1941. #########################################################################  
  1942. ## Coldfire  
  1943. #########################################################################  
  1944.   
  1945. M52277EVB_config:   unconfig  
  1946.     @$(MKCONFIG) -a M52277EVB m68k mcf5227x m52277evb freescale  
  1947.   
  1948. M5235EVB_config \  
  1949. M5235EVB_Flash16_config \  
  1950. M5235EVB_Flash32_config:    unconfig  
  1951.     @case "$@" in \  
  1952.     M5235EVB_config)        FLASH=16;; \  
  1953.     M5235EVB_Flash16_config)    FLASH=16;; \  
  1954.     M5235EVB_Flash32_config)    FLASH=32;; \  
  1955.     esac; \  
  1956.     if [ "$${FLASH}" != "16" ] ; then \  
  1957.         echo "#define NORFLASH_PS32BIT  1" >> $(obj)include/config.h ; \  
  1958.         echo "TEXT_BASE = 0xFFC00000" > $(obj)board/freescale/m5235evb/config.tmp ; \  
  1959.         cp $(obj)board/freescale/m5235evb/u-boot.32 $(obj)board/freescale/m5235evb/u-boot.lds ; \  
  1960.     else \  
  1961.         echo "TEXT_BASE = 0xFFE00000" > $(obj)board/freescale/m5235evb/config.tmp ; \  
  1962.         cp $(obj)board/freescale/m5235evb/u-boot.16 $(obj)board/freescale/m5235evb/u-boot.lds ; \  
  1963.     fi  
  1964.     @$(MKCONFIG) -a M5235EVB m68k mcf523x m5235evb freescale  
  1965.   
  1966. M5249EVB_config :       unconfig  
  1967.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5249evb freescale  
  1968.   
  1969. M5253EVBE_config :      unconfig  
  1970.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5253evbe freescale  
  1971.   
  1972. cobra5272_config :      unconfig  
  1973.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 cobra5272  
  1974.   
  1975. EB+MCF-EV123_config :       unconfig  
  1976.     @mkdir -p $(obj)include  
  1977.     @mkdir -p $(obj)board/BuS/EB+MCF-EV123  
  1978.     @echo "TEXT_BASE = 0xFFE00000"|tee $(obj)board/BuS/EB+MCF-EV123/textbase.mk  
  1979.     @$(MKCONFIG) EB+MCF-EV123 m68k mcf52x2 EB+MCF-EV123 BuS  
  1980.   
  1981. EB+MCF-EV123_internal_config :  unconfig  
  1982.     @mkdir -p $(obj)include  
  1983.     @mkdir -p $(obj)board/BuS/EB+MCF-EV123  
  1984.     @echo "TEXT_BASE = 0xF0000000"|tee $(obj)board/BuS/EB+MCF-EV123/textbase.mk  
  1985.     @$(MKCONFIG) EB+MCF-EV123 m68k mcf52x2 EB+MCF-EV123 BuS  
  1986.   
  1987. idmr_config :           unconfig  
  1988.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 idmr  
  1989.   
  1990. M5271EVB_config :       unconfig  
  1991.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5271evb  
  1992.   
  1993. M5272C3_config :        unconfig  
  1994.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5272c3  
  1995.   
  1996. M5275EVB_config :       unconfig  
  1997.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5275evb freescale  
  1998.   
  1999. M5282EVB_config :       unconfig  
  2000.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 m5282evb  
  2001.   
  2002. M5329AFEE_config \  
  2003. M5329BFEE_config :  unconfig  
  2004.     @case "$@" in \  
  2005.     M5329AFEE_config)   NAND=0;; \  
  2006.     M5329BFEE_config)   NAND=16;; \  
  2007.     esac; \  
  2008.     if [ "$${NAND}" != "0" ] ; then \  
  2009.         echo "#define NANDFLASH_SIZE    $${NAND}" > $(obj)include/config.h ; \  
  2010.     fi  
  2011.     @$(MKCONFIG) -a M5329EVB m68k mcf532x m5329evb freescale  
  2012.   
  2013. M5373EVB_config :   unconfig  
  2014.     @case "$@" in \  
  2015.     M5373EVB_config)    NAND=16;; \  
  2016.     esac; \  
  2017.     if [ "$${NAND}" != "0" ] ; then \  
  2018.         echo "#define NANDFLASH_SIZE    $${NAND}" > $(obj)include/config.h ; \  
  2019.     fi  
  2020.     @$(MKCONFIG) -a M5373EVB m68k mcf532x m5373evb freescale  
  2021.   
  2022. M54455EVB_config \  
  2023. M54455EVB_atmel_config \  
  2024. M54455EVB_intel_config \  
  2025. M54455EVB_a33_config \  
  2026. M54455EVB_a66_config \  
  2027. M54455EVB_i33_config \  
  2028. M54455EVB_i66_config :  unconfig  
  2029.     @case "$@" in \  
  2030.     M54455EVB_config)       FLASH=ATMEL; FREQ=33333333;; \  
  2031.     M54455EVB_atmel_config)     FLASH=ATMEL; FREQ=33333333;; \  
  2032.     M54455EVB_intel_config)     FLASH=INTEL; FREQ=33333333;; \  
  2033.     M54455EVB_a33_config)       FLASH=ATMEL; FREQ=33333333;; \  
  2034.     M54455EVB_a66_config)       FLASH=ATMEL; FREQ=66666666;; \  
  2035.     M54455EVB_i33_config)       FLASH=INTEL; FREQ=33333333;; \  
  2036.     M54455EVB_i66_config)       FLASH=INTEL; FREQ=66666666;; \  
  2037.     esac; \  
  2038.     if [ "$${FLASH}" = "INTEL" ] ; then \  
  2039.         echo "#undef CFG_ATMEL_BOOT" >> $(obj)include/config.h ; \  
  2040.         echo "TEXT_BASE = 0x00000000" > $(obj)board/freescale/m54455evb/config.tmp ; \  
  2041.         cp $(obj)board/freescale/m54455evb/u-boot.int $(obj)board/freescale/m54455evb/u-boot.lds ; \  
  2042.         $(XECHO) "... with INTEL boot..." ; \  
  2043.     else \  
  2044.         echo "#define CFG_ATMEL_BOOT"   >> $(obj)include/config.h ; \  
  2045.         echo "TEXT_BASE = 0x04000000" > $(obj)board/freescale/m54455evb/config.tmp ; \  
  2046.         cp $(obj)board/freescale/m54455evb/u-boot.atm $(obj)board/freescale/m54455evb/u-boot.lds ; \  
  2047.         $(XECHO) "... with ATMEL boot..." ; \  
  2048.     fi; \  
  2049.     echo "#define CFG_INPUT_CLKSRC $${FREQ}" >> $(obj)include/config.h ; \  
  2050.     $(XECHO) "... with $${FREQ}Hz input clock"  
  2051.     @$(MKCONFIG) -a M54455EVB m68k mcf5445x m54455evb freescale  
  2052.   
  2053. M5475AFE_config \  
  2054. M5475BFE_config \  
  2055. M5475CFE_config \  
  2056. M5475DFE_config \  
  2057. M5475EFE_config \  
  2058. M5475FFE_config \  
  2059. M5475GFE_config :   unconfig  
  2060.     @case "$@" in \  
  2061.     M5475AFE_config)    BOOT=2;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2062.     M5475BFE_config)    BOOT=2;CODE=16;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2063.     M5475CFE_config)    BOOT=2;CODE=16;VID=1;USB=1;RAM=64;RAM1=0;; \  
  2064.     M5475DFE_config)    BOOT=2;CODE=0;VID=0;USB=1;RAM=64;RAM1=0;; \  
  2065.     M5475EFE_config)    BOOT=2;CODE=0;VID=1;USB=1;RAM=64;RAM1=0;; \  
  2066.     M5475FFE_config)    BOOT=2;CODE=32;VID=1;USB=1;RAM=64;RAM1=64;; \  
  2067.     M5475GFE_config)    BOOT=4;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2068.     esac; \  
  2069.     echo "#define CFG_BUSCLK    133333333" > $(obj)include/config.h ; \  
  2070.     echo "#define CFG_BOOTSZ    $${BOOT}" >> $(obj)include/config.h ; \  
  2071.     echo "#define CFG_DRAMSZ    $${RAM}" >> $(obj)include/config.h ; \  
  2072.     if [ "$${RAM1}" != "0" ] ; then \  
  2073.         echo "#define CFG_DRAMSZ1   $${RAM1}" >> $(obj)include/config.h ; \  
  2074.     fi; \  
  2075.     if [ "$${CODE}" != "0" ] ; then \  
  2076.         echo "#define CFG_NOR1SZ    $${CODE}" >> $(obj)include/config.h ; \  
  2077.     fi; \  
  2078.     if [ "$${VID}" == "1" ] ; then \  
  2079.         echo "#define CFG_VIDEO" >> $(obj)include/config.h ; \  
  2080.     fi; \  
  2081.     if [ "$${USB}" == "1" ] ; then \  
  2082.         echo "#define CFG_USBCTRL" >> $(obj)include/config.h ; \  
  2083.     fi  
  2084.     @$(MKCONFIG) -a M5475EVB m68k mcf547x_8x m547xevb freescale  
  2085.   
  2086. M5485AFE_config \  
  2087. M5485BFE_config \  
  2088. M5485CFE_config \  
  2089. M5485DFE_config \  
  2090. M5485EFE_config \  
  2091. M5485FFE_config \  
  2092. M5485GFE_config \  
  2093. M5485HFE_config :   unconfig  
  2094.     @case "$@" in \  
  2095.     M5485AFE_config)    BOOT=2;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2096.     M5485BFE_config)    BOOT=2;CODE=16;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2097.     M5485CFE_config)    BOOT=2;CODE=16;VID=1;USB=1;RAM=64;RAM1=0;; \  
  2098.     M5485DFE_config)    BOOT=2;CODE=0;VID=0;USB=1;RAM=64;RAM1=0;; \  
  2099.     M5485EFE_config)    BOOT=2;CODE=0;VID=1;USB=1;RAM=64;RAM1=0;; \  
  2100.     M5485FFE_config)    BOOT=2;CODE=32;VID=1;USB=1;RAM=64;RAM1=64;; \  
  2101.     M5485GFE_config)    BOOT=4;CODE=0;VID=0;USB=0;RAM=64;RAM1=0;; \  
  2102.     M5485HFE_config)    BOOT=2;CODE=16;VID=1;USB=0;RAM=64;RAM1=0;; \  
  2103.     esac; \  
  2104.     echo "#define CFG_BUSCLK    100000000" > $(obj)include/config.h ; \  
  2105.     echo "#define CFG_BOOTSZ    $${BOOT}" >> $(obj)include/config.h ; \  
  2106.     echo "#define CFG_DRAMSZ    $${RAM}" >> $(obj)include/config.h ; \  
  2107.     if [ "$${RAM1}" != "0" ] ; then \  
  2108.         echo "#define CFG_DRAMSZ1   $${RAM1}" >> $(obj)include/config.h ; \  
  2109.     fi; \  
  2110.     if [ "$${CODE}" != "0" ] ; then \  
  2111.         echo "#define CFG_NOR1SZ    $${CODE}" >> $(obj)include/config.h ; \  
  2112.     fi; \  
  2113.     if [ "$${VID}" == "1" ] ; then \  
  2114.         echo "#define CFG_VIDEO" >> $(obj)include/config.h ; \  
  2115.     fi; \  
  2116.     if [ "$${USB}" == "1" ] ; then \  
  2117.         echo "#define CFG_USBCTRL" >> $(obj)include/config.h ; \  
  2118.     fi  
  2119.     @$(MKCONFIG) -a M5485EVB m68k mcf547x_8x m548xevb freescale  
  2120.   
  2121. TASREG_config :     unconfig  
  2122.     @$(MKCONFIG) $(@:_config=) m68k mcf52x2 tasreg esd  
  2123.   
  2124. #########################################################################  
  2125. ## MPC83xx Systems  
  2126. #########################################################################  
  2127.   
  2128. MPC8313ERDB_33_config \  
  2129. MPC8313ERDB_66_config: unconfig  
  2130.     @mkdir -p $(obj)include  
  2131.     @if [ "$(findstring _33_,$@)" ] ; then \  
  2132.         $(XECHO) -n "...33M ..." ; \  
  2133.         echo "#define CFG_33MHZ" >>$(obj)include/config.h ; \  
  2134.     fi ; \  
  2135.     if [ "$(findstring _66_,$@)" ] ; then \  
  2136.         $(XECHO) -n "...66M..." ; \  
  2137.         echo "#define CFG_66MHZ" >>$(obj)include/config.h ; \  
  2138.     fi ;  
  2139.     @$(MKCONFIG) -a MPC8313ERDB ppc mpc83xx mpc8313erdb freescale  
  2140.   
  2141. MPC8315ERDB_config: unconfig  
  2142.     @$(MKCONFIG) -a MPC8315ERDB ppc mpc83xx mpc8315erdb freescale  
  2143.   
  2144. MPC8323ERDB_config: unconfig  
  2145.     @$(MKCONFIG) -a MPC8323ERDB ppc mpc83xx mpc8323erdb freescale  
  2146.   
  2147. MPC832XEMDS_config \  
  2148. MPC832XEMDS_HOST_33_config \  
  2149. MPC832XEMDS_HOST_66_config \  
  2150. MPC832XEMDS_SLAVE_config \  
  2151. MPC832XEMDS_ATM_config: unconfig  
  2152.     @mkdir -p $(obj)include  
  2153.     @if [ "$(findstring _HOST_,$@)" ] ; then \  
  2154.         $(XECHO) -n "... PCI HOST " ; \  
  2155.         echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \  
  2156.     fi ; \  
  2157.     if [ "$(findstring _SLAVE_,$@)" ] ; then \  
  2158.         $(XECHO) "...PCI SLAVE 66M"  ; \  
  2159.         echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \  
  2160.         echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \  
  2161.     fi ; \  
  2162.     if [ "$(findstring _33_,$@)" ] ; then \  
  2163.         $(XECHO) -n "...33M ..." ; \  
  2164.         echo "#define PCI_33M" >>$(obj)include/config.h ; \  
  2165.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2166.     fi ; \  
  2167.     if [ "$(findstring _66_,$@)" ] ; then \  
  2168.         $(XECHO) -n "...66M..." ; \  
  2169.         echo "#define PCI_66M" >>$(obj)include/config.h ; \  
  2170.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2171.     fi ; \  
  2172.     if [ "$(findstring _ATM_,$@)" ] ; then \  
  2173.         $(XECHO) -n "...ATM..." ; \  
  2174.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2175.         echo "#define CONFIG_PQ_MDS_PIB_ATM 1" >>$(obj)include/config.h ; \  
  2176.     fi ;  
  2177.     @$(MKCONFIG) -a MPC832XEMDS ppc mpc83xx mpc832xemds freescale  
  2178.   
  2179. MPC8349EMDS_config: unconfig  
  2180.     @$(MKCONFIG) $(@:_config=) ppc mpc83xx mpc8349emds freescale  
  2181.   
  2182. MPC8349ITX_config \  
  2183. MPC8349ITX_LOWBOOT_config \  
  2184. MPC8349ITXGP_config:    unconfig  
  2185.     @mkdir -p $(obj)include  
  2186.     @mkdir -p $(obj)board/freescale/mpc8349itx  
  2187.     @echo "#define CONFIG_$(subst _LOWBOOT,,$(@:_config=))" >> $(obj)include/config.h  
  2188.     @if [ "$(findstring GP,$@)" ] ; then \  
  2189.         echo "TEXT_BASE = 0xFE000000" >$(obj)board/freescale/mpc8349itx/config.tmp ; \  
  2190.     fi  
  2191.     @if [ "$(findstring LOWBOOT,$@)" ] ; then \  
  2192.         echo "TEXT_BASE = 0xFE000000" >$(obj)board/freescale/mpc8349itx/config.tmp ; \  
  2193.     fi  
  2194.     @$(MKCONFIG) -a -n $(@:_config=) MPC8349ITX ppc mpc83xx mpc8349itx freescale  
  2195.   
  2196. MPC8360EMDS_config \  
  2197. MPC8360EMDS_HOST_33_config \  
  2198. MPC8360EMDS_HOST_66_config \  
  2199. MPC8360EMDS_SLAVE_config \  
  2200. MPC8360EMDS_ATM_config: unconfig  
  2201.     @mkdir -p $(obj)include  
  2202.     @if [ "$(findstring _HOST_,$@)" ] ; then \  
  2203.         $(XECHO) -n "... PCI HOST " ; \  
  2204.         echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \  
  2205.     fi ; \  
  2206.     if [ "$(findstring _SLAVE_,$@)" ] ; then \  
  2207.         $(XECHO) "...PCI SLAVE 66M"  ; \  
  2208.         echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \  
  2209.         echo "#define CONFIG_PCISLAVE" >>$(obj)include/config.h ; \  
  2210.     fi ; \  
  2211.     if [ "$(findstring _33_,$@)" ] ; then \  
  2212.         $(XECHO) -n "...33M ..." ; \  
  2213.         echo "#define PCI_33M" >>$(obj)include/config.h ; \  
  2214.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2215.     fi ; \  
  2216.     if [ "$(findstring _66_,$@)" ] ; then \  
  2217.         $(XECHO) -n "...66M..." ; \  
  2218.         echo "#define PCI_66M" >>$(obj)include/config.h ; \  
  2219.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2220.     fi ; \  
  2221.     if [ "$(findstring _ATM_,$@)" ] ; then \  
  2222.         $(XECHO) -n "...ATM..." ; \  
  2223.         echo "#define CONFIG_PQ_MDS_PIB 1" >>$(obj)include/config.h ; \  
  2224.         echo "#define CONFIG_PQ_MDS_PIB_ATM 1" >>$(obj)include/config.h ; \  
  2225.     fi ;  
  2226.     @$(MKCONFIG) -a MPC8360EMDS ppc mpc83xx mpc8360emds freescale  
  2227.   
  2228. MPC8360ERDK_33_config \  
  2229. MPC8360ERDK_66_config \  
  2230. MPC8360ERDK_config: unconfig  
  2231.     @mkdir -p $(obj)include  
  2232.     @if [ "$(findstring _33_,$@)" ] ; then \  
  2233.         $(XECHO) -n "... CLKIN 33MHz " ; \  
  2234.         echo "#define CONFIG_CLKIN_33MHZ" >>$(obj)include/config.h ;\  
  2235.     fi ;  
  2236.     @$(MKCONFIG) -a MPC8360ERDK ppc mpc83xx mpc8360erdk freescale  
  2237.   
  2238. MPC837XEMDS_config \  
  2239. MPC837XEMDS_HOST_config:    unconfig  
  2240.     @mkdir -p $(obj)include  
  2241.     @if [ "$(findstring _HOST_,$@)" ] ; then \  
  2242.         $(XECHO) -n "... PCI HOST " ; \  
  2243.         echo "#define CONFIG_PCI" >>$(obj)include/config.h ; \  
  2244.     fi ;  
  2245.     @$(MKCONFIG) -a MPC837XEMDS ppc mpc83xx mpc837xemds freescale  
  2246.   
  2247. MPC837XERDB_config: unconfig  
  2248.     @$(MKCONFIG) -a MPC837XERDB ppc mpc83xx mpc837xerdb freescale  
  2249.   
  2250. MVBLM7_config: unconfig  
  2251.     @$(MKCONFIG) $(@:_config=) ppc mpc83xx mvblm7  
  2252.   
  2253. sbc8349_config:     unconfig  
  2254.     @$(MKCONFIG) $(@:_config=) ppc mpc83xx sbc8349  
  2255.   
  2256. TQM834x_config: unconfig  
  2257.     @$(MKCONFIG) $(@:_config=) ppc mpc83xx tqm834x tqc  
  2258.   
  2259.   
  2260. #########################################################################  
  2261. ## MPC85xx Systems  
  2262. #########################################################################  
  2263.   
  2264. ATUM8548_config:    unconfig  
  2265.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx atum8548  
  2266.   
  2267. MPC8540ADS_config:  unconfig  
  2268.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8540ads freescale  
  2269.   
  2270. MPC8540EVAL_config \  
  2271. MPC8540EVAL_33_config \  
  2272. MPC8540EVAL_66_config \  
  2273. MPC8540EVAL_33_slave_config \  
  2274. MPC8540EVAL_66_slave_config:      unconfig  
  2275.     @mkdir -p $(obj)include  
  2276.     @if [ "$(findstring _33_,$@)" ] ; then \  
  2277.         $(XECHO) "... 33 MHz PCI" ; \  
  2278.     else \  
  2279.         echo "#define CONFIG_SYSCLK_66M" >>$(obj)include/config.h ; \  
  2280.         $(XECHO) "... 66 MHz PCI" ; \  
  2281.     fi ; \  
  2282.     if [ "$(findstring _slave_,$@)" ] ; then \  
  2283.         echo "#define CONFIG_PCI_SLAVE" >>$(obj)include/config.h ; \  
  2284.         $(XECHO) " slave" ; \  
  2285.     else \  
  2286.         $(XECHO) " host" ; \  
  2287.     fi  
  2288.     @$(MKCONFIG) -a MPC8540EVAL ppc mpc85xx mpc8540eval  
  2289.   
  2290. MPC8560ADS_config:  unconfig  
  2291.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8560ads freescale  
  2292.   
  2293. MPC8541CDS_legacy_config \  
  2294. MPC8541CDS_config:  unconfig  
  2295.     @mkdir -p $(obj)include  
  2296.     @if [ "$(findstring _legacy_,$@)" ] ; then \  
  2297.         echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \  
  2298.         $(XECHO) "... legacy" ; \  
  2299.     fi  
  2300.     @$(MKCONFIG) -a MPC8541CDS ppc mpc85xx mpc8541cds freescale  
  2301.   
  2302. MPC8544DS_config:   unconfig  
  2303.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8544ds freescale  
  2304.   
  2305. MPC8548CDS_legacy_config \  
  2306. MPC8548CDS_config:  unconfig  
  2307.     @mkdir -p $(obj)include  
  2308.     @if [ "$(findstring _legacy_,$@)" ] ; then \  
  2309.         echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \  
  2310.         $(XECHO) "... legacy" ; \  
  2311.     fi  
  2312.     @$(MKCONFIG) -a MPC8548CDS ppc mpc85xx mpc8548cds freescale  
  2313.   
  2314. MPC8555CDS_legacy_config \  
  2315. MPC8555CDS_config:  unconfig  
  2316.     @mkdir -p $(obj)include  
  2317.     @if [ "$(findstring _legacy_,$@)" ] ; then \  
  2318.         echo "#define CONFIG_LEGACY" >>$(obj)include/config.h ; \  
  2319.         $(XECHO) "... legacy" ; \  
  2320.     fi  
  2321.     @$(MKCONFIG) -a MPC8555CDS ppc mpc85xx mpc8555cds freescale  
  2322.   
  2323. MPC8568MDS_config:  unconfig  
  2324.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx mpc8568mds freescale  
  2325.   
  2326. PM854_config:   unconfig  
  2327.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx pm854  
  2328.   
  2329. PM856_config:   unconfig  
  2330.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx pm856  
  2331.   
  2332. sbc8540_config \  
  2333. sbc8540_33_config \  
  2334. sbc8540_66_config:  unconfig  
  2335.     @mkdir -p $(obj)include  
  2336.     @if [ "$(findstring _66_,$@)" ] ; then \  
  2337.         echo "#define CONFIG_PCI_66"    >>$(obj)include/config.h ; \  
  2338.         $(XECHO) "... 66 MHz PCI" ; \  
  2339.     else \  
  2340.         $(XECHO) "... 33 MHz PCI" ; \  
  2341.     fi  
  2342.     @$(MKCONFIG) -a SBC8540 ppc mpc85xx sbc8560  
  2343.   
  2344. sbc8548_config:     unconfig  
  2345.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx sbc8548  
  2346.   
  2347. sbc8560_config \  
  2348. sbc8560_33_config \  
  2349. sbc8560_66_config:  unconfig  
  2350.     @mkdir -p $(obj)include  
  2351.     @if [ "$(findstring _66_,$@)" ] ; then \  
  2352.         echo "#define CONFIG_PCI_66"    >>$(obj)include/config.h ; \  
  2353.         $(XECHO) "... 66 MHz PCI" ; \  
  2354.     else \  
  2355.         $(XECHO) "... 33 MHz PCI" ; \  
  2356.     fi  
  2357.     @$(MKCONFIG) -a sbc8560 ppc mpc85xx sbc8560  
  2358.   
  2359. socrates_config:    unconfig  
  2360.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx socrates  
  2361.   
  2362. stxgp3_config:      unconfig  
  2363.     @$(MKCONFIG) $(@:_config=) ppc mpc85xx stxgp3  
  2364.   
  2365. stxssa_config       \  
  2366. stxssa_4M_config:   unconfig  
  2367.     @mkdir -p $(obj)include  
  2368.     @if [ "$(findstring _4M_,$@)" ] ; then \  
  2369.         echo "#define CONFIG_STXSSA_4M" >>$(obj)include/config.h ; \  
  2370.         $(XECHO) "... with 4 MiB flash memory" ; \  
  2371.     fi  
  2372.     @$(MKCONFIG) -a stxssa ppc mpc85xx stxssa  
  2373.   
  2374. TQM8540_config      \  
  2375. TQM8541_config      \  
  2376. TQM8548_config      \  
  2377. TQM8555_config      \  
  2378. TQM8560_config:     unconfig  
  2379.     @mkdir -p $(obj)include  
  2380.     @CTYPE=$(subst TQM,,$(@:_config=)); \  
  2381.     $(XECHO) "... TQM"$${CTYPE}; \  
  2382.     echo "#define CONFIG_MPC$${CTYPE}">>$(obj)include/config.h; \  
  2383.     echo "#define CONFIG_TQM$${CTYPE}">>$(obj)include/config.h; \  
  2384.     echo "#define CONFIG_HOSTNAME tqm$${CTYPE}">>$(obj)include/config.h; \  
  2385.     echo "#define CONFIG_BOARDNAME \"TQM$${CTYPE}\"">>$(obj)include/config.h;  
  2386.     @$(MKCONFIG) -a TQM85xx ppc mpc85xx tqm85xx tqc  
  2387.   
  2388. #########################################################################  
  2389. ## MPC86xx Systems  
  2390. #########################################################################  
  2391.   
  2392. MPC8610HPCD_config: unconfig  
  2393.     @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8610hpcd freescale  
  2394.   
  2395. MPC8641HPCN_config:    unconfig  
  2396.     @$(MKCONFIG) $(@:_config=) ppc mpc86xx mpc8641hpcn freescale  
  2397.   
  2398. sbc8641d_config:    unconfig  
  2399.     @$(MKCONFIG) $(@:_config=) ppc mpc86xx sbc8641d  
  2400.   
  2401. #########################################################################  
  2402. ## 74xx/7xx Systems  
  2403. #########################################################################  
  2404.   
  2405. AmigaOneG3SE_config:    unconfig  
  2406.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx AmigaOneG3SE MAI  
  2407.   
  2408. BAB7xx_config: unconfig  
  2409.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx bab7xx eltec  
  2410.   
  2411. CPCI750_config: unconfig  
  2412.     @$(MKCONFIG) CPCI750 ppc 74xx_7xx cpci750 esd  
  2413.   
  2414. DB64360_config: unconfig  
  2415.     @$(MKCONFIG) DB64360 ppc 74xx_7xx db64360 Marvell  
  2416.   
  2417. DB64460_config: unconfig  
  2418.     @$(MKCONFIG) DB64460 ppc 74xx_7xx db64460 Marvell  
  2419.   
  2420. ELPPC_config: unconfig  
  2421.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx elppc eltec  
  2422.   
  2423. EVB64260_config \  
  2424. EVB64260_750CX_config:  unconfig  
  2425.     @$(MKCONFIG) EVB64260 ppc 74xx_7xx evb64260  
  2426.   
  2427. mpc7448hpc2_config:  unconfig  
  2428.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx mpc7448hpc2 freescale  
  2429.   
  2430. P3G4_config: unconfig  
  2431.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx evb64260  
  2432.   
  2433. p3m750_config   \  
  2434. p3m7448_config:     unconfig  
  2435.     @mkdir -p $(obj)include  
  2436.     @if [ "$(findstring 750_,$@)" ] ; then \  
  2437.         echo "#define CONFIG_P3M750" >>$(obj)include/config.h ; \  
  2438.     else \  
  2439.         echo "#define CONFIG_P3M7448" >>$(obj)include/config.h ; \  
  2440.     fi  
  2441.     @$(MKCONFIG) -a p3mx ppc 74xx_7xx p3mx prodrive  
  2442.   
  2443. PCIPPC2_config \  
  2444. PCIPPC6_config: unconfig  
  2445.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx pcippc2  
  2446.   
  2447. ppmc7xx_config: unconfig  
  2448.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx ppmc7xx  
  2449.   
  2450. ZUMA_config:    unconfig  
  2451.     @$(MKCONFIG) $(@:_config=) ppc 74xx_7xx evb64260  
  2452.   
  2453. #========================================================================  
  2454. # ARM  
  2455. #========================================================================  
  2456. #########################################################################  
  2457. ## StrongARM Systems  
  2458. #########################################################################  
  2459.   
  2460. assabet_config  :   unconfig  
  2461.     @$(MKCONFIG) $(@:_config=) arm sa1100 assabet  
  2462.   
  2463. dnp1110_config  :   unconfig  
  2464.     @$(MKCONFIG) $(@:_config=) arm sa1100 dnp1110  
  2465.   
  2466. gcplus_config   :   unconfig  
  2467.     @$(MKCONFIG) $(@:_config=) arm sa1100 gcplus  
  2468.   
  2469. lart_config :   unconfig  
  2470.     @$(MKCONFIG) $(@:_config=) arm sa1100 lart  
  2471.   
  2472. shannon_config  :   unconfig  
  2473.     @$(MKCONFIG) $(@:_config=) arm sa1100 shannon  
  2474.   
  2475. #########################################################################  
  2476. ## ARM92xT Systems  
  2477. #########################################################################  
  2478.   
  2479. #########################################################################  
  2480. ## Atmel AT91RM9200 Systems  
  2481. #########################################################################  
  2482.   
  2483. at91rm9200dk_config :   unconfig  
  2484.     @$(MKCONFIG) $(@:_config=) arm arm920t at91rm9200dk atmel at91rm9200  
  2485.   
  2486. at91sam9261ek_config    :   unconfig  
  2487.     @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9261ek atmel at91sam9  
  2488.   
  2489. at91sam9263ek_config    :   unconfig  
  2490.     @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9263ek atmel at91sam9  
  2491.   
  2492. at91sam9rlek_config :   unconfig  
  2493.     @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9rlek atmel at91sam9  
  2494.   
  2495. cmc_pu2_config  :   unconfig  
  2496.     @$(MKCONFIG) $(@:_config=) arm arm920t cmc_pu2 NULL at91rm9200  
  2497.   
  2498. csb637_config   :   unconfig  
  2499.     @$(MKCONFIG) $(@:_config=) arm arm920t csb637 NULL at91rm9200  
  2500.   
  2501. kb9202_config   :   unconfig  
  2502.     @$(MKCONFIG) $(@:_config=) arm arm920t kb9202 NULL at91rm9200  
  2503.   
  2504. m501sk_config   :   unconfig  
  2505.     @$(MKCONFIG) $(@:_config=) arm arm920t m501sk NULL at91rm9200  
  2506.   
  2507. mp2usb_config   :   unconfig  
  2508.     @$(MKCONFIG) $(@:_config=) arm arm920t mp2usb NULL at91rm9200  
  2509.   
  2510. #########################################################################  
  2511. ## Atmel ARM926EJ-S Systems  
  2512. #########################################################################  
  2513.   
  2514. at91cap9adk_config  :   unconfig  
  2515.     @$(MKCONFIG) $(@:_config=) arm arm926ejs at91cap9adk atmel at91sam9  
  2516.   
  2517. at91sam9260ek_config    :   unconfig  
  2518.     @$(MKCONFIG) $(@:_config=) arm arm926ejs at91sam9260ek atmel at91sam9  
  2519.   
  2520. ########################################################################  
  2521. ## ARM Integrator boards - see doc/README-integrator for more info.  
  2522. integratorap_config \  
  2523. ap_config       \  
  2524. ap966_config        \  
  2525. ap922_config        \  
  2526. ap922_XA10_config   \  
  2527. ap7_config      \  
  2528. ap720t_config       \  
  2529. ap920t_config       \  
  2530. ap926ejs_config     \  
  2531. ap946es_config: unconfig  
  2532.     @board/integratorap/split_by_variant.sh $@  
  2533.   
  2534. integratorcp_config \  
  2535. cp_config       \  
  2536. cp920t_config       \  
  2537. cp926ejs_config     \  
  2538. cp946es_config      \  
  2539. cp1136_config       \  
  2540. cp966_config        \  
  2541. cp922_config        \  
  2542. cp922_XA10_config   \  
  2543. cp1026_config: unconfig  
  2544.     @board/integratorcp/split_by_variant.sh $@  
  2545.   
  2546. davinci_dvevm_config :  unconfig  
  2547.     @$(MKCONFIG) $(@:_config=) arm arm926ejs dv-evm davinci davinci  
  2548.   
  2549. davinci_schmoogie_config :  unconfig  
  2550.     @$(MKCONFIG) $(@:_config=) arm arm926ejs schmoogie davinci davinci  
  2551.   
  2552. davinci_sffsdr_config : unconfig  
  2553.     @$(MKCONFIG) $(@:_config=) arm arm926ejs sffsdr davinci davinci  
  2554.   
  2555. davinci_sonata_config : unconfig  
  2556.     @$(MKCONFIG) $(@:_config=) arm arm926ejs sonata davinci davinci  
  2557.   
  2558. lpd7a400_config \  
  2559. lpd7a404_config:    unconfig  
  2560.     @$(MKCONFIG) $(@:_config=) arm lh7a40x lpd7a40x  
  2561.   
  2562. mx1ads_config   :   unconfig  
  2563.     @$(MKCONFIG) $(@:_config=) arm arm920t mx1ads NULL imx  
  2564.   
  2565. mx1fs2_config   :   unconfig  
  2566.     @$(MKCONFIG) $(@:_config=) arm arm920t mx1fs2 NULL imx  
  2567.   
  2568. netstar_config:     unconfig  
  2569.     @$(MKCONFIG) $(@:_config=) arm arm925t netstar  
  2570.   
  2571. omap1510inn_config :    unconfig  
  2572.     @$(MKCONFIG) $(@:_config=) arm arm925t omap1510inn  
  2573.   
  2574. xtract_omap1610xxx = $(subst _cs0boot,,$(subst _cs3boot,,$(subst _cs_autoboot,,$(subst _config,,$1))))  
  2575.   
  2576. omap1610inn_config \  
  2577. omap1610inn_cs0boot_config \  
  2578. omap1610inn_cs3boot_config \  
  2579. omap1610inn_cs_autoboot_config \  
  2580. omap1610h2_config \  
  2581. omap1610h2_cs0boot_config \  
  2582. omap1610h2_cs3boot_config \  
  2583. omap1610h2_cs_autoboot_config:  unconfig  
  2584.     @mkdir -p $(obj)include  
  2585.     @if [ "$(findstring _cs0boot_, $@)" ] ; then \  
  2586.         echo "#define CONFIG_CS0_BOOT" >> .$(obj)include/config.h ; \  
  2587.         $(XECHO) "... configured for CS0 boot"; \  
  2588.     elif [ "$(findstring _cs_autoboot_, $@)" ] ; then \  
  2589.         echo "#define CONFIG_CS_AUTOBOOT" >> $(obj)include/config.h ; \  
  2590.         $(XECHO) "... configured for CS_AUTO boot"; \  
  2591.     else \  
  2592.         echo "#define CONFIG_CS3_BOOT" >> $(obj)include/config.h ; \  
  2593.         $(XECHO) "... configured for CS3 boot"; \  
  2594.     fi;  
  2595.     @$(MKCONFIG) -a $(call xtract_omap1610xxx,$@) arm arm926ejs omap1610inn NULL omap  
  2596.   
  2597. omap5912osk_config :    unconfig  
  2598.     @$(MKCONFIG) $(@:_config=) arm arm926ejs omap5912osk NULL omap  
  2599.   
  2600. xtract_omap730p2 = $(subst _cs0boot,,$(subst _cs3boot,, $(subst _config,,$1)))  
  2601.   
  2602. omap730p2_config \  
  2603. omap730p2_cs0boot_config \  
  2604. omap730p2_cs3boot_config :  unconfig  
  2605.     @mkdir -p $(obj)include  
  2606.     @if [ "$(findstring _cs0boot_, $@)" ] ; then \  
  2607.         echo "#define CONFIG_CS0_BOOT" >> $(obj)include/config.h ; \  
  2608.         $(XECHO) "... configured for CS0 boot"; \  
  2609.     else \  
  2610.         echo "#define CONFIG_CS3_BOOT" >> $(obj)include/config.h ; \  
  2611.         $(XECHO) "... configured for CS3 boot"; \  
  2612.     fi;  
  2613.     @$(MKCONFIG) -a $(call xtract_omap730p2,$@) arm arm926ejs omap730p2 NULL omap  
  2614.   
  2615. sbc2410x_config: unconfig  
  2616.     @$(MKCONFIG) $(@:_config=) arm arm920t sbc2410x NULL s3c24x0  
  2617.   
  2618. scb9328_config  :   unconfig  
  2619.     @$(MKCONFIG) $(@:_config=) arm arm920t scb9328 NULL imx  
  2620.   
  2621. smdk2400_config :   unconfig  
  2622.     @$(MKCONFIG) $(@:_config=) arm arm920t smdk2400 NULL s3c24x0  
  2623.   
  2624. smdk2410_config :   unconfig  
  2625.     @$(MKCONFIG) $(@:_config=) arm arm920t smdk2410 NULL s3c24x0  
  2626.   
  2627. tabla_config    :   unconfig  
  2628.     @$(MKCONFIG) $(@:_config=) arm s3c64xx tabla samsung mdirac3  
  2629.   
  2630. smdk6400_config :   unconfig  
  2631.     @$(MKCONFIG) $(@:_config=) arm s3c64xx smdk6400 samsung s3c6400   
  2632.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6400/config.mk  
  2633.   
  2634. smdk6410_config :   unconfig  
  2635.     @$(MKCONFIG) $(@:_config=) arm s3c64xx smdk6410 samsung s3c6410   
  2636.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6410/config.mk  
  2637.   
  2638. smdk6430_config :       unconfig  
  2639.     @$(MKCONFIG) $(@:_config=) arm s3c64xx smdk6430 samsung s3c6430  
  2640.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6430/config.mk  
  2641.   
  2642. smdk2450_config :       unconfig  
  2643.     @$(MKCONFIG) $(@:_config=) arm s3c24xx smdk2450 samsung s3c2450  
  2644.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk2450/config.mk  
  2645.   
  2646. smdk2416_config :       unconfig      
  2647.     @$(MKCONFIG) $(@:_config=) arm s3c24xx smdk2416 samsung s3c2416  
  2648.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk2416/config.mk  
  2649.   
  2650. smdk_mp_config  :   unconfig  
  2651.     @$(MKCONFIG) $(@:_config=) arm s3c64xx-mp smdk_mp samsung s3c64xx-mp  
  2652.   
  2653. smdkc100_config :   unconfig  
  2654.     @$(MKCONFIG) $(@:_config=) arm s5pc1xx smdkc100 samsung s5pc100  
  2655.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdkc100/config.mk  
  2656.   
  2657. smdkc100_256_config :   unconfig  
  2658.     @$(MKCONFIG) $(@:_config=) arm s5pc1xx smdkc100 samsung s5pc100  
  2659.     @echo "TEXT_BASE = 0xcfe00000" > $(obj)board/samsung/smdkc100/config.mk  
  2660.   
  2661. smdkc110ac_config : unconfig  
  2662.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2663.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2664.   
  2665. smdkc110h_config :  unconfig  
  2666.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2667.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2668.   
  2669. smdkc110b_config :  unconfig  
  2670.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2671.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk    
  2672.   
  2673. smdkc110d_config :  unconfig  
  2674.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2675.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk    
  2676.   
  2677. smdkc110_mtd_config :   unconfig  
  2678.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2679.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2680. #   @echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk  
  2681.   
  2682. smdkc110d_mtd_config :  unconfig  
  2683.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2684.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2685. #   @echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk  
  2686.   
  2687. smdkc110_ubi_config :   unconfig  
  2688.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2689.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2690.   
  2691. smdkv210single_config : unconfig  
  2692.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2693.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2694.   
  2695. gec210_nand_config :    unconfig  
  2696.     @$(MKCONFIG) $(@:_config=) arm s5pc11x gec210 samsung s5pc110  
  2697.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/gec210/config.mk  
  2698.   
  2699. #########################################################################    
  2700. # 当make TQ210_config的时候,下面的伪目标%_config会被执行,先删除上次的配置文件    
  2701. # @$(MKCONFIG)就是执行mkconfig脚本,传入的参数为$(@:_config=),  
  2702. # 就是把@中的"_config"替换为空$@ = %_config = TQ210_config    
  2703. # $(@:_config=) = arm s5pv210 TQ210 samsung s5pv210    
  2704. # $@:表示规则的目标文件名  $<:表示规则的第一个依赖文件名  
  2705.   
  2706. TQ210_config :  unconfig  
  2707.     @$(MKCONFIG) $(@:_config=) arm s5pv210 TQ210 samsung s5pv210  
  2708.     @echo "TEXT_BASE = 0x23e00000" > $(obj)board/samsung/TQ210/config.mk  
  2709.   
  2710.   
  2711. smdkv210single_ubi_config : unconfig  
  2712.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2713.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2714.   
  2715. smdkv210vogue_config :  unconfig  
  2716.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2717.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2718.   
  2719. smdkv210onenand_config : unconfig  
  2720.     @$(MKCONFIG) $(@:_config=) arm s5pc11x smdkc110 samsung s5pc110  
  2721.     @echo "TEXT_BASE = 0xc3e00000" > $(obj)board/samsung/smdkc110/config.mk  
  2722. #   @echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk  
  2723.   
  2724. smdk6440_config :   unconfig  
  2725.     @$(MKCONFIG) $(@:_config=) arm s5p64xx smdk6440 samsung s5p6440  
  2726.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6440/config.mk  
  2727.   
  2728. smdk6442_config :   unconfig  
  2729.     @$(MKCONFIG) $(@:_config=) arm s5p644x smdk6442 samsung s5p6442  
  2730.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6442/config.mk  
  2731.   
  2732. smdk6442c_config :  unconfig  
  2733.     @$(MKCONFIG) $(@:_config=) arm s5p644x smdk6442 samsung s5p6442  
  2734.     @echo "TEXT_BASE = 0xc7e00000" > $(obj)board/samsung/smdk6442/config.mk  
  2735.   
  2736. SX1_config :        unconfig  
  2737.     @$(MKCONFIG) $(@:_config=) arm arm925t sx1  
  2738.   
  2739. # TRAB default configuration:   8 MB Flash, 32 MB RAM  
  2740. xtract_trab = $(subst _bigram,,$(subst _bigflash,,$(subst _old,,$(subst _config,,$1))))  
  2741.   
  2742. trab_config \  
  2743. trab_bigram_config \  
  2744. trab_bigflash_config \  
  2745. trab_old_config:    unconfig  
  2746.     @mkdir -p $(obj)include  
  2747.     @mkdir -p $(obj)board/trab  
  2748.     @[ -z "$(findstring _bigram,$@)" ] || \  
  2749.         { echo "#define CONFIG_FLASH_8MB"  >>$(obj)include/config.h ; \  
  2750.           echo "#define CONFIG_RAM_32MB"   >>$(obj)include/config.h ; \  
  2751.           $(XECHO) "... with 8 MB Flash, 32 MB RAM" ; \  
  2752.         }  
  2753.     @[ -z "$(findstring _bigflash,$@)" ] || \  
  2754.         { echo "#define CONFIG_FLASH_16MB" >>$(obj)include/config.h ; \  
  2755.           echo "#define CONFIG_RAM_16MB"   >>$(obj)include/config.h ; \  
  2756.           $(XECHO) "... with 16 MB Flash, 16 MB RAM" ; \  
  2757.           echo "TEXT_BASE = 0x0CF40000" >$(obj)board/trab/config.tmp ; \  
  2758.         }  
  2759.     @[ -z "$(findstring _old,$@)" ] || \  
  2760.         { echo "#define CONFIG_FLASH_8MB"  >>$(obj)include/config.h ; \  
  2761.           echo "#define CONFIG_RAM_16MB"   >>$(obj)include/config.h ; \  
  2762.           $(XECHO) "... with 8 MB Flash, 16 MB RAM" ; \  
  2763.           echo "TEXT_BASE = 0x0CF40000" >$(obj)board/trab/config.tmp ; \  
  2764.         }  
  2765.     @$(MKCONFIG) -a $(call xtract_trab,$@) arm arm920t trab NULL s3c24x0  
  2766.   
  2767. VCMA9_config    :   unconfig  
  2768.     @$(MKCONFIG) $(@:_config=) arm arm920t vcma9 mpl s3c24x0  
  2769.   
  2770. #########################################################################  
  2771. # ARM supplied Versatile development boards  
  2772. #########################################################################  
  2773.   
  2774. cm4008_config   :   unconfig  
  2775.     @$(MKCONFIG) $(@:_config=) arm arm920t cm4008 NULL ks8695  
  2776.   
  2777. cm41xx_config   :   unconfig  
  2778.     @$(MKCONFIG) $(@:_config=) arm arm920t cm41xx NULL ks8695  
  2779.   
  2780. versatile_config    \  
  2781. versatileab_config  \  
  2782. versatilepb_config :    unconfig  
  2783.     @board/versatile/split_by_variant.sh $@  
  2784.   
  2785. voiceblue_config:   unconfig  
  2786.     @$(MKCONFIG) $(@:_config=) arm arm925t voiceblue  
  2787.   
  2788. #########################################################################  
  2789. ## S3C44B0 Systems  
  2790. #########################################################################  
  2791.   
  2792. B2_config   :   unconfig  
  2793.     @$(MKCONFIG) $(@:_config=) arm s3c44b0 B2 dave  
  2794.   
  2795. #########################################################################  
  2796. ## ARM720T Systems  
  2797. #########################################################################  
  2798.   
  2799. armadillo_config:   unconfig  
  2800.     @$(MKCONFIG) $(@:_config=) arm arm720t armadillo  
  2801.   
  2802. ep7312_config   :   unconfig  
  2803.     @$(MKCONFIG) $(@:_config=) arm arm720t ep7312  
  2804.   
  2805. impa7_config    :   unconfig  
  2806.     @$(MKCONFIG) $(@:_config=) arm arm720t impa7  
  2807.   
  2808. modnet50_config :   unconfig  
  2809.     @$(MKCONFIG) $(@:_config=) arm arm720t modnet50  
  2810.   
  2811. evb4510_config :    unconfig  
  2812.     @$(MKCONFIG) $(@:_config=) arm arm720t evb4510  
  2813.   
  2814. lpc2292sodimm_config:   unconfig  
  2815.     @$(MKCONFIG) $(@:_config=) arm arm720t lpc2292sodimm NULL lpc2292  
  2816.   
  2817. SMN42_config    :   unconfig  
  2818.     @$(MKCONFIG) $(@:_config=) arm arm720t SMN42 siemens lpc2292  
  2819.   
  2820. #########################################################################  
  2821. ## XScale Systems  
  2822. #########################################################################  
  2823.   
  2824. actux1_config   :   unconfig  
  2825.     @$(MKCONFIG) $(@:_config=) arm ixp actux1  
  2826.   
  2827. actux2_config   :   unconfig  
  2828.     @$(MKCONFIG) $(@:_config=) arm ixp actux2  
  2829.   
  2830. actux3_config   :   unconfig  
  2831.     @$(MKCONFIG) $(@:_config=) arm ixp actux3  
  2832.   
  2833. actux4_config   :   unconfig  
  2834.     @$(MKCONFIG) $(@:_config=) arm ixp actux4  
  2835.   
  2836. cerf250_config :    unconfig  
  2837.     @$(MKCONFIG) $(@:_config=) arm pxa cerf250  
  2838.   
  2839. cradle_config   :   unconfig  
  2840.     @$(MKCONFIG) $(@:_config=) arm pxa cradle  
  2841.   
  2842. csb226_config   :   unconfig  
  2843.     @$(MKCONFIG) $(@:_config=) arm pxa csb226  
  2844.   
  2845. delta_config :  unconfig  
  2846.     @$(MKCONFIG) $(@:_config=) arm pxa delta  
  2847.   
  2848. innokom_config  :   unconfig  
  2849.     @$(MKCONFIG) $(@:_config=) arm pxa innokom  
  2850.   
  2851. ixdp425_config  :   unconfig  
  2852.     @$(MKCONFIG) $(@:_config=) arm ixp ixdp425  
  2853.   
  2854. ixdpg425_config :   unconfig  
  2855.     @$(MKCONFIG) $(@:_config=) arm ixp ixdp425  
  2856.   
  2857. lubbock_config  :   unconfig  
  2858.     @$(MKCONFIG) $(@:_config=) arm pxa lubbock  
  2859.   
  2860. pleb2_config    :   unconfig  
  2861.     @$(MKCONFIG) $(@:_config=) arm pxa pleb2  
  2862.   
  2863. logodl_config   :   unconfig  
  2864.     @$(MKCONFIG) $(@:_config=) arm pxa logodl  
  2865.   
  2866. pdnb3_config \  
  2867. scpu_config:    unconfig  
  2868.     @mkdir -p $(obj)include  
  2869.     @if [ "$(findstring scpu_,$@)" ] ; then \  
  2870.         echo "#define CONFIG_SCPU"  >>$(obj)include/config.h ; \  
  2871.         $(XECHO) "... on SCPU board variant" ; \  
  2872.     fi  
  2873.     @$(MKCONFIG) -a pdnb3 arm ixp pdnb3 prodrive  
  2874.   
  2875. pxa255_idp_config:  unconfig  
  2876.     @$(MKCONFIG) $(@:_config=) arm pxa pxa255_idp  
  2877.   
  2878. trizepsiv_config    :   unconfig  
  2879.     @$(MKCONFIG) $(@:_config=) arm pxa trizepsiv  
  2880.   
  2881. wepep250_config :   unconfig  
  2882.     @$(MKCONFIG) $(@:_config=) arm pxa wepep250  
  2883.   
  2884. xaeniax_config  :   unconfig  
  2885.     @$(MKCONFIG) $(@:_config=) arm pxa xaeniax  
  2886.   
  2887. xm250_config    :   unconfig  
  2888.     @$(MKCONFIG) $(@:_config=) arm pxa xm250  
  2889.   
  2890. xsengine_config :   unconfig  
  2891.     @$(MKCONFIG) $(@:_config=) arm pxa xsengine  
  2892.   
  2893. zylonite_config :  
  2894.     @$(MKCONFIG) $(@:_config=) arm pxa zylonite  
  2895.   
  2896. #########################################################################  
  2897. ## ARM1136 Systems  
  2898. #########################################################################  
  2899.   
  2900. apollon_config      : unconfig  
  2901.     @mkdir -p $(obj)include  
  2902.     @mkdir -p $(obj)onenand_ipl/board/apollon  
  2903.     @echo "#define CONFIG_ONENAND_U_BOOT" > $(obj)include/config.h  
  2904.     @$(MKCONFIG) $(@:_config=) arm arm1136 apollon NULL omap24xx  
  2905.     @echo "CONFIG_ONENAND_U_BOOT = y" >> $(obj)include/config.mk  
  2906.   
  2907. imx31_litekit_config    : unconfig  
  2908.     @$(MKCONFIG) $(@:_config=) arm arm1136 imx31_litekit NULL mx31  
  2909.   
  2910. imx31_phycore_config    : unconfig  
  2911.     @$(MKCONFIG) $(@:_config=) arm arm1136 imx31_phycore NULL mx31  
  2912.   
  2913. mx31ads_config      : unconfig  
  2914.     @$(MKCONFIG) $(@:_config=) arm arm1136 mx31ads NULL mx31  
  2915.   
  2916. omap2420h4_config   : unconfig  
  2917.     @$(MKCONFIG) $(@:_config=) arm arm1136 omap2420h4 NULL omap24xx  
  2918.   
  2919. #========================================================================  
  2920. # i386  
  2921. #========================================================================  
  2922. #########################################################################  
  2923. ## AMD SC520 CDP  
  2924. #########################################################################  
  2925. sc520_cdp_config    :   unconfig  
  2926.     @$(MKCONFIG) $(@:_config=) i386 i386 sc520_cdp  
  2927.   
  2928. sc520_spunk_config  :   unconfig  
  2929.     @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk  
  2930.   
  2931. sc520_spunk_rel_config  :   unconfig  
  2932.     @$(MKCONFIG) $(@:_config=) i386 i386 sc520_spunk  
  2933.   
  2934. #========================================================================  
  2935. # MIPS  
  2936. #========================================================================  
  2937. #########################################################################  
  2938. ## MIPS32 4Kc  
  2939. #########################################################################  
  2940.   
  2941. xtract_incaip = $(subst _100MHz,,$(subst _133MHz,,$(subst _150MHz,,$(subst _config,,$1))))  
  2942.   
  2943. incaip_100MHz_config    \  
  2944. incaip_133MHz_config    \  
  2945. incaip_150MHz_config    \  
  2946. incaip_config: unconfig  
  2947.     @mkdir -p $(obj)include  
  2948.     @[ -z "$(findstring _100MHz,$@)" ] || \  
  2949.         { echo "#define CPU_CLOCK_RATE 100000000" >>$(obj)include/config.h ; \  
  2950.           $(XECHO) "... with 100MHz system clock" ; \  
  2951.         }  
  2952.     @[ -z "$(findstring _133MHz,$@)" ] || \  
  2953.         { echo "#define CPU_CLOCK_RATE 133000000" >>$(obj)include/config.h ; \  
  2954.           $(XECHO) "... with 133MHz system clock" ; \  
  2955.         }  
  2956.     @[ -z "$(findstring _150MHz,$@)" ] || \  
  2957.         { echo "#define CPU_CLOCK_RATE 150000000" >>$(obj)include/config.h ; \  
  2958.           $(XECHO) "... with 150MHz system clock" ; \  
  2959.         }  
  2960.     @$(MKCONFIG) -a $(call xtract_incaip,$@) mips mips incaip  
  2961.   
  2962. tb0229_config: unconfig  
  2963.     @$(MKCONFIG) $(@:_config=) mips mips tb0229  
  2964.   
  2965. #########################################################################  
  2966. ## MIPS32 AU1X00  
  2967. #########################################################################  
  2968.   
  2969. dbau1000_config     :   unconfig  
  2970.     @mkdir -p $(obj)include  
  2971.     @echo "#define CONFIG_DBAU1000 1" >$(obj)include/config.h  
  2972.     @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00  
  2973.   
  2974. dbau1100_config     :   unconfig  
  2975.     @mkdir -p $(obj)include  
  2976.     @echo "#define CONFIG_DBAU1100 1" >$(obj)include/config.h  
  2977.     @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00  
  2978.   
  2979. dbau1500_config     :   unconfig  
  2980.     @mkdir -p $(obj)include  
  2981.     @echo "#define CONFIG_DBAU1500 1" >$(obj)include/config.h  
  2982.     @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00  
  2983.   
  2984. dbau1550_config     :   unconfig  
  2985.     @mkdir -p $(obj)include  
  2986.     @echo "#define CONFIG_DBAU1550 1" >$(obj)include/config.h  
  2987.     @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00  
  2988.   
  2989. dbau1550_el_config  :   unconfig  
  2990.     @mkdir -p $(obj)include  
  2991.     @echo "#define CONFIG_DBAU1550 1" >$(obj)include/config.h  
  2992.     @$(MKCONFIG) -a dbau1x00 mips mips dbau1x00  
  2993.   
  2994. gth2_config     :   unconfig  
  2995.     @mkdir -p $(obj)include  
  2996.     @echo "#define CONFIG_GTH2 1" >$(obj)include/config.h  
  2997.     @$(MKCONFIG) -a gth2 mips mips gth2  
  2998.   
  2999. pb1000_config       :   unconfig  
  3000.     @mkdir -p $(obj)include  
  3001.     @echo "#define CONFIG_PB1000 1" >$(obj)include/config.h  
  3002.     @$(MKCONFIG) -a pb1x00 mips mips pb1x00  
  3003.   
  3004. qemu_mips_config    : unconfig  
  3005.     @mkdir -p $(obj)include  
  3006.     @echo "#define CONFIG_QEMU_MIPS 1" >$(obj)include/config.h  
  3007.     @$(MKCONFIG) -a qemu-mips mips mips qemu-mips  
  3008.   
  3009. #########################################################################  
  3010. ## MIPS64 5Kc  
  3011. #########################################################################  
  3012.   
  3013. purple_config :     unconfig  
  3014.     @$(MKCONFIG) $(@:_config=) mips mips purple  
  3015.   
  3016. #========================================================================  
  3017. # Nios  
  3018. #========================================================================  
  3019. #########################################################################  
  3020. ## Nios32  
  3021. #########################################################################  
  3022.   
  3023. ADNPESC1_DNPEVA2_base_32_config \  
  3024. ADNPESC1_base_32_config     \  
  3025. ADNPESC1_config: unconfig  
  3026.     @mkdir -p $(obj)include  
  3027.     @[ -z "$(findstring _DNPEVA2,$@)" ] || \  
  3028.         { echo "#define CONFIG_DNPEVA2 1" >>$(obj)include/config.h ; \  
  3029.           $(XECHO) "... DNP/EVA2 configuration" ; \  
  3030.         }  
  3031.     @[ -z "$(findstring _base_32,$@)" ] || \  
  3032.         { echo "#define CONFIG_NIOS_BASE_32 1" >>$(obj)include/config.h ; \  
  3033.           $(XECHO) "... NIOS 'base_32' configuration" ; \  
  3034.         }  
  3035.     @[ -z "$(findstring ADNPESC1_config,$@)" ] || \  
  3036.         { echo "#define CONFIG_NIOS_BASE_32 1" >>$(obj)include/config.h ; \  
  3037.           $(XECHO) "... NIOS 'base_32' configuration (DEFAULT)" ; \  
  3038.         }  
  3039.     @$(MKCONFIG) -a ADNPESC1 nios nios adnpesc1 ssv  
  3040.   
  3041. DK1C20_safe_32_config       \  
  3042. DK1C20_standard_32_config   \  
  3043. DK1C20_config:  unconfig  
  3044.     @mkdir -p $(obj)include  
  3045.     @[ -z "$(findstring _safe_32,$@)" ] || \  
  3046.         { echo "#define CONFIG_NIOS_SAFE_32 1" >>$(obj)include/config.h ; \  
  3047.           $(XECHO) "... NIOS 'safe_32' configuration" ; \  
  3048.         }  
  3049.     @[ -z "$(findstring _standard_32,$@)" ] || \  
  3050.         { echo "#define CONFIG_NIOS_STANDARD_32 1" >>$(obj)include/config.h ; \  
  3051.           $(XECHO) "... NIOS 'standard_32' configuration" ; \  
  3052.         }  
  3053.     @[ -z "$(findstring DK1C20_config,$@)" ] || \  
  3054.         { echo "#define CONFIG_NIOS_STANDARD_32 1" >>$(obj)include/config.h ; \  
  3055.           $(XECHO) "... NIOS 'standard_32' configuration (DEFAULT)" ; \  
  3056.         }  
  3057.     @$(MKCONFIG) -a DK1C20 nios nios dk1c20 altera  
  3058.   
  3059. DK1S10_safe_32_config       \  
  3060. DK1S10_standard_32_config   \  
  3061. DK1S10_mtx_ldk_20_config    \  
  3062. DK1S10_config:  unconfig  
  3063.     @mkdir -p $(obj)include  
  3064.     @[ -z "$(findstring _safe_32,$@)" ] || \  
  3065.         { echo "#define CONFIG_NIOS_SAFE_32 1" >>$(obj)include/config.h ; \  
  3066.           $(XECHO) "... NIOS 'safe_32' configuration" ; \  
  3067.         }  
  3068.     @[ -z "$(findstring _standard_32,$@)" ] || \  
  3069.         { echo "#define CONFIG_NIOS_STANDARD_32 1" >>$(obj)include/config.h ; \  
  3070.           $(XECHO) "... NIOS 'standard_32' configuration" ; \  
  3071.         }  
  3072.     @[ -z "$(findstring _mtx_ldk_20,$@)" ] || \  
  3073.         { echo "#define CONFIG_NIOS_MTX_LDK_20 1" >>$(obj)include/config.h ; \  
  3074.           $(XECHO) "... NIOS 'mtx_ldk_20' configuration" ; \  
  3075.         }  
  3076.     @[ -z "$(findstring DK1S10_config,$@)" ] || \  
  3077.         { echo "#define CONFIG_NIOS_STANDARD_32 1" >>$(obj)include/config.h ; \  
  3078.           $(XECHO) "... NIOS 'standard_32' configuration (DEFAULT)" ; \  
  3079.         }  
  3080.     @$(MKCONFIG) -a DK1S10 nios nios dk1s10 altera  
  3081.   
  3082. #########################################################################  
  3083. ## Nios-II  
  3084. #########################################################################  
  3085.   
  3086. EP1C20_config : unconfig  
  3087.     @$(MKCONFIG)  EP1C20 nios2 nios2 ep1c20 altera  
  3088.   
  3089. EP1S10_config : unconfig  
  3090.     @$(MKCONFIG)  EP1S10 nios2 nios2 ep1s10 altera  
  3091.   
  3092. EP1S40_config : unconfig  
  3093.     @$(MKCONFIG)  EP1S40 nios2 nios2 ep1s40 altera  
  3094.   
  3095. PK1C20_config : unconfig  
  3096.     @$(MKCONFIG)  PK1C20 nios2 nios2 pk1c20 psyent  
  3097.   
  3098. PCI5441_config : unconfig  
  3099.     @$(MKCONFIG)  PCI5441 nios2 nios2 pci5441 psyent  
  3100.   
  3101. #========================================================================  
  3102. ## Microblaze  
  3103. #========================================================================  
  3104.   
  3105. ml401_config:   unconfig  
  3106.     @mkdir -p $(obj)include  
  3107.     @echo "#define CONFIG_ML401 1" > $(obj)include/config.h  
  3108.     @$(MKCONFIG) -a $(@:_config=) microblaze microblaze ml401 xilinx  
  3109.   
  3110. suzaku_config:  unconfig  
  3111.     @mkdir -p $(obj)include  
  3112.     @echo "#define CONFIG_SUZAKU 1" > $(obj)include/config.h  
  3113.     @$(MKCONFIG) -a $(@:_config=) microblaze microblaze suzaku AtmarkTechno  
  3114.   
  3115. xupv2p_config:  unconfig  
  3116.     @mkdir -p $(obj)include  
  3117.     @echo "#define CONFIG_XUPV2P 1" > $(obj)include/config.h  
  3118.     @$(MKCONFIG) -a $(@:_config=) microblaze microblaze xupv2p xilinx  
  3119.   
  3120. #========================================================================  
  3121. # Blackfin  
  3122. #========================================================================  
  3123.   
  3124. # Analog Devices boards  
  3125. BFIN_BOARDS = bf533-ezkit bf533-stamp bf537-stamp bf561-ezkit  
  3126.   
  3127. $(BFIN_BOARDS:%=%_config)   : unconfig  
  3128.     @$(MKCONFIG) $(@:_config=) blackfin blackfin $(@:_config=)  
  3129.   
  3130. $(BFIN_BOARDS):  
  3131.     $(MAKE) $@_config  
  3132.     $(MAKE)  
  3133.   
  3134. #========================================================================  
  3135. # AVR32  
  3136. #========================================================================  
  3137.   
  3138. atngw100_config :   unconfig  
  3139.     @$(MKCONFIG) $(@:_config=) avr32 at32ap atngw100 atmel at32ap700x  
  3140.   
  3141. atstk1002_config    :   unconfig  
  3142.     @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap700x  
  3143.   
  3144. atstk1003_config    :   unconfig  
  3145.     @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap700x  
  3146.   
  3147. atstk1004_config    :   unconfig  
  3148.     @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap700x  
  3149.   
  3150. atstk1006_config    :   unconfig  
  3151.     @$(MKCONFIG) $(@:_config=) avr32 at32ap atstk1000 atmel at32ap700x  
  3152.   
  3153. #========================================================================  
  3154. # SH3 (SuperH)  
  3155. #========================================================================  
  3156.   
  3157. #########################################################################  
  3158. ## sh3 (Renesas SuperH)  
  3159. #########################################################################  
  3160.   
  3161. mpr2_config: unconfig  
  3162.     @mkdir -p $(obj)include  
  3163.     @echo "#define CONFIG_MPR2 1" > $(obj)include/config.h  
  3164.     @$(MKCONFIG) -a $(@:_config=) sh sh3 mpr2  
  3165.   
  3166. ms7720se_config: unconfig  
  3167.     @mkdir -p $(obj)include  
  3168.     @echo "#define CONFIG_MS7720SE 1" > $(obj)include/config.h  
  3169.     @$(MKCONFIG) -a $(@:_config=) sh sh3 ms7720se  
  3170.   
  3171. #########################################################################  
  3172. ## sh4 (Renesas SuperH)  
  3173. #########################################################################  
  3174.   
  3175. MigoR_config :       unconfig  
  3176.     @mkdir -p $(obj)include  
  3177.     @echo "#define CONFIG_MIGO_R 1" > $(obj)include/config.h  
  3178.     @./mkconfig -a $(@:_config=) sh sh4 MigoR  
  3179.   
  3180. ms7750se_config: unconfig  
  3181.     @mkdir -p $(obj)include  
  3182.     @echo "#define CONFIG_MS7750SE 1" > $(obj)include/config.h  
  3183.     @$(MKCONFIG) -a $(@:_config=) sh sh4 ms7750se  
  3184.   
  3185. ms7722se_config :   unconfig  
  3186.     @mkdir -p $(obj)include  
  3187.     @echo "#define CONFIG_MS7722SE 1" > $(obj)include/config.h  
  3188.     @$(MKCONFIG) -a $(@:_config=) sh sh4 ms7722se  
  3189.   
  3190. r2dplus_config  :   unconfig  
  3191.     @mkdir -p $(obj)include  
  3192.     @echo "#define CONFIG_R2DPLUS 1" > $(obj)include/config.h  
  3193.     @./mkconfig -a $(@:_config=) sh sh4 r2dplus  
  3194.   
  3195. r7780mp_config: unconfig  
  3196.     @mkdir -p $(obj)include  
  3197.     @echo "#define CONFIG_R7780MP 1" > $(obj)include/config.h  
  3198.     @./mkconfig -a $(@:_config=) sh sh4 r7780mp  
  3199.   
  3200. sh7763rdp_config  :   unconfig  
  3201.     @mkdir -p $(obj)include  
  3202.     @echo "#define CONFIG_SH7763RDP 1" > $(obj)include/config.h  
  3203.     @./mkconfig -a $(@:_config=) sh sh4 sh7763rdp  
  3204.   
  3205. #========================================================================  
  3206. # SPARC  
  3207. #========================================================================  
  3208.   
  3209. #########################################################################  
  3210. ## LEON3  
  3211. #########################################################################  
  3212.   
  3213. # Gaisler GR-XC3S-1500 board  
  3214. gr_xc3s_1500_config : unconfig  
  3215.     @$(MKCONFIG) $(@:_config=) sparc leon3 gr_xc3s_1500 gaisler  
  3216.   
  3217. # Gaisler GR-CPCI-AX2000 board, a General purpose FPGA-AX system  
  3218. gr_cpci_ax2000_config : unconfig  
  3219.     @$(MKCONFIG) $(@:_config=) sparc leon3 gr_cpci_ax2000 gaisler  
  3220.   
  3221. # Gaisler GRLIB template design (GPL SPARC/LEON3) for Altera NIOS  
  3222. # Development board Stratix II edition, FPGA Device EP2S60.  
  3223. gr_ep2s60_config: unconfig  
  3224.     @$(MKCONFIG) $(@:_config=) sparc leon3 gr_ep2s60 gaisler  
  3225.   
  3226. # Gaisler LEON3 GRSIM simulator  
  3227. grsim_config : unconfig  
  3228.     @$(MKCONFIG) $(@:_config=) sparc leon3 grsim gaisler  
  3229.   
  3230. #########################################################################  
  3231. ## LEON2  
  3232. #########################################################################  
  3233.   
  3234. # Gaisler LEON2 GRSIM simulator  
  3235. grsim_leon2_config : unconfig  
  3236.     @$(MKCONFIG) $(@:_config=) sparc leon2 grsim_leon2 gaisler  
  3237.   
  3238. #########################################################################  
  3239. #########################################################################  
  3240. #########################################################################  
  3241. # clean伪目标,删除编译生成的文件,但不删除一些库文件以节省时间  
  3242. clean:  
  3243.     @rm -f $(obj)examples/82559_eeprom $(obj)examples/eepro100_eeprom \  
  3244.            $(obj)examples/hello_world  $(obj)examples/interrupt   \  
  3245.            $(obj)examples/mem_to_mem_idma2intr            \  
  3246.            $(obj)examples/sched    $(obj)examples/smc91111_eeprom \  
  3247.            $(obj)examples/test_burst   $(obj)examples/timer  
  3248.     @rm -f $(obj)tools/bmp_logo    $(obj)tools/easylogo/easylogo  \  
  3249.            $(obj)tools/env/{fw_printenv,fw_setenv}            \  
  3250.            $(obj)tools/envcrc                     \  
  3251.            $(obj)tools/gdb/{astest,gdbcont,gdbsend}           \  
  3252.            $(obj)tools/gen_eth_addr    $(obj)tools/img2srec       \  
  3253.            $(obj)tools/mkimage     $(obj)tools/mpc86x_clk     \  
  3254.            $(obj)tools/ncb         $(obj)tools/ubsha1  
  3255.     @rm -f $(obj)board/cray/L1/{bootscript.c,bootscript.image}    \  
  3256.            $(obj)board/netstar/{eeprom,crcek,crcit,*.srec,*.bin}      \  
  3257.            $(obj)board/trab/trab_fkt   $(obj)board/voiceblue/eeprom   \  
  3258.            $(obj)board/{integratorap,integratorcp}/u-boot.lds     \  
  3259.            $(obj)board/{bf533-ezkit,bf533-stamp,bf537-stamp,bf561-ezkit}/u-boot.lds \  
  3260.            $(obj)cpu/blackfin/bootrom-asm-offsets.[chs]  
  3261.     @rm -f $(obj)include/bmp_logo.h  
  3262.     @rm -f $(obj)nand_spl/{u-boot-spl,u-boot-spl.map,System.map}  
  3263.     @rm -f $(obj)onenand_ipl/onenand-{ipl,ipl.bin,ipl-2k.bin,ipl-4k.bin,ipl.map}  
  3264.     @rm -f $(obj)api_examples/demo $(VERSION_FILE)  
  3265.     @find $(OBJTREE) -type f \  
  3266.         \( -name 'core' -o -name '*.bak' -o -name '*~' \  
  3267.         -o -name '*.o'  -o -name '*.a'  \) -print \  
  3268.         | xargs rm -f  
  3269.   
  3270. # clobber伪目标:删除包括镜像在内的编译文件   
  3271. clobber:    clean  
  3272.     @find $(OBJTREE) -type f \( -name .depend \  
  3273.         -o -name '*.srec' -o -name '*.bin' -o -name u-boot.img \) \  
  3274.         -print0 \  
  3275.         | xargs -0 rm -f  
  3276.     @rm -f $(OBJS) $(obj)*.bak $(obj)ctags $(obj)etags $(obj)TAGS \  
  3277.         $(obj)cscope.* $(obj)*.*~  
  3278.     @rm -f $(obj)u-boot $(obj)u-boot.map $(obj)u-boot.hex $(ALL)  
  3279.     @rm -f $(obj)tools/{crc32.c,environment.c,env/crc32.c,md5.c,sha1.c,inca-swap-bytes}  
  3280.     @rm -f $(obj)tools/{image.c,fdt.c,fdt_ro.c,fdt_rw.c,fdt_strerror.c,zlib.h}  
  3281.     @rm -f $(obj)tools/{fdt_wip.c,libfdt_internal.h}  
  3282.     @rm -f $(obj)cpu/mpc824x/bedbug_603e.c  
  3283.     @rm -f $(obj)include/asm/proc $(obj)include/asm/arch $(obj)include/asm  
  3284.     @rm -f $(obj)include/regs.h  
  3285.     @[ ! -d $(obj)nand_spl ] || find $(obj)nand_spl -lname "*" -print | xargs rm -f  
  3286.     @[ ! -d $(obj)onenand_ipl ] || find $(obj)onenand_ipl -lname "*" -print | xargs rm -f  
  3287.     @[ ! -d $(obj)api_examples ] || find $(obj)api_examples -lname "*" -print | xargs rm -f  
  3288.   
  3289. # distclean伪目标:删除所有编译生成的文件和配置文件,这是个常用选项!  
  3290. ifeq ($(OBJTREE),$(SRCTREE))  
  3291. mrproper \  
  3292. distclean:  clobber unconfig  
  3293. else  
  3294. mrproper \  
  3295. distclean:  clobber unconfig  
  3296.     rm -rf $(obj)*  
  3297. endif  
  3298.   
  3299. ########################################################################################################  
  3300. # backup:备份,basename命令作用是从文件名中剥离目录和后缀,TOPDIR是u-boot源码顶层目录    
  3301. # 这样剥离了目录和后缀后,F就是uboot源码包的名称。cd ..返回上级目录,也就是-boot源码顶层目录的上一层目录    
  3302. # 对于gtar,我找不到这个命令,搜索了一下也没发现这是啥,我把它换成tar便可正常备份!!!!!!!!    
  3303. # --force-local参数意思是强制使用本地存档,即使存在克隆。z:表示用gzip对存档压缩或者解压。    
  3304. # c:建立新的压缩文件,v:详细显示处理的文件,f:指定文件名,f参数之后一定要立即接文件名,不能    
  3305. # 再加别的参数。    
  3306. # LC_ALL=C设计本地环境为C,即POXSI,这么做是为了去除所有本地化设置,让命令能正确执行    
  3307. # date:显示日期的命令,%Y-%m-%d-%T,也就是年月日时分秒了    
  3308. # 所以最后得到备份包的名称是:uboot源码包的名称-年-月-日-时分秒.tar.gz    
  3309. backup:  
  3310.     F=`basename $(TOPDIR)` ; cd .. ; \  
  3311.     gtar --force-local -zcvf `date "+$$F-%Y-%m-%d-%T.tar.gz"` $$F  
  3312.   
  3313. #########################################################################