summaryrefslogtreecommitdiffstats
path: root/cfe/build/broadcom/bcm63xx_ram/Makefile
blob: e83cff79d0ea4eabc68c2d153d86bbe93cfa7093 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
CFG_MLONG64  ?= 0
CFG_LITTLE   ?= 0        # Mindbender
CFG_RELOC    ?= 0
CFG_UNCACHED ?= 0      # Mindbender
CFG_NEWRELOC ?= 0
CFG_VAPI     ?= 0 
CFG_BOOTRAM  ?= 0
CFG_RAMAPP   ?= 1
CFG_BOARDNAME = "BCM9$(BRCM_CHIP)"
CFG_PCI       = 0
CFG_ZLIB	  = 0		# enable zlib

COMPRESS ?= cmplzma

TOP   = ../../../cfe
ARCH  = mips
CPU   = bcmcore
BOARD = bcm63xx_ram

HOSTTOOLS = ../../../../hostTools
SHARED_DIR = ../../../../shared
BOARDPARMS_DIR = $(SHARED_DIR)/opensource/boardparms/bcm963xx
FLASH_DIR = $(SHARED_DIR)/opensource/flash
BCMSPI_DIR = $(SHARED_DIR)/opensource/spi
INC_SHARED_PUB_PATH = $(SHARED_DIR)/opensource/include/bcm963xx
INC_SHARED_PRIV_PATH = $(SHARED_DIR)/broadcom/include/bcm963xx
ROM_BUILD = ../bcm63xx_rom
ASM_FILE =$(ROM_BUILD)/flashimg.S

ifeq ($(strip $(CFG_SBP)),1)
	CFLAGS += -DUSE_SINGLE_BOARD_PARAM 
endif	

include $(TOP)/arch/mips/board/$(BOARD)/src/ram_cfe.mk

VPATH += ${ARCH_TOP}/board/$(BOARD)/src/html ${BOARDPARMS_DIR} $(BCMSPI_DIR) ${FLASH_DIR}
INCDIRS += -I${INC_SHARED_PUB_PATH} -I${INC_SHARED_PRIV_PATH}

$(HOSTTOOLS)/$(COMPRESS):
	$(MAKE) -C $(HOSTTOOLS) build_cmplzma

ALL: sanity_check $(HOSTTOOLS)/$(COMPRESS)
	find $(SHARED_DIR) -name "*.o" -exec rm -f "{}" ";"
	find $(BOARDPARMS_DIR) -name "*.o" -exec rm -f "{}" ";"
	${MAKE} cfe$(BRCM_CHIP)
	$(HOSTTOOLS)/$(COMPRESS) -c -2 cfe$(BRCM_CHIP) cfe$(BRCM_CHIP).bin $(ASM_FILE)

sanity_check:
	@if [ "$(BRCM_CHIP)" = "" ]; then \
		echo You must specify chip ID using 'gmake BRCM_CHIP=[6328|6362|6368|6816]'; exit 1; \
	fi

$(ASM_FILE): cfe$(BRCM_CHIP) cfe$(BRCM_CHIP).bin

cfe$(BRCM_CHIP) cfe$(BRCM_CHIP).bin: $(CRT0OBJS) $(BSPOBJS) $(LIBCFE)
	$(GLD) -o cfe$(BRCM_CHIP) -Map cfe$(BRCM_CHIP).map $(LDFLAGS) $(CRT0OBJS) $(BSPOBJS) -L. -lcfe $(LDLIBS)
	$(OBJDUMP) -d cfe$(BRCM_CHIP) > cfe$(BRCM_CHIP).dis
	$(OBJCOPY) --output-target=binary cfe$(BRCM_CHIP) cfe$(BRCM_CHIP).bin
ifeq ($(strip $(INC_NAND_FLASH_DRIVER)),1)
	printf "0: %08x%08x%08x" `$(OBJDUMP) -x cfe$(BRCM_CHIP) | sed -n -e "/start address/{s?start address ??p}" -e "/LOAD off/{s?^ *LOAD off.*vaddr ??; s? paddr .*??p}" -e "/ _end/{s? g.* _end??; s?^...?0x000?p}"` | xxd -r > cferamhdr.bin; \
	cat cferamhdr.bin cfe$(BRCM_CHIP).bin > cfe$(BRCM_CHIP)ram.bin; \
	rm cferamhdr.bin
endif

clean :
	rm -f *.o *~ cfe*
	rm -f build_date.c
	rm -f libcfe.a
	rm -f $(ASM_FILE)
	
distclean : clean