www.usr.com/support/gpl/USR9107_release.1.4.tar.gz
[bcm963xx.git] / hostTools / scripts / gendefconfig
1 #!/bin/bash
2
3 #****************************************************************************
4 #
5 #  Copyright (c) 2001, 2002, 2003, 2004  Broadcom Corporation
6 #  All Rights Reserved
7 #  No portions of this material may be reproduced in any form without the
8 #  written permission of:
9 #          Broadcom Corporation
10 #          16251 Laguna Canyon Road
11 #          Irvine, California 92618
12 #  All information contained in this document is Broadcom Corporation
13 #  company private, proprietary, and trade secret.
14 #
15 #****************************************************************************
16
17 driver_setup ()
18 {
19
20   BRCM_DRIVER_NAME=BRCM_DRIVER_$1
21   eval BRCM_DRIVER_VAL=\$$BRCM_DRIVER_NAME
22   LINUX_CONFIG_NAME=CONFIG_BCM_"$2"
23   LINUX_IMPL_NAME=CONFIG_BCM9"$BRCM_CHIP"_"$2"_IMPL
24
25   if [ "$BRCM_DRIVER_VAL" != "" ]; then
26      SEDCMD="$SEDCMD -e 's/# $LINUX_CONFIG_NAME is not set/$LINUX_CONFIG_NAME="$BRCM_DRIVER_VAL"/'"
27   fi
28   SEDCMD="$SEDCMD -e 's/# "$LINUX_IMPL_NAME"/"$LINUX_CONFIG_NAME"_IMPL/'"
29 }
30
31
32 netfilter_setup ()
33 {
34
35   SEDCMD="$SEDCMD -e 's/# CONFIG_IP_NF_"$1" is not set/CONFIG_IP_NF_"$1"="$2"/'"
36
37 }
38
39 general_setup ()
40 {
41
42   SEDCMD="$SEDCMD -e 's/# "$1" is not set/"$1"="$2"/'"
43
44 }
45
46 TEMPLATE=$HOSTTOOLS_DIR/scripts/defconfig-bcm.template
47 #TEMPLATE=defconfig-bcm.template
48
49 . $1
50
51 ############################################################
52 #       Driver config generation
53 ############################################################
54
55 SEDCMD="$SEDCMD -e 's/# CONFIG_BCM9"$BRCM_CHIP" is not set/CONFIG_BCM9"$BRCM_CHIP"=y/'"
56 SEDCMD="$SEDCMD -e 's/# CONFIG_BCM_BOARD is not set/CONFIG_BCM_BOARD=y/'"
57 SEDCMD="$SEDCMD -e 's/# CONFIG_BCM9"$BRCM_CHIP"_BOARD_IMPL/CONFIG_BCM_BOARD_IMPL/'"
58
59 driver_setup "ATM" "ATMAPI"
60
61 driver_setup "ATM" "BLAA"
62
63 # 63xx Chip ATM Diagnostic
64 if [ "$BUILD_DIAGAPP" != "" ]; then
65    general_setup CONFIG_BCM_ATMTEST $BRCM_DRIVER_ATM
66 fi
67 SEDCMD="$SEDCMD -e 's/# CONFIG_BCM9"$BRCM_CHIP"_ATMTEST_IMPL/CONFIG_BCM_ATMTEST_IMPL/'"
68
69 driver_setup "ADSL" "ADSL"
70
71 driver_setup "ETHERNET" "ENET"
72
73 driver_setup "USB" "USB"
74
75 driver_setup "WIRELESS" "WLAN"
76 if [ "$BRCM_DRIVER_WIRELESS" != "" ]; then
77    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_RADIO is not set/CONFIG_NET_RADIO=y/'"
78    SEDCMD="$SEDCMD -e 's/# CONFIG_HOTPLUG is not set/CONFIG_HOTPLUG=y/'"
79    SEDCMD="$SEDCMD -e 's/# CONFIG_SYSFS is not set/CONFIG_SYSFS=y/'"   
80 if [ "$BRCM_CHIP" = "6348" ]; then
81    SEDCMD="$SEDCMD -e 's/# CONFIG_PCI is not set/CONFIG_PCI=y/'"
82 fi
83 fi
84
85 if [ "$BRCM_CHIP" = "6348" ]; then
86 driver_setup "PCI" "PCI"
87 if [ "$BRCM_DRIVER_PCI" != "" ]; then
88    SEDCMD="$SEDCMD -e 's/# CONFIG_PCI is not set/CONFIG_PCI=y/'"
89 fi
90 fi
91
92 if [ "$LINUX_DRIVER_USB_HOST" != "" ]; then
93    SEDCMD="$SEDCMD -e 's/# CONFIG_USB is not set/CONFIG_USB=y/'"
94    SEDCMD="$SEDCMD -e 's/# CONFIG_USB_OHCI_HCD is not set/CONFIG_USB_OHCI_HCD=y/'"
95    SEDCMD="$SEDCMD -e 's/# CONFIG_PCI is not set/CONFIG_PCI=y/'"
96    SEDCMD="$SEDCMD -e 's/# CONFIG_USB_PRINTER is not set/CONFIG_USB_PRINTER=y/'"
97 if [ "$LINUX_DRIVER_CDCETHER" != "" ]; then
98    SEDCMD="$SEDCMD -e 's/# CONFIG_USB_USBNET is not set/CONFIG_USB_USBNET=y/'"
99    SEDCMD="$SEDCMD -e 's/# CONFIG_USB_CDCETHER is not set/CONFIG_USB_CDCETHER=y/'"
100 fi
101 fi
102
103 driver_setup "VDSL" "VDSL"
104
105 driver_setup "PHONE" "ENDPOINT"
106
107 driver_setup "BCMPROF" "BCMPROF"
108
109 driver_setup "HPNA" "HPNA"
110
111 driver_setup "SECURITY" "SECURITY"
112
113 driver_setup "PROCFS" "PROCFS"
114
115 driver_setup "SERIAL" "SERIAL"
116
117 # CFI Not needed anymore and all flash sectores used for rootfs are treated as ROM
118 # CFI only used by JFFS2
119 if [ "$BRCM_KERNEL_ROOTFS" = "squashfs" -o "$BRCM_KERNEL_ROOTFS" = "cramfs" ]; then
120  
121  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_BLOCK_RO is not set/CONFIG_MTD_BLOCK_RO=y/'"
122  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_BCM963XX is not set/CONFIG_MTD_BCM963XX=y/'"
123  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_ROM is not set/CONFIG_MTD_ROM=y/'"
124  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_COMPLEX_MAPPINGS is not set/CONFIG_MTD_COMPLEX_MAPPINGS=y/'"
125
126 elif [ "$BRCM_KERNEL_ROOTFS" = "jffs2" ]; then
127
128  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_BLOCK is not set/CONFIG_MTD_BLOCK=y/'"
129  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_PARTITIONS is not set/CONFIG_MTD_PARTITIONS=y/'"
130  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI is not set/CONFIG_MTD_CFI=y/'"
131  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_JEDECPROBE is not set/CONFIG_MTD_JEDECPROBE=y/'"
132  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_GEN_PROBE is not set/CONFIG_MTD_GEN_PROBE=y/'"
133  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_ADV_OPTIONS is not set/CONFIG_MTD_CFI_ADV_OPTIONS=y/'"
134  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_NOSWAP is not set/CONFIG_MTD_CFI_NOSWAP=y/'"
135  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_B1 is not set/CONFIG_MTD_CFI_B1=y/'"
136  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_B2 is not set/CONFIG_MTD_CFI_B2=y/'"
137  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_I2 is not set/CONFIG_MTD_CFI_I1=y/'"
138  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_I2 is not set/CONFIG_MTD_CFI_I2=y/'"
139  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_CFI_AMDSTD is not set/CONFIG_MTD_CFI_AMDSTD=y/'"
140 # Change Mbytes to bytes in Hex
141  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_PHYSMAP is not set/CONFIG_MTD_PHYSMAP=y/'"
142  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_PHYSMAP_START is not set/CONFIG_MTD_PHYSMAP_START=BFC00000/'"
143  BRCM_FLASH_SIZE=$(($BRCM_FLASH_SIZE*100000))
144  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_PHYSMAP_LEN is not set/CONFIG_MTD_PHYSMAP_LEN="$BRCM_FLASH_SIZE"/'"
145  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_PHYSMAP_BUSWIDTH is not set/CONFIG_MTD_PHYSMAP_BUSWIDTH=2/'"
146  SEDCMD="$SEDCMD -e 's/# CONFIG_MTD_COMPLEX_MAPPINGS is not set/CONFIG_MTD_COMPLEX_MAPPINGS=y/'"
147 fi
148
149
150 ############################################################
151 #       Root file system config generation
152 ############################################################
153 if [ "$BRCM_KERNEL_ROOTFS" = "nfs" ]; then
154   SEDCMD="$SEDCMD -e 's/CONFIG_BCM_ENET=m/CONFIG_BCM_ENET=y/'"
155   SEDCMD="$SEDCMD -e 's?# CONFIG_ROOT_NFS_DIR is not set?CONFIG_ROOT_NFS_DIR=\"$PROFILE_DIR/fs\"?'"
156   SEDCMD="$SEDCMD -e 's/# CONFIG_ROOTFS_NFS is not set/CONFIG_ROOTFS_NFS=y/'"
157   SEDCMD="$SEDCMD -e 's/# CONFIG_NFS_FS is not set/CONFIG_NFS_FS=y/'"
158   SEDCMD="$SEDCMD -e 's/# CONFIG_ROOT_NFS is not set/CONFIG_ROOT_NFS=y/'"
159   SEDCMD="$SEDCMD -e 's/# CONFIG_IP_PNP is not set/CONFIG_IP_PNP=y/'"
160   SEDCMD="$SEDCMD -e 's/# CONFIG_SUNRPC is not set/CONFIG_SUNRPC=y/'"
161   SEDCMD="$SEDCMD -e 's/# CONFIG_LOCKD is not set/CONFIG_LOCKD=y/'"
162 elif [ "$BRCM_KERNEL_ROOTFS" = "jffs2" ]; then
163   SEDCMD="$SEDCMD -e 's/# CONFIG_ROOTFS_JFFS2 is not set/CONFIG_ROOTFS_JFFS2=y/'"
164   #ROOTDEV="root=/dev/mtdblock2 ro"
165   ROOTDEV="root=31:2 ro noinitrd"
166   SEDCMD="$SEDCMD -e 's?# CONFIG_ROOT_FLASHFS is not set?CONFIG_ROOT_FLASHFS=\"$ROOTDEV\"?'"
167   SEDCMD="$SEDCMD -e 's/# CONFIG_JFFS2_FS is not set/CONFIG_JFFS2_FS=y/'"
168   SEDCMD="$SEDCMD -e 's/# CONFIG_JFFS2_FS_DEBUG/CONFIG_JFFS2_FS_DEBUG/'"
169 else
170   if [ "$BRCM_KERNEL_ROOTFS" = "squashfs" ]; then
171      SEDCMD="$SEDCMD -e 's/# CONFIG_ROOTFS_SQUASHFS is not set/CONFIG_ROOTFS_SQUASHFS=y/'"
172      SEDCMD="$SEDCMD -e 's/# CONFIG_SQUASHFS is not set/CONFIG_SQUASHFS=y/'"
173      #SEDCMD="$SEDCMD -e 's/# CONFIG_ZLIB_FS_INFLATE is not set/CONFIG_ZLIB_FS_INFLATE=y/'"
174      SEDCMD="$SEDCMD -e 's/# CONFIG_LZMA_FS_INFLATE is not set/CONFIG_LZMA_FS_INFLATE=y/'"
175   fi
176   if [ "$BRCM_KERNEL_ROOTFS" = "cramfs" ]; then
177      SEDCMD="$SEDCMD -e 's/# CONFIG_ROOTFS_CRAMFS is not set/CONFIG_ROOTFS_CRAMFS=y/'"
178      SEDCMD="$SEDCMD -e 's/# CONFIG_CRAMFS is not set/CONFIG_CRAMFS=y/'"
179      SEDCMD="$SEDCMD -e 's/# CONFIG_LZMA_FS_INFLATE is not set/CONFIG_LZMA_FS_INFLATE=y/'"
180   fi  
181
182   #ROOTDEV="root=/dev/mtdblock0 ro noinitrd"
183   ROOTDEV="root=31:0 ro noinitrd"
184   SEDCMD="$SEDCMD -e 's?# CONFIG_ROOT_FLASHFS is not set?CONFIG_ROOT_FLASHFS=\"$ROOTDEV\"?'"
185 fi
186
187
188 ############################################################
189 #       Kernel Debug config generation
190 ############################################################
191
192 if [ "$BRCM_KERNEL_DEBUG" = "y" ]; then
193 SEDCMD="$SEDCMD -e 's/# CONFIG_REMOTE_DEBUG is not set/CONFIG_REMOTE_DEBUG=y/'"
194 SEDCMD="$SEDCMD -e 's/# CONFIG_GDB_CONSOLE is not set/CONFIG_GDB_CONSOLE=y/'"
195 SEDCMD="$SEDCMD -e 's/# CONFIG_KALLSYMS is not set/CONFIG_KALLSYMS=y/'"
196 SEDCMD="$SEDCMD -e 's/# CONFIG_KALLSYMS_EXTRA_PASS is not set/CONFIG_KALLSYMS_EXTRA_PASS=y/'"
197 fi
198
199
200 ############################################################
201 #       Kernel preemption
202 ############################################################
203
204 if [ "$BRCM_KERNEL_PREEMPT" = "y" ]; then
205 SEDCMD="$SEDCMD -e 's/# CONFIG_PREEMPT is not set/CONFIG_PREEMPT=y/'"
206 fi
207
208
209 ############################################################
210 #       Netfilter config generation
211 ############################################################
212 NETFILTER_MODULES="CONNTRACK FTP TFTP TALK H323 IRC PPTP IPSEC DTX8 WM PT IPTABLES \
213                   MATCH_STATE MATCH_LIMIT MATCH_MARK RTSP \
214                   FILTER MANGLE NAT NAT_NEEDED NAT_TALK NAT_H323 NAT_SNMP_BASIC NAT_IRC NAT_FTP NAT_TFTP \
215                   TARGET_MASQUERADE TARGET_REDIRECT TARGET_LOG TARGET_TCPMSS TARGET_FTOS TARGET_MARK"
216
217 NF_FIREWALL_MODULES="IPTABLES MATCH_STATE MATCH_LIMIT FILTER TARGET_TCPMSS" 
218
219 NF_MANGLE_MODULES="MANGLE MATCH_MARK TARGET_FTOS TARGET_MARK"
220
221 NF_NAT_MODULES="IPTABLES CONNTRACK NAT NAT_NEEDED TARGET_MASQUERADE TARGET_REDIRECT"
222
223 NF_PPPREMOTE_MODULES="IPTABLES CONNTRACK NAT NAT_NEEDED FILTER TARGET_TCPMSS MATCH_LIMIT" 
224
225 ALGS="FTP TFTP TALK H323 IRC PPTP IPSEC SNMP DTX8 WM PT RTSP"
226 FTP_ALG_MODULES="FTP NAT_FTP"
227 TFTP_ALG_MODULES="TFTP NAT_TFTP"
228 H323_ALG_MODULES="H323 NAT_H323"
229 IRC_ALG_MODULES="IRC NAT_IRC"
230 DTX8_ALG_MODULES="DTX8"
231 WM_ALG_MODULES="WM"
232 PT_ALG_MODULES="PT"
233 PPTP_ALG_MODULES="PPTP"
234 IPSEC_ALG_MODULES="IPSEC"
235 RTSP_ALG_MODULES="RTSP"
236 SNMP_ALG_MODULES="NAT_SNMP_BASIC"
237 TALK_ALG_MODULES="TALK NAT_TALK"
238
239
240 NF_LOG_MODULES="TARGET_LOG"
241
242
243 if [ "$BRCM_KERNEL_NETFILTER" != "" ]; then
244 #   for mod in $NETFILTER_MODULES; do
245 #      netfilter_setup $mod $BRCM_KERNEL_NETFILTER
246 #   done
247    # set up firewall related modules
248    if [ "$BRCM_KERNEL_NF_FIREWALL" != "" ]; then
249       for mod in $NF_FIREWALL_MODULES; do
250           netfilter_setup $mod $BRCM_KERNEL_NF_FIREWALL
251       done
252    fi
253
254    # set up packet mangling related modules
255    if [ "$BRCM_KERNEL_NF_MANGLE" != "" ]; then
256       for mod in $NF_MANGLE_MODULES; do
257           netfilter_setup $mod $BRCM_KERNEL_NF_MANGLE
258       done
259    fi
260
261    # set up NAT related modules
262    if [ "$BRCM_KERNEL_NF_NAT" != "" ]; then
263       # set up required NAT modules
264       for mod in $NF_NAT_MODULES; do
265           netfilter_setup $mod $BRCM_KERNEL_NF_NAT
266       done
267       #set up ALGs
268       for alg in $ALGS; do
269         ALG_NAME=BRCM_KERNEL_NF_NAT_ALG_"$alg"
270         ALG_MODULE_NAME="$alg"_ALG_MODULES
271         eval ALG_VAL=\$$ALG_NAME
272         eval ALG_MODULE_VAL=\$$ALG_MODULE_NAME
273         if [ "$ALG_VAL" != "" ]; then
274           for mod in $ALG_MODULE_VAL; do
275               netfilter_setup $mod $ALG_VAL
276           done
277         fi
278       done
279    fi
280
281    # set up logging module
282    if [ "$BRCM_KERNEL_NF_LOG" != "" ]; then
283       for mod in $NF_LOG_MODULES; do
284           netfilter_setup $mod $BRCM_KERNEL_NF_LOG
285       done
286    fi
287
288    # set up special remote access support modules in PPP IP extension mode
289    if [ "$BRCM_KERNEL_NF_PPPREMOTE" != "" ]; then
290       for mod in $NF_PPPREMOTE_MODULES; do
291           netfilter_setup $mod $BRCM_KERNEL_NF_PPPREMOTE
292       done
293    fi
294
295 fi
296
297 ############################################################
298 #       Cryptographic config generation
299 ############################################################
300 if [ "$BRCM_KERNEL_CRYPTO" != "" ]; then
301
302    # set up networking options
303    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_KEY is not set/CONFIG_NET_KEY=y/'"
304    SEDCMD="$SEDCMD -e 's/# CONFIG_INET_AH is not set/CONFIG_INET_AH=y/'"
305    SEDCMD="$SEDCMD -e 's/# CONFIG_INET_ESP is not set/CONFIG_INET_ESP=y/'"
306    SEDCMD="$SEDCMD -e 's/# CONFIG_XFRM_USER is not set/CONFIG_XFRM_USER=y/'"
307    
308    # set up cryptographic options
309    SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO is not set/CONFIG_CRYPTO=y/'"
310    if [ "$BRCM_KERNEL_CRYPTO_HMAC" != "" ]; then
311           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_HMAC is not set/CONFIG_CRYPTO_HMAC=y/'"
312    fi
313    if [ "$BRCM_KERNEL_CRYPTO_NULL" != "" ]; then
314           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_NULL is not set/CONFIG_CRYPTO_NULL=y/'"
315    fi
316    if [ "$BRCM_KERNEL_CRYPTO_MD5" != "" ]; then
317           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_MD5 is not set/CONFIG_CRYPTO_MD5=y/'"
318    fi
319    if [ "$BRCM_KERNEL_CRYPTO_SHA1" != "" ]; then
320           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_SHA1 is not set/CONFIG_CRYPTO_SHA1=y/'"
321    fi
322    if [ "$BRCM_KERNEL_CRYPTO_DES" != "" ]; then
323           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_DES is not set/CONFIG_CRYPTO_DES=y/'"
324    fi
325    if [ "$BRCM_KERNEL_CRYPTO_AES" != "" ]; then
326           SEDCMD="$SEDCMD -e 's/# CONFIG_CRYPTO_AES is not set/CONFIG_CRYPTO_AES=y/'"
327    fi
328 fi
329
330 ############################################################
331 #       Bridge Layer filter config generation
332 ############################################################
333 if [ "$BUILD_EBTABLES" != "" ]; then
334 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_NF_EBTABLES is not set/CONFIG_BRIDGE_NF_EBTABLES=y/'"
335 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_T_FILTER is not set/CONFIG_BRIDGE_EBT_T_FILTER=y/'"
336 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_BROUTE is not set/CONFIG_BRIDGE_EBT_BROUTE=y/'"
337 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_IP is not set/CONFIG_BRIDGE_EBT_IP=y/'"
338 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_VLAN is not set/CONFIG_BRIDGE_EBT_VLAN=y/'"
339 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_TIME is not set/CONFIG_BRIDGE_EBT_TIME=y/'"
340 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_MARK_T is not set/CONFIG_BRIDGE_EBT_MARK_T=y/'"
341 SEDCMD="$SEDCMD -e 's/# CONFIG_BRIDGE_EBT_FTOS_T is not set/CONFIG_BRIDGE_EBT_FTOS_T=y/'"
342 fi
343
344 ############################################################
345 #       IGMP PROXY filter config generation
346 ############################################################
347 if [ "$BUILD_IGMP" != "" ]; then
348 SEDCMD="$SEDCMD -e 's/# CONFIG_IP_MROUTE is not set/CONFIG_IP_MROUTE=y/'"
349 SEDCMD="$SEDCMD -e 's/# CONFIG_IP_MULTICAST is not set/CONFIG_IP_MULTICAST=y/'"
350 fi
351
352 ############################################################
353 #       Network QoS config generation
354 ############################################################
355 if [ "$BRCM_KERNEL_NETQOS" != "" ]; then
356    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_SCHED is not set/CONFIG_NET_SCHED=y/'"
357    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_SCH_CLK_JIFFIES is not set/CONFIG_NET_SCH_CLK_JIFFIES=y/'"
358    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_CLS is not set/CONFIG_NET_CLS=y/'"
359    SEDCMD="$SEDCMD -e 's/# CONFIG_NET_CLS_POLICE is not set/CONFIG_NET_CLS_POLICE=y/'"
360    general_setup CONFIG_NET_SCH_CBQ  $BRCM_KERNEL_NETQOS
361    general_setup CONFIG_NET_SCH_HTB  $BRCM_KERNEL_NETQOS
362    general_setup CONFIG_NET_SCH_PRIO $BRCM_KERNEL_NETQOS
363    general_setup CONFIG_NET_SCH_SFQ $BRCM_KERNEL_NETQOS
364    general_setup CONFIG_NET_CLS_FW $BRCM_KERNEL_NETQOS
365    general_setup CONFIG_NET_CLS_U32 $BRCM_KERNEL_NETQOS
366    general_setup CONFIG_NET_CLS_POLICE $BRCM_KERNEL_NETQOS
367 fi
368
369 ############################################################
370 #       VLAN config generation
371 ############################################################
372 if [ "$BUILD_VCONFIG" != "" ]; then
373 SEDCMD="$SEDCMD -e 's/# CONFIG_VLAN_8021Q is not set/CONFIG_VLAN_8021Q=y/'"
374 fi
375
376 ############################################################
377 #       WAN operation over Ethernet
378 ############################################################
379 if [ "$BUILD_ETHWAN" != "" ]; then
380 SEDCMD="$SEDCMD -e 's/# CONFIG_ETHWAN is not set/CONFIG_ETHWAN=y/'"
381 fi
382
383 ############################################################
384 #       PTHREADS support        
385 ############################################################
386 if [ "$BRCM_PTHREADS" != "" ]; then
387    general_setup CONFIG_BRCM_USING_PTHREADS $BRCM_PTHREADS
388 fi
389
390 gen="sed $SEDCMD $TEMPLATE"
391 #echo $gen
392 #eval $gen
393 eval $gen > $KERNEL_DIR/arch/mips/defconfig
394
395