IMAGES_DIR = $(BUILD_DIR)/images
TARGETS_DIR = $(BUILD_DIR)/targets
DEFAULTCFG_DIR = $(TARGETS_DIR)/defaultcfg
+XCHANGE_DIR = $(BUILD_DIR)/xChange
FSSRC_DIR = $(TARGETS_DIR)/fs.src
-BRCM_MODEL_NAME=$(PROFILE)
-CFE_FILE = $(TARGETS_DIR)/cfe/cfe6338_192_168_0_1.bin
+CFE_FILE = $(TARGETS_DIR)/cfe/cfe$(BRCM_CHIP).bin
CONFIG_SHELL := $(shell if [ -x "$$BASH" ]; then echo $$BASH; \
else if [ -x /bin/bash ]; then echo /bin/bash; \
else echo sh; fi ; fi)
ifneq ($(strip $(PROFILE)),)
include $(TARGETS_DIR)/$(PROFILE)/$(PROFILE)
export BRCM_CHIP
-export BRCM_SDRAM_SIZE
-export BRCM_FLASH_SIZE
export BRCM_FLASHPSI_SIZE
-export BRCM_MODEL_NAME
+export BRCM_DRIVER_WIRELESS_PCMCIA_DATASWAP BRCM_DRIVER_WIRELESS_EBI_DMA
export BRCM_DRIVER_USB BRCM_DRIVER_ETHERNET_CONFIG
export BRCM_DEFAULTCFG
export BRCM_KERNEL_NF_FIREWALL BRCM_KERNEL_NF_MANGLE BRCM_KERNEL_NF_NAT
VENDOR_NAME = bcm
FS_KERNEL_IMAGE_NAME = $(VENDOR_NAME)$(PROFILE)_fs_kernel
CFE_FS_KERNEL_IMAGE_NAME = $(VENDOR_NAME)$(PROFILE)_cfe_fs_kernel
-FLASH_IMAGE_NAME = $(VENDOR_NAME)$(PROFILE)_flash_image
+FLASH_IMAGE_NAME = $(VENDOR_NAME)$(PROFILE)_flash_image_$(BRCM_BOARD_ID)
INC_BRCMDRIVER_PUB_PATH=$(BRCMDRIVERS_DIR)/opensource/include
INC_BRCMDRIVER_PRIV_PATH=$(BRCMDRIVERS_DIR)/broadcom/include
INC_BRCMBOARDPARMS_PATH=$(TARGETS_DIR)/boardparms
BROADCOM_CFM_DIR=$(BROADCOM_DIR)/cfm
INC_BRCMCFM_PATH=$(BROADCOM_CFM_DIR)/inc
-# Michael: this save current config to default config should be enable for every model
-export BRCM_CFG_XFER_TO_FACDEFLT=y
+ifeq ($(strip $(BRCM_APP_PHONE)),sip)
+export VOXXXLOAD=1
+export VOIPLOAD=1
+export SIPLOAD=1
+BRCM_RELEASETAG := $(BRCM_RELEASETAG).sip
+endif
+
+ifeq ($(strip $(BRCM_APP_PHONE)),mgcp)
+export VOXXXLOAD=1
+export VOIPLOAD=1
+export MGCPLOAD=1
+BRCM_RELEASETAG := $(BRCM_RELEASETAG).mgcp
+endif
ifeq ($(strip $(BRCM_PROFILER_ENABLED)),y)
export BRCM_PROFILER_TOOL=1
export BRCM_PROFILER_TOOL=0
endif
-#Set up ADSL standard
-export ADSL=$(BRCM_ADSL_STANDARD)
+ifneq ($(strip $(BUILD_VODSL)),)
+export VOXXXLOAD=1
+endif
+
+ifeq ($(strip $(BRCM_VODSL_STUNC)),y)
+ export BRCM_VODSL_STUN_CLIENT=1
+endif
+
+ifeq ($(strip $(BRCM_VODSL_CONFIG_MANAGER)),y)
+ export BRCM_VODSL_CFGMGR=1
+endif
+
+BRCM_DSP_HAL := gw
+BRCM_DSP_HAL_EXTENSION :=
+XCHANGE_DSP_APP_EXTENSION :=
+export XCHANGE_DSP_APP=$(BRCM_DSP_CODEC)
+
+ifeq ($(strip $(BRCM_DSP_PCM)),y)
+XCHANGE_DSP_APP := dspApp3341_tdm
+BRCM_DSP_HAL_EXTENSION := _pcm
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID)),y)
+XCHANGE_DSP_APP := dspApp3341_hybrid
+BRCM_DSP_HAL_EXTENSION := _hybrid
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID_EXT)),y)
+BRCM_DSP_HAL_EXTENSION := _hybrid
+XCHANGE_DSP_APP := dspApp3341_hybrid
+XCHANGE_DSP_APP_EXTENSION := _ext
+endif
-#swda add,04/07/2005
-#Set up ADSL supporting line modes
-export BRCM_DSL_MODE_GDMT
-export BRCM_DSL_MODE_GLITE
-export BRCM_DSL_MODE_T1413
-export BRCM_DSL_MODE_ADSL2
-export BRCM_DSL_MODE_READSL2
-export BRCM_DSL_MODE_ADSL2PLUS
-export BRCM_DSL_MODE_ANNEXM
-export BRCM_DSL_MODE_BITSWAP
-export BRCM_DSL_MODE_SRA
+# APM application with FXO uses the hybrid HAL, as the FXO is provided by TDM port
+ifeq ($(strip $(BRCM_DSP_APM_FXO)),y)
+XCHANGE_DSP_APP := dspApp3341
+BRCM_DSP_HAL_EXTENSION := _hybrid
+XCHANGE_DSP_APP_EXTENSION := _fxo
+endif
-#Set up ADSL version
-export ADSL_VERSION=$(BRCM_ADSL_VERSION)
+ifeq ($(strip $(BRCM_DSP_APM_FXO_EXT)),y)
+XCHANGE_DSP_APP := dspApp3341
+BRCM_DSP_HAL_EXTENSION := _hybrid
+XCHANGE_DSP_APP_EXTENSION := _fxo_ext
+endif
-export WAN_LED_BLINKING
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO)),y)
+XCHANGE_DSP_APP := dspApp3341_hybrid
+BRCM_DSP_HAL_EXTENSION := _hybrid
+XCHANGE_DSP_APP_EXTENSION := _fxo
+endif
-#michael add
-#Use chipId to decide what the ADSL config option on html
-export CHIP_ADSL_VERSION=$(BRCM_ADSL_DRIVER)
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO_EXT)),y)
+XCHANGE_DSP_APP := dspApp3341_hybrid
+BRCM_DSP_HAL_EXTENSION := _fxo
+XCHANGE_DSP_APP_EXTENSION := _fxo_ext
+endif
+
+#
+# Warning here, we do re-assign some of the variables defined earlier:
+# BRCM_DSP_HAL and BRCM_DSP_HAL_EXTENSION for example, in order to pickup
+# the correct board HAL application.
+#
+ifeq ($(strip $(BRCM_DSP_FXO)),y)
+ifeq ($(strip $(BRCM_SLIC_LE9502)),y)
+export XCHANGE_BUILD_APP=Bcm$(BRCM_CHIP)_Le9502FXO
+BRCM_RELEASETAG := $(BRCM_RELEASETAG)._LE9502
+BRCM_DSP_HAL := _Le9502FXO
+BRCM_DSP_HAL_EXTENSION :=
+export BRCM_SLIC_LE9502
+else
+ifeq ($(strip $(BRCM_SLIC_LE9500)),y)
+export XCHANGE_BUILD_APP=Bcm$(BRCM_CHIP)_Le9500FXO
+BRCM_RELEASETAG := $(BRCM_RELEASETAG)._LE9500
+BRCM_DSP_HAL := _Le9500FXO
+BRCM_DSP_HAL_EXTENSION :=
+export BRCM_SLIC_LE9500
+endif
+endif
+endif
+
+
+#
+# DSP codec flags definition. To be used throughout the application (for configuration and vodsl)
+#
+
+BRCM_DSP_CODEC_DEFINES := -DXCFG_G711_SUPPORT=1
+
+ifeq ($(strip $(BRCM_DSP_CODEC_G723)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_CODEC_G726)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_CODEC_G729)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_CODEC_G7xx)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_PCM)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID_EXT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO_EXT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_IOM2_APM)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_HYBRID_LOAD=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_IOM2)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_CODEC_T38_EXT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_FAX_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_CODEC_T38_INT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_FAX_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_APM_FXO_EXT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_APM_FXO)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO_EXT)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+endif
+
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO)),y)
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G729_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G7231_SUPPORT=1
+BRCM_DSP_CODEC_DEFINES += -DXCFG_G726_SUPPORT=1
+endif
+
+
+#
+# Definition of the number of voice channels supported based on the specific
+# application being created.
+#
+
+ifeq ($(strip $(BRCM_DSP_HYBRID)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=1 -DNUM_FXO_CHANNELS=0
+else
+ifeq ($(strip $(BRCM_DSP_HYBRID_EXT)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=1 -DNUM_FXO_CHANNELS=0
+else
+ifeq ($(strip $(BRCM_DSP_APM_FXO)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=0 -DNUM_FXO_CHANNELS=1
+else
+ifeq ($(strip $(BRCM_DSP_APM_FXO_EXT)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=0 -DNUM_FXO_CHANNELS=1
+else
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=1 -DNUM_FXO_CHANNELS=1
+else
+ifeq ($(strip $(BRCM_DSP_HYBRID_FXO_EXT)), y)
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=2 -DNUM_TDM_VOICE_CHANNELS=1 -DNUM_FXO_CHANNELS=1
+else
+BRCM_DSP_CHAN_DEFINES = -DNUM_APM_VOICE_CHANNELS=0 -DNUM_TDM_VOICE_CHANNELS=0 -DNUM_FXO_CHANNELS=0
+endif
+endif
+endif
+endif
+endif
+endif
+
+export BRCM_DSP_CODEC_DEFINES
+export BRCM_DSP_CHAN_DEFINES
+export BRCM_DSP_FXO
+export XCHANGE_BUILD_APP=Bcm$(BRCM_CHIP)$(BRCM_DSP_HAL)$(BRCM_DSP_HAL_EXTENSION)
+export XCHANGE_DSP_APP_EXTENSION
+export BRCM_DSP_HAL_EXTENSION
+BRCM_RELEASETAG := $(BRCM_RELEASETAG).$(XCHANGE_DSP_APP)
+
+# If no codec is selected, build G.711 load.
+# Any XCHANGE_BUILD_APP directory would be OK
+# because G.711 is included with all the voice DSP images.
+ifneq ($(strip $(BUILD_VODSL)),)
+ifeq ($(strip $(XCHANGE_DSP_APP)),)
+export XCHANGE_BUILD_APP=Bcm$(BRCM_CHIP)gw
+export XCHANGE_DSP_APP=g711
+BRCM_RELEASETAG := $(BRCM_RELEASETAG).g711
+endif
+endif
+
+ifeq ($(strip $(BRCM_MIPS_ONLY_BUILD)),y)
+export XCHANGE_BUILD_APP=Bcm$(BRCM_CHIP)lv
+BRCM_DSP_HAL := lv
+BRCM_DSP_HAL_EXTENSION :=
+XCHANGE_DSP_APP_EXTENSION=
+endif
+
+ifeq ($(strip $(BRCM_VODSL_DUAL_3341)),y)
+BRCM_RELEASETAG := $(BRCM_RELEASETAG).dual3341
+endif
+
+#Set up ADSL standard
+export ADSL=$(BRCM_ADSL_STANDARD)
#Set up ADSL_PHY_MODE {file | obj}
export ADSL_PHY_MODE=file
$(OPENSOURCE_DIR)/net-snmp \
$(OPENSOURCE_DIR)/ftpd \
$(OPENSOURCE_DIR)/libcreduction \
- $(OPENSOURCE_DIR)/busybox \
- $(OPENSOURCE_DIR)/dproxy \
- $(OPENSOURCE_DIR)/httpc \
- $(OPENSOURCE_DIR)/mpd
+ $(OPENSOURCE_DIR)/busybox
#In future, we need to add soap when it
#is decoupled from cli
-# Andy porting from 2.21.5, 2005/04/14
-export BROADCOM_DIR=$(USERAPPS_DIR)/broadcom
-NEED_CHG_ACCESSREMOTE = "0"
-HTML_DIR = $(BROADCOM_DIR)/cfm/html.NETGEAR
-NEED_MOVE = "0"
export BROADCOM_DIR=$(USERAPPS_DIR)/broadcom
SUBDIRS_BROADCOM = $(BROADCOM_DIR)/nvram \
$(BROADCOM_DIR)/cfm \
- $(BROADCOM_DIR)/upnp/router/upnp \
- $(BROADCOM_DIR)/nas \
- $(BROADCOM_DIR)/wlctl \
- $(BROADCOM_DIR)/wlenablectrl \
- $(BROADCOM_DIR)/autoprovisionlan \
- $(BROADCOM_DIR)/atmctl \
+ $(BROADCOM_DIR)/upnp/router/upnp \
+ $(BROADCOM_DIR)/nas \
+ $(BROADCOM_DIR)/wlctl \
+ $(BROADCOM_DIR)/vodsl \
+ $(BROADCOM_DIR)/atmctl \
$(BROADCOM_DIR)/adslctl \
- $(BROADCOM_DIR)/netctl \
- $(BROADCOM_DIR)/dnsprobe \
- $(BROADCOM_DIR)/igmp \
- $(BROADCOM_DIR)/dhcpr \
+ $(BROADCOM_DIR)/stupid-ftpdmips\
+ $(BROADCOM_DIR)/sendmail\
+ $(BROADCOM_DIR)/bcmcrypto \
+ $(BROADCOM_DIR)/LPRng/src \
+ $(BROADCOM_DIR)/rcamdmips \
+ $(BROADCOM_DIR)/netctl \
+ $(BROADCOM_DIR)/dnsprobe \
+ $(BROADCOM_DIR)/igmp \
+ $(BROADCOM_DIR)/dhcpr \
$(BROADCOM_DIR)/sntp \
$(BROADCOM_DIR)/ippd \
$(BROADCOM_DIR)/ddnsd \
$(BROADCOM_DIR)/ethctl \
- $(BROADCOM_DIR)/hotplug \
- $(BROADCOM_DIR)/epittcp \
- $(BROADCOM_DIR)/snmp \
- $(BROADCOM_DIR)/ses
+ $(BROADCOM_DIR)/hotplug \
+ $(BROADCOM_DIR)/epittcp \
+ $(BROADCOM_DIR)/snmp \
+ $(BROADCOM_DIR)/ses
SUBDIRS_APP = $(SUBDIRS_BROADCOM) $(SUBDIRS_OPENSOURCE)
SUBDIRS = $(foreach dir, $(SUBDIRS_APP), $(shell if [ -d "$(dir)" ]; then echo $(dir); fi))
-OPENSOURCE_APPS = pvc2684ctl pvc2684d brctl pppd udhcp iptables ebtables httpc mpd \
- reaim libosip2 siproxd snmp zebra bftpd busybox dproxy iproute2 gdbserver
-
-BROADCOM_APPS = nvram cfm upnp nas wlctl wlenablectrl autoprovisionlan atmctl adslctl netctl dnsprobe \
- igmp dhcpr diagapp sntp ddnsd ilmi ippd hotplug ethctl epittcp
-
-ifneq ($(strip $(BUILD_SIGNATURE_RSA)),)
- export BUILD_SIGNATURE_RSA
-endif
+OPENSOURCE_APPS = pvc2684ctl pvc2684d brctl pppd udhcp iptables ebtables \
+ reaim tc libosip2 siproxd snmp zebra bftpd busybox gdbserver
+BROADCOM_APPS = nvram cfm upnp nas wlctl vodsl atmctl adslctl stupid-ftpd sendmail bcmcrypto lpd netctl dnsprobe \
+ igmp dhcpr diagapp sntp ddnsd ilmi ippd hotplug ethctl epittcp ses snmp
LIBC_OPTIMIZATION = libcreduction
-ifneq ($(strip $(BUILD_PPP_AUTH_LIMIT)),)
- export BUILD_PPP_AUTH_LIMIT
-endif
-
BUSYBOX_DIR = $(OPENSOURCE_DIR)/busybox
BRCMAPPS = $(BROADCOM_APPS) $(OPENSOURCE_APPS) $(LIBC_OPTIMIZATION)
cp -f $(KERNEL_DIR)/arch/mips/defconfig $(KERNEL_DIR)/.config; \
$(MAKE) oldconfig; $(MAKE); $(MAKE) modules_install
+#2006.8.30 Yau change defconfig to usb_defconfig
+#and copy ~/kernel/linux/.config to ~/kernel/linux/arch/mips/usb_defconfig
kernelbuild:
ifeq ($(wildcard $(KERNEL_DIR)/vmlinux),)
@cd $(INC_KERNEL_BASE); \
fi
$(GENDEFCONFIG_CMD) $(PROFILE_PATH)
cd $(KERNEL_DIR); \
- cp -f $(KERNEL_DIR)/arch/mips/defconfig $(KERNEL_DIR)/.config; \
+ cp -f $(KERNEL_DIR)/arch/mips/usb_defconfig $(KERNEL_DIR)/.config; \
$(MAKE) oldconfig; $(MAKE)
else
+ cp -f $(KERNEL_DIR)/arch/mips/usb_defconfig $(KERNEL_DIR)/.config; \
cd $(KERNEL_DIR); $(MAKE)
endif
endif
cfm:
-ifneq ($(strip $(BUILD_SIGNATURE_RSA)),)
- $(MAKE) -C $(BROADCOM_DIR)/cfm/web/sigmak
-endif
$(MAKE) -C $(BROADCOM_DIR)/cfm $(BUILD_CFM)
else
cfm:
endif
ifneq ($(strip $(BRCM_KERNEL_NETQOS)),)
-iproute2:
+tc:
cd $(OPENSOURCE_DIR); (tar xkfj iproute2.tar.bz2 2> /dev/null || true)
$(MAKE) -C $(OPENSOURCE_DIR)/iproute2 dynamic
else
-
-ifneq ($(strip $(BRCM_KERNEL_DN_IPQOS)),)
-iproute2:
- cd $(OPENSOURCE_DIR); (tar xkfj iproute2.tar.bz2 2> /dev/null || true)
- $(MAKE) -C $(OPENSOURCE_DIR)/iproute2 dynamic
-else
-iproute2:
-endif#BRCM_KERNEL_DN_IPQOS
-
-endif#BRCM_KERNEL_NETQOS
+tc:
+endif
ifneq ($(strip $(BUILD_GDBSERVER)),)
gdbserver:
ilmi:
endif
+ifneq ($(strip $(BUILD_VODSL)),)
+vodsl:
+ $(MAKE) -C $(BROADCOM_DIR)/vodsl $(BUILD_VODSL)
+else
+vodsl:
+endif
# Leave it for the future when soap server is decoupled from cfm
ifneq ($(strip $(BUILD_SOAP)),)
wlctl:
endif
-ifneq ($(strip $(WLAN_ENABLE_CTRL_BUTTON)),)
-wlenablectrl:
- $(MAKE) -C $(BROADCOM_DIR)/wlenablectrl dynamic
-else
-wlenablectrl:
-endif
-
#Always compile Ethernet control utility
ethctl:
$(MAKE) -C $(BROADCOM_DIR)/ethctl dynamic
zebra:
endif
-
-ifneq ($(strip $(ODM_AUTO_PROVISION_LAN)),)
-autoprovisionlan:
- $(MAKE) -C $(BROADCOM_DIR)/autoprovisionlan dynamic
-else
-autoprovisionlan:
-endif
-
-
ifneq ($(strip $(BUILD_ATMCTL)),)
atmctl:
$(MAKE) -C $(BROADCOM_DIR)/atmctl $(BUILD_ATMCTL)
adslctl:
endif
+#BUILD_INFOSVR=dynamic
+#infosvr:
+# $(MAKE) -C $(BROADCOM_DIR)/infosvr $(BUILD_INFOSVR)
+
+#2005_07_28_Roly
+#(add)
+BUILD_STUPID_FTPD=dynamic
+stupid-ftpd:
+ $(MAKE) -C $(BROADCOM_DIR)/stupid-ftpdmips $(BUILD_STUPID_FTPD)
+
+#2005_07_28_Roly
+#(add)
+BUILD_SENDMAIL=dynamic
+sendmail:
+ $(MAKE) -C $(BROADCOM_DIR)/sendmail $(BUILD_SENDMAIL)
+
+#2005_08_01_Roly
+#(add)
+BUILD_BCMCRYPTO=dynamic
+bcmcrypto:
+ $(MAKE) -C $(BROADCOM_DIR)/bcmcrypto $(BUILD_BCMCRYPTO)
+
+#2005_08_02_Roly
+#(add)
+BUILD_LPD=dynamic
+lpd:
+ $(MAKE) -C $(BROADCOM_DIR)/LPRng/src $(BUILD_LPD)
+
+#2005_08_04_Roly
+#(add)
+BUILD_RCAMD=dynamic
+rcamd:
+ $(MAKE) -C $(BROADCOM_DIR)/rcamdmips $(BUILD_RCAMD)
+
+
ifeq ($(strip $(BUILD_CFM_CLI)),y)
ifneq ($(strip $(BUILD_NETCTL)),)
netctl:
bftpd:
endif
-ifneq ($(strip $(BUILD_HTTPC)),)
-httpc:
- $(MAKE) -C $(OPENSOURCE_DIR)/httpc $(BUILD_HTTPC)
-else
-httpc:
-endif
-
-ifneq ($(strip $(BUILD_MPD)),)
-mpd:
- $(MAKE) -C $(OPENSOURCE_DIR)/mpd $(BUILD_MPD)
-else
-mpd:
-endif
-
-
ifneq ($(strip $(BUILD_DDNSD)),)
ddnsd:
$(MAKE) -C $(BROADCOM_DIR)/ddnsd $(BUILD_DDNSD)
ippd:
endif
-# Start: Andy porting from 2.21.5, 2005/04/14
-ifneq ($(strip $(BUILD_DPROXY)),)
-dproxy:
- $(MAKE) -C $(OPENSOURCE_DIR)/dproxy $(BUILD_DPROXY)
-else
-dproxy:
-endif
-# End: Andy porting from 2.21.5, 2005/04/14
-
hosttools:
-ifneq ($(strip $(BUILD_SIGNATURE_RSA)),)
- $(MAKE) -C $(HOSTTOOLS_DIR)/sigmak
-endif
$(MAKE) -C $(HOSTTOOLS_DIR)
buildimage: $(KERNEL_DIR)/vmlinux
su --command="cd $(TARGETS_DIR); ./buildFS"
-# find $(TARGET_FS) -name CVS | xargs rm -rf
ifeq ($(strip $(BRCM_KERNEL_ROOTFS)),squashfs)
#$(HOSTTOOLS_DIR)/mksquashfs $(TARGET_FS) $(PROFILE_DIR)/rootfs.img -noappend -be -always-use-fragments -gzip
$(HOSTTOOLS_DIR)/mksquashfs $(TARGET_FS) $(PROFILE_DIR)/rootfs.img -noappend -be -lzma -no-fragments -noI
$(STRIP) --remove-section=.note --remove-section=.comment vmlinux; \
$(OBJCOPY) -O binary vmlinux vmlinux.bin; \
$(HOSTTOOLS_DIR)/cmplzma -k -2 vmlinux vmlinux.bin vmlinux.lz;\
- $(HOSTTOOLS_DIR)/bcmImageBuilder --output $(FS_KERNEL_IMAGE_NAME) --board $(BRCM_BOARD_ID) --blocksize $(BRCM_FLASHBLK_SIZE) --cfefile $(CFE_FILE) --rootfsfile rootfs.img --kernelfile vmlinux.lz; \
- $(HOSTTOOLS_DIR)/bcmImageBuilder --output $(CFE_FS_KERNEL_IMAGE_NAME) --board $(BRCM_BOARD_ID) --blocksize $(BRCM_FLASHBLK_SIZE) --cfefile $(CFE_FILE) --rootfsfile rootfs.img --kernelfile vmlinux.lz --include-cfe; \
- mkdir -p $(IMAGES_DIR)
- cp $(PROFILE_DIR)/$(FS_KERNEL_IMAGE_NAME) $(IMAGES_DIR)/$(FS_KERNEL_IMAGE_NAME)_$(BRCM_RELEASETAG)-$(shell date '+%y%m%d_%H%M')
- echo
- echo -e "Done! Image $(PROFILE) has been built in $(IMAGES_DIR)."
+ $(HOSTTOOLS_DIR)/bcmImageBuilder --output $(FS_KERNEL_IMAGE_NAME) --chip $(BRCM_CHIP) --board $(BRCM_BOARD_ID) --blocksize $(BRCM_FLASHBLK_SIZE) --cfefile $(CFE_FILE) --rootfsfile rootfs.img --kernelfile vmlinux.lz; \
+ $(HOSTTOOLS_DIR)/bcmImageBuilder --output $(CFE_FS_KERNEL_IMAGE_NAME) --chip $(BRCM_CHIP) --board $(BRCM_BOARD_ID) --blocksize $(BRCM_FLASHBLK_SIZE) --cfefile $(CFE_FILE) --rootfsfile rootfs.img --kernelfile vmlinux.lz --include-cfe; \
+ $(HOSTTOOLS_DIR)/createimg -b $(BRCM_BOARD_ID) -n $(BRCM_NUM_MAC_ADDRESSES) -m $(BRCM_BASE_MAC_ADDRESS) -i $(CFE_FS_KERNEL_IMAGE_NAME) -o $(FLASH_IMAGE_NAME); \
+ $(HOSTTOOLS_DIR)/addvtoken $(FLASH_IMAGE_NAME) $(FLASH_IMAGE_NAME).w
+ @mkdir -p $(IMAGES_DIR)
+ @cp $(PROFILE_DIR)/$(FS_KERNEL_IMAGE_NAME) $(IMAGES_DIR)/$(FS_KERNEL_IMAGE_NAME)_$(BRCM_RELEASETAG)-$(shell date '+%y%m%d_%H%M')
+ @echo
+ @echo -e "Done! Image $(PROFILE) has been built in $(IMAGES_DIR)."
else
cd $(PROFILE_DIR); \
cp $(KERNEL_DIR)/vmlinux . ; \
$(MAKE) -C $(KERNEL_DIR) mrproper
rm -f $(KERNEL_DIR)/arch/mips/defconfig
rm -f $(HOSTTOOLS_DIR)/lzma/decompress/*.o
- rm -f $(TARGETS_DIR)/*.o $(TARGETS_DIR)/.*.flags $(TARGETS_DIR)/.depend
rm -rf $(XCHANGE_DIR)/dslx/lib/LinuxKernel
rm -rf $(XCHANGE_DIR)/dslx/obj/LinuxKernel
rm -f $(PROFILE_DIR)/$(FS_KERNEL_IMAGE_NAME)
rm -f $(PROFILE_DIR)/$(CFE_FS_KERNEL_IMAGE_NAME)
rm -f $(PROFILE_DIR)/$(FLASH_IMAGE_NAME)
+ rm -f $(PROFILE_DIR)/$(FLASH_IMAGE_NAME).w
rm -fr $(PROFILE_DIR)/modules
find targets -name vmlinux -print -exec rm -f "{}" ";"
su --command="rm -fr $(TARGET_FS)"
export BRCM_VERSION BRCM_RELEASE BRCM_EXTRAVERSION BRCM_RELEASETAG BRCM_BOARD RUN_NOISE \
INC_KERNEL_BASE KERNEL_DIR BRCMDRIVERS_DIR USERAPPS_DIR HOSTTOOLS_DIR TARGETS_DIR DEFAULTCFG_DIR XCHANGE_DIR FSSRC_DIR BUSYBOX_DIR \
PROFILE_DIR INSTALL_DIR LINUXDIR INC_BRCMDRIVER_PUB_PATH INC_BRCMDRIVER_PRIV_PATH INC_BRCMBOARDPARMS_PATH INC_ENDPOINT_PATH INC_ADSLDRV_PATH BROADCOM_CFM_DIR INC_BRCMCFM_PATH BRCM_KERNEL_ROOTFS BRCMAPPS BRCM_MIPS_ONLY_BUILD \
- BRCM_UCLIBC CROSS_COMPILE TOOLCHAIN AS LD CC CXX AR NM STRIP SSTRIP OBJCOPY OBJDUMP RANLIB LIB_PATH LIBCDIR LIBDIR \
+ BRCM_UCLIBC CROSS_COMPILE TOOLCHAIN AS LD CC CXX AR NM STRIP SSTRIP OBJCOPY OBJDUMP RANLIB LIB_PATH LIBCDIR LIBDIR \
BUILD_BR2684CTL BUILD_PVC2684CTL BUILD_RT2684D BUILD_BRCTL BUILD_CFM BUILD_CFM_CLI BUILD_IPTABLES BUILD_EBTABLES BUILD_VODSL BUILD_SIPROXD \
BRCM_APP_PHONE BUILD_SOAP BUILD_SOAP_VER BRCM_DSP_CODEC_G711 BRCM_DSP_CODEC_G723 BRCM_DSP_CODEC_G726 BRCM_DSP_CODEC_G729 BRCM_MIPS_ONLY_BUILD \
- DEFAULT_USB_PID BRCM_DSP_CODEC_G7xx BRCM_DSP_PCM BRCM_DSP_HYBRID BRCM_DSP_HYBRID_EXT BRCM_DSP_APM_FXO BRCM_DSP_APM_FXO_EXT BRCM_DSP_HYBRID_FXO \
- BRCM_DSP_HYBRID_FXO_EXT BRCM_DSP_CODEC_T38_EXT BRCM_DSP_CODEC_T38_INT BRCM_DSP_HAL BRCM_DSP_HAL_EXTENSION XCHANGE_DSP_APP_EXTENSION BRCM_VOICE_COUNTRY_JAPAN BRCM_VOICE_GLOBAL_CFLAGS \
- BUILD_PPPD BUILD_REAIM BRCM_KERNEL_NETQOS BUILD_GDBSERVER BUILD_UDHCP BUILD_DHCPR BUILD_UPNP BUILD_SNMP BUILD_NAS BUILD_WLCTL BUILD_BUSYBOX BUILD_DNSPROBE BUILD_SLACTEST BUILD_VCONFIG BUILD_ETHWAN BUILD_PPP_DOMAIN_SUFFIX \
- BUILD_ZEBRA BUILD_ATMCTL BUILD_ADSLCTL BUILD_NETCTL BUILD_IGMP BRCM_PTHREADS BUILD_DIAGAPP \
+ BRCM_DSP_CODEC_G7xx BRCM_DSP_PCM BRCM_DSP_HYBRID BRCM_DSP_HYBRID_EXT BRCM_DSP_APM_FXO BRCM_DSP_APM_FXO_EXT BRCM_DSP_HYBRID_FXO \
+ BRCM_DSP_HYBRID_FXO_EXT BRCM_DSP_CODEC_T38_EXT BRCM_DSP_CODEC_T38_INT BRCM_DSP_HAL BRCM_DSP_HAL_EXTENSION XCHANGE_DSP_APP_EXTENSION BRCM_VOICE_COUNTRY_JAPAN BRCM_VOICE_GLOBAL_CFLAGS \
+ BUILD_PPPD BUILD_REAIM BRCM_KERNEL_NETQOS BUILD_GDBSERVER BUILD_UDHCP BUILD_DHCPR BUILD_UPNP BUILD_SNMP BUILD_NAS BUILD_WLCTL BUILD_BUSYBOX BUILD_DNSPROBE BUILD_SLACTEST BUILD_VCONFIG BUILD_ETHWAN \
+ BUILD_ZEBRA BUILD_ATMCTL BUILD_ADSLCTL BUILD_STUPID_FTPD BUILD_SENDMAIL BUILD_BCMCRYPTO BUILD_LPD BUILD_RCAMD BUILD_NETCTL BUILD_IGMP BRCM_PTHREADS BUILD_DIAGAPP \
BUILD_CFM_TELNETD BUILD_CFM_SSHD BUILD_SSHD_MIPS_GENKEY BUILD_FTPD BRCM_DRIVER_PCI \
BRCM_PSI_VERSION WEB_POPUP BUILD_DIR BUILD_DDNSD BUILD_SNTP BUILD_TOD BUILD_IPPD BUILD_VCONFIG JTAG_KERNEL_DEBUG \
- BUILD_EPITTCP BUILD_DPROXY BUILD_PPPDEFAULT_GW BUILD_MTU_LAN_PPP \
- BRCM_DEFAULT_HOST_NAME DEFAULT_WLAN_ESSID BUILD_PPP_IPEXTENSION BRCM_DRIVER_PHONE \
- BUILD_EPITTCP BUILD_NVRAM BUILD_SES BUILD_BRCM_VLAN BRCM_SNMP BRCM_LDX_APP BUILD_HTTPC BUILD_STATIC_DNS \
- DISABLE_IGMP_SNOOPING_OPTION BUILD_PARTCONF BUILD_USER_ACCOUNT BRCM_KERNEL_ATMQOS \
- BRCM_KERNEL_DN_IPQOS ODM_WANIP_GWNAME
-
-export CONFIG_NET_SCH_CBQ CONFIG_NET_SCH_CSZ CONFIG_NET_SCH_HPFQ CONFIG_NET_SCH_HFCS CONFIG_NET_SCH_ATM \
- CONFIG_NET_SCH_PRIO CONFIG_NET_SCH_RED CONFIG_NET_SCH_SFQ CONFIG_NET_SCH_TEQL CONFIG_NET_SCH_TBF \
- CONFIG_NET_SCH_GRED CONFIG_NET_SCH_DSMARK CONFIG_NET_SCH_INGRESS CONFIG_NET_QOS CONFIG_NET_ESTIMATOR \
- CONFIG_NET_CLS CONFIG_NET_CLS_TCINDEX CONFIG_NET_CLS_ROUTE4 CONFIG_NET_CLS_ROUTE CONFIG_NET_CLS_FW \
- CONFIG_NET_CLS_U32 CONFIG_NET_CLS_RSVP CONFIG_NET_CLS_RSVP6 CONFIG_NET_CLS_POLICE ODM_LANG_NETGEAR \
- ODM_MULTI_LANG BUILD_BLOCK_MULTICAST_FLOOD BUILD_MPD
-
-export BRCM_KERNEL_NF_NAT_ALG_SIP BUILD_NSASOFT_TRAFFIC_EMULATOR BUILD_AUTO_PROVISION_ON_WAN ODM_AUTO_PROVISION_LAN BUILD_SYS_ALG BUILD_SYS_VPN_ALG BUILD_SYS_SIP_ALG
-export BUILD_PPP_ALWAYS_RETRY
+ BUILD_EPITTCP BUILD_NVRAM BUILD_SES BUILD_BRCM_VLAN BRCM_SNMP BRCM_LDX_APP \
+ BRCM_VODSL_DUAL_3341