Add support for GL.iNet GL-USB150 (AR9331 based)
[oweals/u-boot_mod.git] / u-boot / Makefile
1 #
2 # Copyright (C) 2016 Piotr Dymacz <piotr@dymacz.pl>
3 #
4 # (C) Copyright 2000-2006 Wolfgang Denk,
5 # DENX Software Engineering, wd@denx.de.
6 #
7 # SPDX-License-Identifier: GPL-2.0
8 #
9
10 VERSION      = 1
11 PATCHLEVEL   = 1
12 SUBLEVEL     = 4
13 EXTRAVERSION = -$(shell git rev-parse --short=8 HEAD)
14 ISREPODIRTY  = $(shell if git diff-files | read dummy; then echo 1; else echo 0; fi)
15 VERSION_FILE = include/version_autogenerated.h
16
17 MKCONFIG = $(BUILD_TOPDIR)/u-boot/mkconfig
18 MKIMAGE  = $(BUILD_TOPDIR)/u-boot/tools/mkimage
19 LZMA     = $(BUILD_TOPDIR)/host_util/lzma/lzma
20
21 # Show in version string if we are not building from clean repository
22 ifeq ($(ISREPODIRTY),1)
23   U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)"-dirty"
24 else
25   U_BOOT_VERSION = $(VERSION).$(PATCHLEVEL).$(SUBLEVEL)$(EXTRAVERSION)"-clean"
26 endif
27
28 # ===============================================================
29
30 TOPDIR := $(shell if [ "$$PWD" != "" ]; then echo $$PWD; else pwd; fi)
31 export TOPDIR
32
33 # Some variables passed as arguments in cmd
34 ifneq ($(IMG_SIZE),)
35   CONFIG_MAX_UBOOT_SIZE = $(IMG_SIZE)
36   export CONFIG_MAX_UBOOT_SIZE
37 endif
38
39 ifeq ($(IMG_LZMA),1)
40   COMPRESSED_UBOOT = 1
41   export COMPRESSED_UBOOT
42 endif
43
44 ifeq ($(IMG_RAM),1)
45   CONFIG_SKIP_LOWLEVEL_INIT = 1
46   export CONFIG_SKIP_LOWLEVEL_INIT
47 endif
48
49 ifneq ($(DEVICE_VENDOR),)
50   DEVICE_VENDOR = $(DEVICE_VENDOR)
51   export DEVICE_VENDOR
52 endif
53
54 # Never use LZMA compression
55 # for a RAM version of image
56 ifdef CONFIG_SKIP_LOWLEVEL_INIT
57   unexport COMPRESSED_UBOOT
58   COMPRESSED_UBOOT =
59 endif
60
61 ifndef CROSS_COMPILE
62   $(error "CROSS_COMPILE is not defined!")
63 endif
64 export CROSS_COMPILE
65
66 ifndef STAGING_DIR
67   $(error "STAGING_DIR is not defined!")
68 endif
69 export STAGING_DIR
70
71 # Endianness
72 ifndef ENDIANNESS
73   ENDIANNESS=-EB
74 endif
75 export ENDIANNESS
76
77 # =======================
78 # CUSTOM HELPER FUNCTIONS
79 # =======================
80
81 define echo_green
82   echo -e "\e[92m$(1)\e[0m"
83 endef
84
85 define echo_red
86   echo -e "\e[91m$(1)\e[0m"
87 endef
88
89 define echo_yellow
90   echo -e "\e[93m$(1)\e[0m"
91 endef
92
93 define ih_name
94 U-Boot $(strip $(subst ",,$(U_BOOT_VERSION)))
95 endef
96
97 # $(1): name
98 # $(2): path
99 define echo_size
100 @echo "$(1): `wc -c < $(strip $(2))` Bytes"
101 endef
102
103 # $(1): define name
104 # $(2): define value
105 define define_add
106   len=$$((5 - ($$(expr length $(1))/8))); \
107   tab=`printf '%*s' "$$len" | tr ' ' "\t"`; \
108   echo -ne "#define $(strip $(1))$${tab}" >> include/config.h; \
109   echo -e  '$(strip $(2))' >> include/config.h
110 endef
111
112 # $(1): define name
113 define undef_add
114   echo -e '#undef $(strip $(1))' >> include/config.h
115 endef
116
117 # $(1): path
118 define include_add
119   echo -e '#include <$(strip $(1))>' >> include/config.h
120 endef
121
122 # $(1): name
123 define board_name
124 $(if $(1),$(strip $(1)),OEM/Unknown)
125 endef
126
127 # $(1): size
128 define flash_size
129 $(if $(1),$(strip $(1)),4)
130 endef
131
132 # $(1): vendor, board name/model
133 # $(2): hostname
134 # $(3): default FLASH size in MB
135 # $(4): reset button GPIO number
136 # $(5): 1 if reset button is active low
137 # $(6): SOC_TYPE
138 define config_init
139   $(call echo_green,Preparing configuration for target: $@)
140   echo
141
142   $(call echo_yellow,  Device vendor/model:\t$(call board_name,$(1)))
143   $(if $(DEVICE_VENDOR), \
144     $(call echo_yellow,  Custom recovery web:\tyes ($(DEVICE_VENDOR))), \
145     $(call echo_yellow,  Custom recovery web:\tno) \
146   )
147
148   $(if $(CONFIG_MAX_UBOOT_SIZE), \
149     $(call echo_yellow,  Image size limit:\t$$(($(CONFIG_MAX_UBOOT_SIZE) / 1024)) KB),
150     $(call echo_yellow,  Image size limit:\tnot specified)
151   )
152
153   $(call echo_yellow,  Default FLASH size:\t$(call flash_size,$(3)) MB)
154
155   $(if $(4),
156     $(call echo_yellow,  GPIO reset button:\t$(strip $(4))), \
157     $(call echo_yellow,  GPIO reset button:\tnot specified) \
158   )
159
160   $(if $(filter $(5),1),
161     $(call echo_yellow,  Button active low:\tyes), \
162     $(call echo_yellow,  Button active low:\tno) \
163   )
164
165   $(if $(filter $(COMPRESSED_UBOOT),1), \
166     $(call echo_yellow,  LZMA compression:\tyes), \
167     $(call echo_yellow,  LZMA compression:\tno) \
168   )
169
170   $(if $(filter $(CONFIG_SKIP_LOWLEVEL_INIT),1), \
171     $(call echo_yellow,  RAM-loadable only:\tyes), \
172     $(call echo_yellow,  RAM-loadable only:\tno) \
173   )
174
175   $(if $(2),$(call define_add,CONFIG_HOSTNAME,u-boot_$(strip $(2))))
176
177   $(if $(4),$(call define_add,CONFIG_GPIO_RESET_BTN,$(strip $(4))))
178   $(if $(filter $(5),1),$(call define_add,CONFIG_GPIO_RESET_BTN_ACTIVE_LOW,1))
179   $(if $(CONFIG_MAX_UBOOT_SIZE), \
180     $(call define_add,CONFIG_MAX_UBOOT_SIZE,$(CONFIG_MAX_UBOOT_SIZE))
181     $(call define_add,CONFIG_MAX_UBOOT_SIZE_HEX,$(shell printf '0x%X' $(CONFIG_MAX_UBOOT_SIZE)))
182   )
183
184   $(if $(filter $(CONFIG_SKIP_LOWLEVEL_INIT),1), \
185     $(call define_add,CONFIG_SKIP_LOWLEVEL_INIT,1) \
186   )
187   $(if $(filter $(CONFIG_SKIP_LOWLEVEL_INIT),1), \
188     $(call undef_add,COMPRESSED_UBOOT) \
189   )
190
191   $(if $(6), \
192     $(call define_add,SOC_TYPE,$(6)) \
193   )
194
195   $(call define_add,CONFIG_BOARD_CUSTOM_STRING,$(call board_name,$(1)))
196   $(call define_add,CONFIG_DEFAULT_FLASH_SIZE_IN_MB,$(call flash_size,$(3)))
197
198   echo
199 endef
200
201 # ===============================================================
202
203 # First, check if configuration was done
204 ifneq (include/config.mk, $(wildcard include/config.mk))
205 all install u-boot u-boot.srec depend dep:
206         $(error "System was not configured!")
207 else
208 # Load ARCH, BOARD, and CPU configuration
209 include include/config.mk
210 export ARCH CPU BOARD VENDOR SOC
211
212 # Load other configuration
213 include $(TOPDIR)/config.mk
214
215 # ===============================================================
216 # U-Boot objects....order is important (i.e. start must be first)
217 OBJS = cpu/$(CPU)/start.o
218
219 LIBS  = lib_generic/libgeneric.a
220 LIBS += common/libcommon.a
221
222 LIBS += lib_$(ARCH)/lib$(ARCH).a
223 LIBS += drivers/libdrivers.a
224 LIBS += net/libnet.a
225 LIBS += rtc/librtc.a
226 LIBS += $(BOARDLIBS)
227
228 LIBS_SHARED  = board/$(BOARDDIR)/lib$(BOARD).a
229 LIBS_SHARED += httpd/libhttpd.a
230 ifdef SOC
231   LIBS_SHARED += cpu/$(CPU)/$(SOC)/lib$(SOC).a
232 endif
233 LIBS_SHARED += cpu/$(CPU)/lib$(CPU).a
234
235 ifdef COMPRESSED_UBOOT
236   OBJS_BOOTSTRAP = cpu/$(CPU)/start_bootstrap.o
237   LIBS_BOOTSTRAP = lib_bootstrap/libbootstrap.a
238   PHONY_LIBS = $(LIBS_BOOTSTRAP) $(LIBS_SHARED)
239 else
240   PHONY_LIBS = $(LIBS) $(LIBS_SHARED)
241 endif
242 .PHONY: $(PHONY_LIBS)
243
244 # Add GCC lib
245 PLATFORM_LIBS += -L $(shell dirname `$(CC) $(CFLAGS) -print-libgcc-file-name`) -lgcc
246
247 # The "tools" are needed early, so put this first
248 # Don't include stuff already done in $(LIBS)
249 SUBDIRS = tools
250
251 .PHONY: $(SUBDIRS)
252
253 # ===============================================================
254
255 ALL = u-boot.srec u-boot.bin System.map
256
257 ifdef COMPRESSED_UBOOT
258 all: $(ALL) tuboot.bin
259 else
260 all: $(ALL) u-boot.img
261 endif
262
263 u-boot.hex: u-boot
264         $(OBJCOPY) ${OBJCFLAGS} -O ihex $< $@
265
266 u-boot.srec: u-boot
267         $(OBJCOPY) ${OBJCFLAGS} -O srec $< $@
268
269 u-boot.bin: u-boot
270         $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
271
272 u-boot.img: u-boot.bin
273         @echo
274         $(call echo_green,Preparing regular U-Boot image $@...)
275         $(MKIMAGE) -A $(ARCH) -T firmware -C none -a $(TEXT_BASE) \
276                    -e 0 -n '$(call ih_name)' -d $< $@
277
278 u-boot.dis: u-boot
279         $(OBJDUMP) -d $< > $@
280
281 u-boot: fsdata depend version $(SUBDIRS) $(OBJS) $(LIBS) $(LIBS_SHARED) $(LDSCRIPT)
282         UNDEF_SYM=`$(OBJDUMP) -x $(LIBS) $(LIBS_SHARED) | \
283                    sed -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p' | \
284                    sort | uniq`; \
285         $(LD) $(LDFLAGS) $$UNDEF_SYM $(OBJS) \
286               --start-group $(LIBS) $(LIBS_SHARED) \
287               --end-group $(PLATFORM_LIBS) \
288               -Map u-boot.map -o u-boot
289
290 $(LIBS_SHARED):
291         $(MAKE) -C `dirname $@`
292
293 $(LIBS):
294         $(MAKE) -C `dirname $@`
295
296 $(SUBDIRS):
297         $(MAKE) -C $@ all
298
299 # For LZMA compressed image
300 ifdef COMPRESSED_UBOOT
301 tuboot.bin: System.map bootstrap.bin u-boot.lzimg
302         @echo
303         $(call echo_green,Merging bootstrap.bin with u-boot.lzimg...)
304         $(call echo_size,    Bootstrap size,bootstrap.bin)
305         $(call echo_size,   LZMA image size,u-boot.lzimg)
306         @cat bootstrap.bin > $@
307         @cat u-boot.lzimg >> $@
308         $(call echo_size,  Total image size,$@)
309
310 u-boot.lzimg: lzma_host $(obj)u-boot.bin System.map
311         @echo
312         @rm -rf u-boot.bin.lzma
313         @$(call echo_green,Compressing U-Boot image $<...)
314         @$(LZMA) --best --keep $(obj)u-boot.bin
315         $(call echo_green,Preparing LZMA compressed U-Boot image $@...)
316         $(MKIMAGE) -A $(ARCH) -T firmware -C lzma \
317                    -a 0x$(shell grep "T _start" $(TOPDIR)/System.map | \
318                     awk '{ printf "%s", $$1 }') \
319                    -e 0x$(shell grep "T _start" $(TOPDIR)/System.map | \
320                     awk '{ printf "%s", $$1 }') \
321                    -n '$(call ih_name)' -d $(obj)u-boot.bin.lzma $@
322
323 bootstrap.bin: bootstrap
324         $(OBJCOPY) ${OBJCFLAGS} -O binary $< $@
325
326 bootstrap: depend version $(SUBDIRS) $(OBJS_BOOTSTRAP) $(LIBS_BOOTSTRAP) $(LIBS_SHARED) $(LDSCRIPT_BOOTSTRAP)
327         UNDEF_SYM=`$(OBJDUMP) -x $(LIBS_BOOTSTRAP) | \
328                    sed  -n -e 's/.*\(__u_boot_cmd_.*\)/-u\1/p' | \
329                    sort | uniq`; \
330         $(LD) $(LDFLAGS_BOOTSTRAP) $$UNDEF_SYM $(OBJS_BOOTSTRAP) \
331               --start-group $(LIBS_BOOTSTRAP) $(LIBS_SHARED) \
332               --end-group $(PLATFORM_LIBS) \
333               -Map bootstrap.map -o bootstrap
334
335 $(LIBS_BOOTSTRAP):
336         $(MAKE) -C `dirname $@`
337
338 lzma_host:
339         @echo
340         $(call echo_green,Building lzma host utility...)
341         $(MAKE) -C $(BUILD_TOPDIR)/host_util/lzma -f makefile.gcc all
342 endif # ifdef COMPRESSED_UBOOT
343
344 version:
345         @echo -n "#define U_BOOT_VERSION \"U-Boot $(U_BOOT_VERSION)\"" > $(VERSION_FILE)
346
347 fsdata:
348         $(call echo_green,Preparing web server files...)
349         @echo
350         cd httpd && ./vendors/makefsdatac $(DEVICE_VENDOR)
351
352 depend dep:
353         @for dir in $(SUBDIRS); do $(MAKE) -C $$dir .depend; done
354
355 System.map: u-boot
356         @$(NM) $< | \
357                grep -v '\(compiled\)\|\(\.o$$\)\|\( [aUw] \)\|\(\.\.ng$$\)\|\(LASH[RL]DI\)' | \
358                sort > System.map
359 endif # include/config.mk
360
361 # =====================
362 # COMMON/SHARED TARGETS
363 # =====================
364
365 unconfig:
366         @$(call echo_green,Removing configuration...)
367         @rm -f include/config.h include/config.mk board/*/config.tmp
368
369 config_common:
370         @ >include/config.h
371         @$(call include_add,soc/soc_list.h)
372         @$(call define_add,CONFIG_BUILD_DATE_UTC,$(shell date -u +"%Y-%m-%d"))
373
374 ar933x_common: unconfig config_common
375         @$(call define_add,CFG_AG7240_NMACS,2)
376         @$(call define_add,CFG_ATHRS26_PHY,1)
377         @$(call define_add,CONFIG_MACH_HORNET,1)
378
379 ar934x_common: unconfig config_common
380         @$(call define_add,CONFIG_WASP,1)
381         @$(call define_add,CONFIG_WASP_SUPPORT,1)
382
383 qca953x_common: unconfig config_common
384         @$(call define_add,CONFIG_ATHEROS,1)
385         @$(call define_add,CONFIG_MACH_QCA953x,1)
386
387 lsdk_kernel:
388         @$(call define_add,CONFIG_LSDK_KERNEL,1)
389
390 # =============================
391 # TARGETS IN ALPHABETICAL ORDER
392 # =============================
393
394 8devices_carambola2: ar933x_common
395         @$(call config_init,8devices Carambola 2,carambola-v2,16,11,1,QCA_AR933X_SOC)
396         @$(call define_add,CONFIG_FOR_8DEVICES_CARAMBOLA2,1)
397         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
398
399 alfa-network_ap121f: ar933x_common
400         @$(call config_init,ALFA NETWORK AP121F,ap121f,16,12,1,QCA_AR933X_SOC)
401         @$(call define_add,CONFIG_FOR_ALFA_NETWORK_AP121F,1)
402         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
403
404 alfa-network_hornet-ub: ar933x_common
405         @$(call config_init,ALFA NETWORK Hornet-UB,hornet-ub,8,12,1,QCA_AR933X_SOC)
406         @$(call define_add,CONFIG_FOR_ALFA_NETWORK_HORNET_UB,1)
407         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
408
409 comfast_cf-e314n: qca953x_common
410         @$(call config_init,Comfast CF-E314N,cf-e314n,16,17,1,QCA_QCA953X_SOC)
411         @$(call define_add,CONFIG_FOR_COMFAST_CF_E314N,1)
412         @$(call define_add,CFG_ATHRS27_PHY,1)
413         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
414         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
415
416 comfast_cf-e320n_v2: qca953x_common
417         @$(call config_init,Comfast CF-E320N v2,cf-e320n-v2,16,17,1,QCA_QCA953X_SOC)
418         @$(call define_add,CONFIG_FOR_COMFAST_CF_E320N_V2,1)
419         @$(call define_add,CFG_ATHRS27_PHY,1)
420         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
421         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
422
423 comfast_cf-e520n: qca953x_common
424         @$(call config_init,Comfast CF-E520N,cf-e520n,8,17,1,QCA_QCA953X_SOC)
425         @$(call define_add,CONFIG_FOR_COMFAST_CF_E520N,1)
426         @$(call define_add,CFG_ATHRS27_PHY,1)
427         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
428         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
429
430 comfast_cf-e530n: qca953x_common
431         @$(call config_init,Comfast CF-E530N,cf-e530n,8,17,1,QCA_QCA953X_SOC)
432         @$(call define_add,CONFIG_FOR_COMFAST_CF_E530N,1)
433         @$(call define_add,CONFIG_USB,1)
434         @$(call define_add,CFG_ATHRS27_PHY,1)
435         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
436         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
437
438 creatcomm-technology_d3321: ar933x_common
439         @$(call config_init,CreatComm Technology D3321,d3321,8,12,1,QCA_AR933X_SOC)
440         @$(call define_add,CONFIG_FOR_CREATCOMM_D3321,1)
441         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
442
443 d-link_dir-505: ar933x_common
444         @$(call config_init,D-Link DIR-505,dir-505,8,11,1,QCA_AR933X_SOC)
445         @$(call define_add,CONFIG_FOR_DLINK_DIR505_A1,1)
446         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
447
448 dragino_v2_ms14: ar933x_common
449         @$(call config_init,Dragino v2 (MS14),dragino-v2,16,11,1,QCA_AR933X_SOC)
450         @$(call define_add,CONFIG_FOR_DRAGINO_V2,1)
451         @$(call define_add,WEBFAILSAFE_DISABLE_ART_UPGRADE,1)
452         @$(call define_add,WEBFAILSAFE_DISABLE_UBOOT_UPGRADE,1)
453         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
454
455 engenius_ens202ext: ar934x_common
456         @$(call config_init,EnGenius ENS202EXT,ens202ext,16,1,1,QCA_AR9341_SOC)
457         @$(call define_add,CONFIG_FOR_ENGENIUS_ENS202EXT,1)
458         @$(call define_add,CFG_ATHRS27_PHY,1)
459         @$(call define_add,CFG_AG7240_NMACS,2)
460         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
461
462 gainstrong_oolite_v1_dev: ar933x_common
463         @$(call config_init,Gainstrong Oolite v1 (dev board),oolite-v1,16,11,,QCA_AR933X_SOC)
464         @$(call define_add,CONFIG_FOR_GS_OOLITE_V1_DEV,1)
465         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
466
467 gl-inet_6416: ar933x_common
468         @$(call config_init,GL.iNet 6416,glinet-6416,8,11,,QCA_AR933X_SOC)
469         @$(call define_add,CONFIG_FOR_GL_INET,1)
470         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
471
472 gl-inet_gl-ar150: ar933x_common
473         @$(call config_init,GL.iNet GL-AR150,gl-ar150,16,11,,QCA_AR933X_SOC)
474         @$(call define_add,CONFIG_FOR_GL_AR150,1)
475         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
476
477 gl-inet_gl-usb150: ar933x_common
478         @$(call config_init,GL.iNet GL-USB150,gl-usb150,16,11,,QCA_AR933X_SOC)
479         @$(call define_add,CONFIG_FOR_GL_USB150,1)
480         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
481
482 p2w_cpe505n: qca953x_common
483         @$(call config_init,P&W CPE505N,cpe505n,16,17,1,QCA_QCA953X_SOC)
484         @$(call define_add,CONFIG_FOR_P2W_CPE505N,1)
485         @$(call define_add,CFG_ATHRS27_PHY,1)
486         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
487         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
488
489 p2w_r602n: qca953x_common
490         @$(call config_init,P&W R602N,r602n,16,17,1,QCA_QCA953X_SOC)
491         @$(call define_add,CONFIG_FOR_P2W_R602N,1)
492         @$(call define_add,CONFIG_USB,1)
493         @$(call define_add,CFG_ATHRS27_PHY,1)
494         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
495         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
496
497 tp-link_tl-mr10u: ar933x_common lsdk_kernel
498         @$(call config_init,TP-Link TL-MR10U,tl-mr10u,4,11,,QCA_AR933X_SOC)
499         @$(call define_add,CONFIG_FOR_TPLINK_MR10U_V1,1)
500         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
501
502 tp-link_tl-mr13u: ar933x_common lsdk_kernel
503         @$(call config_init,TP-Link TL-MR13U,tl-mr13u,4,11,,QCA_AR933X_SOC)
504         @$(call define_add,CONFIG_FOR_TPLINK_MR13U_V1,1)
505         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
506
507 tp-link_tl-mr3020: ar933x_common lsdk_kernel
508         @$(call config_init,TP-Link TL-MR3020,tl-mr3020,4,11,,QCA_AR933X_SOC)
509         @$(call define_add,CONFIG_FOR_TPLINK_MR3020_V1,1)
510         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
511
512 tp-link_tl-mr3040: ar933x_common lsdk_kernel
513         @$(call config_init,TP-Link TL-MR3040,tl-mr3040,4,11,,QCA_AR933X_SOC)
514         @$(call define_add,CONFIG_FOR_TPLINK_MR3040_V1V2,1)
515         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
516
517 tp-link_tl-mr3220_v2: ar933x_common lsdk_kernel
518         @$(call config_init,TP-Link TL-MR3220 v2,tl-mr3220-v2,4,11,,QCA_AR933X_SOC)
519         @$(call define_add,CONFIG_FOR_TPLINK_MR3220_V2,1)
520         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
521
522 tp-link_tl-mr3420_v2: ar934x_common lsdk_kernel
523         @$(call config_init,TP-Link TL-MR3420 v2,tl-mr3420-v2,4,17,1,QCA_AR9341_SOC)
524         @$(call define_add,CONFIG_FOR_TPLINK_MR3420_V2,1)
525         @$(call define_add,CFG_ATHRS27_PHY,1)
526         @$(call define_add,CFG_AG7240_NMACS,2)
527         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
528
529 tp-link_tl-mr3420_v3: qca953x_common lsdk_kernel
530         @$(call config_init,TP-Link TL-MR3420 v3,tl-mr3420-v3,4,12,1,QCA_QCA953X_SOC)
531         @$(call define_add,CONFIG_FOR_TPLINK_MR3420_V3,1)
532         @$(call define_add,CONFIG_USB,1)
533         @$(call define_add,CFG_ATHRS27_PHY,1)
534         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
535         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
536
537 tp-link_tl-mr6400_v1v2: qca953x_common lsdk_kernel
538         @$(call config_init,TP-Link TL-MR6400 v1/v2,tl-mr6400-v1v2,8,12,1,QCA_QCA953X_SOC)
539         @$(call define_add,CONFIG_FOR_TPLINK_MR6400_V1V2,1)
540         @$(call define_add,CONFIG_USB,1)
541         @$(call define_add,CONFIG_QCA_ETH_PHY_SWAP,1)
542         @$(call define_add,CFG_ATHRS27_PHY,1)
543         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
544         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
545
546 tp-link_tl-wa801nd_v2: ar934x_common lsdk_kernel
547         @$(call config_init,TP-Link TL-WA801ND v2,tl-wa801nd-v2,4,17,1,QCA_AR9341_SOC)
548         @$(call define_add,CONFIG_FOR_TPLINK_WA801ND_V2,1)
549         @$(call define_add,CFG_ATHRS27_PHY,1)
550         @$(call define_add,CFG_AG7240_NMACS,2)
551         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
552
553 tp-link_tl-wa830re_v2: ar934x_common lsdk_kernel
554         @$(call config_init,TP-Link TL-WA830RE v2,tl-wa830re-v2,4,17,1,QCA_AR9341_SOC)
555         @$(call define_add,CONFIG_FOR_TPLINK_WA830RE_V2,1)
556         @$(call define_add,CFG_ATHRS27_PHY,1)
557         @$(call define_add,CFG_AG7240_NMACS,2)
558         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
559
560 tp-link_tl-wa850re_v2: qca953x_common lsdk_kernel
561         @$(call config_init,TP-Link TL-WA850RE v2,tl-wa850re-v2,4,17,1,QCA_QCA953X_SOC)
562         @$(call define_add,CONFIG_FOR_TPLINK_WA850RE_V2,1)
563         @$(call define_add,CFG_ATHRS27_PHY,1)
564         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
565         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
566
567 tp-link_tl-wdr3500: ar934x_common lsdk_kernel
568         @$(call config_init,TP-Link TL-WDR3500,tl-wdr3500,8,16,1,QCA_AR9344_SOC)
569         @$(call define_add,CONFIG_FOR_TPLINK_WDR3500_V1,1)
570         @$(call define_add,CFG_ATHRS27_PHY,1)
571         @$(call define_add,CFG_AG7240_NMACS,2)
572         @$(call define_add,CONFIG_PCI,1)
573         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
574
575 tp-link_tl-wdr3600: ar934x_common lsdk_kernel
576         @$(call config_init,TP-Link TL-WDR3600,tl-wdr3600,8,16,1,QCA_AR9344_SOC)
577         @$(call define_add,CONFIG_FOR_TPLINK_WDR3600_V1,1)
578         @$(call define_add,CFG_ATHRS17_PHY,1)
579         @$(call define_add,CFG_AG7240_NMACS,1)
580         @$(call define_add,CONFIG_PCI,1)
581         @$(call define_add,CFG_DUAL_PHY_SUPPORT,1)
582         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
583
584 tp-link_tl-wdr43x0: ar934x_common lsdk_kernel
585         @$(call config_init,TP-Link TL-WDR43x0,tl-wdr43x0,8,16,1,QCA_AR9344_SOC)
586         @$(call define_add,CONFIG_FOR_TPLINK_WDR43X0_V1,1)
587         @$(call define_add,CFG_ATHRS17_PHY,1)
588         @$(call define_add,CFG_AG7240_NMACS,1)
589         @$(call define_add,CONFIG_PCI,1)
590         @$(call define_add,CFG_DUAL_PHY_SUPPORT,1)
591         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
592
593 tp-link_tl-wr703n: ar933x_common lsdk_kernel
594         @$(call config_init,TP-Link TL-WR703N,tl-wr703n,4,11,,QCA_AR933X_SOC)
595         @$(call define_add,CONFIG_FOR_TPLINK_WR703N_V1,1)
596         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
597
598 tp-link_tl-wr710n: ar933x_common lsdk_kernel
599         @$(call config_init,TP-Link TL-WR710N,tl-wr710n,8,11,,QCA_AR933X_SOC)
600         @$(call define_add,CONFIG_FOR_TPLINK_WR710N_V1,1)
601         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
602
603 tp-link_tl-wr720n_v3_CN: ar933x_common lsdk_kernel
604         @$(call config_init,TP-Link TL-WR720N v3 CN,tl-wr720n-v3,4,11,,QCA_AR933X_SOC)
605         @$(call define_add,CONFIG_FOR_TPLINK_WR720N_V3,1)
606         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
607
608 tp-link_tl-wr740n_v4: ar933x_common lsdk_kernel
609         @$(call config_init,TP-Link TL-WR74xN/D v4,tl-wr74xnd-v4,4,11,,QCA_AR933X_SOC)
610         @$(call define_add,CONFIG_FOR_TPLINK_WR740N_V4,1)
611         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
612
613 tp-link_tl-wr802n: qca953x_common lsdk_kernel
614         @$(call config_init,TP-Link TL-WR802N,tl-wr802n,4,12,1,QCA_QCA953X_SOC)
615         @$(call define_add,CONFIG_FOR_TPLINK_WR802N,1)
616         @$(call define_add,CFG_ATHRS27_PHY,1)
617         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
618         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
619
620 tp-link_tl-wr810n: qca953x_common lsdk_kernel
621         @$(call config_init,TP-Link TL-WR810N,tl-wr810n,8,12,1,QCA_QCA953X_SOC)
622         @$(call define_add,CONFIG_FOR_TPLINK_WR810N,1)
623         @$(call define_add,CONFIG_USB,1)
624         @$(call define_add,CFG_ATHRS27_PHY,1)
625         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
626         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
627
628 tp-link_tl-wr820n_CN: qca953x_common lsdk_kernel
629         @$(call config_init,TP-Link TL-WR820N CN,tl-wr820n,4,12,1,QCA_QCA953X_SOC)
630         @$(call define_add,CONFIG_FOR_TPLINK_WR820N_CN,1)
631         @$(call define_add,CONFIG_USB,1)
632         @$(call define_add,CFG_ATHRS27_PHY,1)
633         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
634         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
635
636 tp-link_tl-wr841n_v10: qca953x_common lsdk_kernel
637         @$(call config_init,TP-Link TL-WR841N/D v10,tl-wr841nd-v10,4,12,1,QCA_QCA953X_SOC)
638         @$(call define_add,CONFIG_FOR_TPLINK_WR841N_V10,1)
639         @$(call define_add,CFG_ATHRS27_PHY,1)
640         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
641         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
642
643 tp-link_tl-wr841n_v11: qca953x_common lsdk_kernel
644         @$(call config_init,TP-Link TL-WR841N/D v11,tl-wr841nd-v11,4,12,1,QCA_QCA953X_SOC)
645         @$(call define_add,CONFIG_FOR_TPLINK_WR841N_V11,1)
646         @$(call define_add,CFG_ATHRS27_PHY,1)
647         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
648         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
649
650 tp-link_tl-wr841n_v8: ar934x_common lsdk_kernel
651         @$(call config_init,TP-Link TL-WR841N/D v8,tl-wr841nd-v8,4,17,1,QCA_AR9341_SOC)
652         @$(call define_add,CONFIG_FOR_TPLINK_WR841N_V8,1)
653         @$(call define_add,CFG_ATHRS27_PHY,1)
654         @$(call define_add,CFG_AG7240_NMACS,2)
655         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
656
657 tp-link_tl-wr841n_v9: qca953x_common lsdk_kernel
658         @$(call config_init,TP-Link TL-WR841N/D v9,tl-wr841nd-v9,4,12,1,QCA_QCA953X_SOC)
659         @$(call define_add,CONFIG_FOR_TPLINK_WR841N_V9,1)
660         @$(call define_add,CFG_ATHRS27_PHY,1)
661         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
662         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
663
664 tp-link_tl-wr842n_v3: qca953x_common lsdk_kernel
665         @$(call config_init,TP-Link TL-WR842N/D v3,tl-wr842nd-v3,16,1,1,QCA_QCA953X_SOC)
666         @$(call define_add,CONFIG_FOR_TPLINK_WR842N_V3,1)
667         @$(call define_add,CONFIG_USB,1)
668         @$(call define_add,CFG_ATHRS27_PHY,1)
669         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
670         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
671
672 tp-link_tl-wr902ac_v1: qca953x_common lsdk_kernel
673         @$(call config_init,TP-Link TL-WR902AC,tl-wr902ac,8,3,1,QCA_QCA953X_SOC)
674         @$(call define_add,CONFIG_FOR_TPLINK_WR902AC_V1,1)
675         @$(call define_add,CONFIG_USB,1)
676         @$(call define_add,CFG_ATHRS27_PHY,1)
677         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
678         @$(call define_add,CONFIG_PCI,1)
679         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
680
681 unwireddevices_unwired-one: ar933x_common
682         @$(call config_init,Black Swift aka Unwired One,black-swift,16,11,1,QCA_AR933X_SOC)
683         @$(call define_add,CONFIG_FOR_BLACK_SWIFT_BOARD,1)
684         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
685
686 village-telco_mesh-potato_v2: ar933x_common
687         @$(call config_init,Village Telco Mesh Potato 2,mesh-potato-v2,16,11,1,QCA_AR933X_SOC)
688         @$(call define_add,CONFIG_FOR_MESH_POTATO_V2,1)
689         @$(call define_add,WEBFAILSAFE_DISABLE_ART_UPGRADE,1)
690         @$(call define_add,WEBFAILSAFE_DISABLE_UBOOT_UPGRADE,1)
691         @$(MKCONFIG) -a ap121 mips mips ap121 ar7240 ar7240
692
693 wallys_dr531: qca953x_common
694         @$(call config_init,Wallys DR531,dr531,8,17,1,QCA_QCA953X_SOC)
695         @$(call define_add,CONFIG_FOR_WALLYS_DR531,1)
696         @$(call define_add,CONFIG_USB,1)
697         @$(call define_add,CFG_ATHRS27_PHY,1)
698         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
699         @$(call define_add,CONFIG_PCI,1)
700         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
701
702 yuncore_ap90q: qca953x_common
703         @$(call config_init,YunCore AP90Q,ap90q,16,17,1,QCA_QCA953X_SOC)
704         @$(call define_add,CONFIG_FOR_YUNCORE_AP90Q,1)
705         @$(call define_add,CFG_ATHRS27_PHY,1)
706         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
707         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
708
709 yuncore_cpe830: qca953x_common
710         @$(call config_init,YunCore CPE830,cpe830,16,17,1,QCA_QCA953X_SOC)
711         @$(call define_add,CONFIG_FOR_YUNCORE_CPE830,1)
712         @$(call define_add,CFG_ATHRS27_PHY,1)
713         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
714         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
715
716 yuncore_cpe870: ar934x_common
717         @$(call config_init,YunCore CPE870,cpe870,8,16,1,QCA_AR9341_SOC)
718         @$(call define_add,CONFIG_FOR_YUNCORE_CPE870,1)
719         @$(call define_add,CFG_ATHRS27_PHY,1)
720         @$(call define_add,CFG_AG7240_NMACS,2)
721         @$(MKCONFIG) -a db12x mips mips db12x ar7240 ar7240
722
723 zbtlink_zbt-we1526: qca953x_common
724         @$(call config_init,Zbtlink ZBT-WE1526,zbt-we1526,16,17,1,QCA_QCA953X_SOC)
725         @$(call define_add,CONFIG_FOR_ZBTLINK_ZBT_WE1526,1)
726         @$(call define_add,CONFIG_USB,1)
727         @$(call define_add,CFG_ATHRS27_PHY,1)
728         @$(call define_add,CFG_ATH_GMAC_NMACS,2)
729         @$(MKCONFIG) -a ap143 mips mips ap143 ar7240 ar7240
730
731 # =============
732 # CLEAN TARGETS
733 # =============
734
735 clean:
736         @$(call echo_green,Making $@...)
737         @find . -type f \
738                 \( -name 'core' -o -name '*.bak' -o -name '*~' \
739                 -o -name '*.o'  -o -name '*.a' -o -name .depend \) -print \
740                 | xargs rm -f
741         @rm -f tools/mkimage tools/envcrc
742         @rm -f lib_bootstrap/*.o
743         @rm -f lib_bootstrap/*.a
744         @rm -f bootstrap bootstrap.bin tuboot.bin u-boot.lzimg u-boot.bin.lzma bootstrap.map
745
746 lzma_host_clean:
747         @$(call echo_green,Removing lzma host utility...)
748         @$(MAKE) -C $(BUILD_TOPDIR)/host_util/lzma -f makefile.gcc clean
749
750 clobber: clean
751         @$(call echo_green,Making $@...)
752         @find . -type f \( -name .depend \
753                 -o -name '*.srec' -o -name '*.bin' -o -name u-boot.img \) \
754                 -print0 \
755                 | xargs -0 rm -f
756         @rm -f $(OBJS) *.bak include/version_autogenerated.h
757         @rm -fr *.*~
758         @rm -f u-boot u-boot.map u-boot.hex $(ALL)
759         @rm -f tools/crc32.c tools/environment.c
760         @rm -f include/asm/proc include/asm/arch include/asm
761
762 distclean: clobber unconfig