1#
2# For a description of the syntax of this configuration file,
3# see Kconfig-language.txt
4#
5# Copyright (C) 2013, Broadcom Corporation. All Rights Reserved.
6# 
7# Permission to use, copy, modify, and/or distribute this software for any
8# purpose with or without fee is hereby granted, provided that the above
9# copyright notice and this permission notice appear in all copies.
10# 
11# THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES
12# WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF
13# MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY
14# SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
15# WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
16# OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
17# CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
18#
19
20mainmenu "Router Configuration"
21
22config CONFIG_NAT
23       bool "Network Address Translation (NAT) Support"
24       default y
25       help
26       Answer Y to configure this box as a NAT box.
27
28menu "Base Features"
29
30config CONFIG_RC
31       bool "Router control (rc)"
32       depends on CONFIG_NVRAM && CONFIG_SHARED && CONFIG_BUSYBOX
33       default y
34       help
35       rc is a compact replacement for traditional SysV init. rc
36       manages the execution of all daemons. Answer Y unless you have
37       configured busybox to provide SysV init functionality.
38
39config CONFIG_NVRAM
40       bool "NVRAM support"
41       default y
42       help
43       Answer Y for user mode NVRAM support.  The NVRAM support
44       library is used by several applications here and in the Options
45       menu, including rc, wlconf, httpd, upnp, nas, ses, and wcn.
46
47config CONFIG_NVRAM_UTILITY
48       bool "NVRAM Utility"
49       depends on CONFIG_NVRAM
50       default y
51       help
52       Utility for direct command-line access to NVRAM.
53
54config CONFIG_SHARED
55       bool "Shared functions"
56       default y
57       help
58       Answer Y for shared functions required by most of the base
59       features.
60
61config CONFIG_LIBBCM
62       bool "Broadcom shared library functions"
63       default y
64       help
65       Answer Y for shared functions for accesing Broadcom h/w
66
67config CONFIG_BUZZZ
68       bool "Broadcom BUZZZ Tool configuration"
69       default n
70       help
71       Answer Y for the BUZZZ configuration utility.
72
73config CONFIG_BUSYBOX
74       bool "BusyBox"
75       default y
76       help
77       BusyBox combines tiny versions of many common UNIX utilities into
78       a single small executable.
79
80config CONFIG_BUSYBOX_CONFIG
81       string "BusyBox default configuration"
82       depends on CONFIG_BUSYBOX
83       default "router"
84       help
85       Override the default BusyBox configuration. File must exist in busybox/configs.
86
87config CONFIG_WLCONF
88       bool "Wireless configuration"
89       depends on CONFIG_NVRAM && CONFIG_SHARED
90       default y
91       help
92       Answer Y for Broadcom wireless configuration support.
93
94config CONFIG_BRIDGE
95       bool "Ethernet bridging"
96       default y
97       help
98       Answer Y for the user mode Ethernet bridge configuration utility.
99
100config CONFIG_VLAN
101       bool "VLAN configuration"
102       default y
103       help
104       Answer Y for the user mode VLAN configuration utility.
105
106config CONFIG_HTTPD
107       bool "Web server"
108       depends on CONFIG_NVRAM && CONFIG_SHARED
109       default y
110       help
111       Answer Y for basic web configuration support.
112
113config CONFIG_WWW
114       bool "Web pages"
115       depends on CONFIG_HTTPD
116       help
117       Answer Y for additional web pages.
118
119config CONFIG_NETCONF
120       bool "Firewall configuration"
121       depends on (CONFIG_IPTABLES || CONFIG_LIBIPT) && CONFIG_NAT
122       default y
123       help
124       netconf is a compact, portable replacement for full iptables
125       support. It provides enough functionality to configure a basic
126       NAT firewall. Answer Y unless you plan on configuring a full
127       iptables based firewall setup.
128
129choice
130	prompt "Iptables"
131    depends on CONFIG_NAT
132	default CONFIG_LIBIPT
133	optional
134	help
135	netconf only requires the iptables support library. Answer
136	"Library only" unless you want full iptables support. Full
137	iptables support requires libdl (see "Additional C libraries").
138
139config CONFIG_IPTABLES
140       bool "Full"
141       depends on CONFIG_LIBDL
142
143config CONFIG_LIBIPT
144       bool "Library only"
145
146endchoice
147
148choice
149	prompt "C library"
150	default CONFIG_GLIBC
151
152config CONFIG_GLIBC
153       bool "GNU libc"
154
155config CONFIG_UCLIBC
156       bool "uClibc"
157
158endchoice
159
160config CONFIG_LIBOPT
161       bool "Optimize C library"
162       depends on CONFIG_GLIBC || CONFIG_UCLIBC
163       default y
164
165config CONFIG_USBAP
166       bool "usb split driver support"
167       default n
168       help
169       Answer Y to build the bottom mac and the usb downloader. Works only along with the high driver
170
171choice
172	prompt "Kernel Root filesystem"
173	default CONFIG_SQUASHFS
174
175config CONFIG_SQUASHFS
176       bool "Squashfs file system"
177
178config CONFIG_CRAMFS
179       bool "Cramfs file system"
180
181endchoice
182endmenu
183
184menu "Options"
185
186config CONFIG_VENDOR
187       string "Vendor"
188       default "broadcom"
189       help
190       Answer Y for vendor-specific customization.
191
192config CONFIG_UDHCPD
193       bool "DHCP client and server"
194       default y
195
196config CONFIG_PPP
197       bool "PPPoE client"
198       depends on CONFIG_NAT
199       default y
200
201config CONFIG_LIBUPNP
202       bool "BCM UPnP library"
203       default n
204
205config CONFIG_IGD
206       bool "BCM UPnP IGD server"
207       depends on CONFIG_NAT && CONFIG_LIBUPNP
208       default n
209
210#ifdef __CONFIG_NORTON__
211config CONFIG_NORTON
212       bool "Norton Gateway Apps"
213       depends on CONFIG_HTTPD && CONFIG_RC && CONFIG_NAT && CONFIG_NVRAM && CONFIG_LIBPTHREAD && CONFIG_LIBDL && CONFIG_LIBRESOLV && CONFIG_DNSMASQ && CONFIG_IPTABLES && CONFIG_LIBNETFILTER_QUEUE && CONFIG_LIBNETFILTER_CONNTRACK && CONFIG_LIBSTDCPP && CONFIG_LIBFLOW
214       default y
215#endif /* __CONFIG_NORTON__ */
216
217config CONFIG_SAMBA
218       bool "Support SAMBA"
219       default n
220
221config CONFIG_TASKSET
222       bool "Support taskset"
223       default y
224       help
225       Set a process's CPU affinity
226
227config CONFIG_MPSTAT
228       bool "Support mpstat"
229       default n
230       help
231       Report processors related statistics
232
233config CONFIG_FFMPEG
234       bool "ffmpeg Library"
235       default n
236
237config CONFIG_BCM_MEVENT
238       bool "Support user space to receive BRCM event"
239       default n
240
241menu "DLNA"
242
243config CONFIG_DLNA_DMS
244       bool "Support DLNA Server"
245       depends on CONFIG_LIBUPNP
246       default n
247config CONFIG_DLNA_DMR
248       bool "Support DLNA Renderer"
249       default n
250endmenu
251
252config CONFIG_MFP
253       bool "Protected Management Frames (802.11w PMF) support"
254       default n
255
256config CONFIG_HSPOT
257       bool "HOTSPOT 2.0 support"
258       depends on CONFIG_NVRAM && CONFIG_SHARED
259       default n
260
261config CONFIG_WNM
262       bool "Wireless Network Management/Network Power Save(802.11v) support"
263       depends on CONFIG_NVRAM && CONFIG_SHARED
264       default n
265
266config CONFIG_NAS
267       bool "802.1X/WPA network authenticator"
268       depends on CONFIG_NVRAM && CONFIG_SHARED
269       default y
270
271config CONFIG_WAPI
272       bool "WAPI network authenticator"
273       depends on CONFIG_NVRAM && CONFIG_SHARED
274       default y
275       help
276       Wireless Authentication and Privacy Infrastructure (WAPI) network authenticator.
277
278config CONFIG_WAPI_CONF
279       string "WAPI configuration /etc/wapi"
280       depends on CONFIG_WAPI || CONFIG_WAPI_IAS
281       default "/etc/wapi"
282       help
283       Specify the location of the WAPI configuration /etc/wapi directory.
284
285config CONFIG_WAPI_IAS
286       bool "WAPI network authentication server"
287       depends on CONFIG_NVRAM
288       default y
289       help
290       Wireless Authentication and Privacy Infrastructure (WAPI) network authentication server.
291
292config CONFIG_SES
293       bool "Secure Easy Setup configurator"
294       depends on CONFIG_NVRAM && CONFIG_SHARED && CONFIG_LIBBCM
295       default y
296
297config CONFIG_SES_CL
298       bool "Secure Easy Setup client"
299       depends on CONFIG_NVRAM && CONFIG_SHARED && CONFIG_LIBBCM
300       default y
301
302config CONFIG_WPS
303       bool "WPS Support"
304       depends on CONFIG_NVRAM && CONFIG_SHARED
305       default n
306
307config CONFIG_NFC
308       bool "WPS NFC Support"
309       depends on CONFIG_NVRAM && CONFIG_SHARED && CONFIG_WPS
310       default n
311
312config CONFIG_EZC
313       bool "EZConfig Setup (Phase 1)"
314       depends on CONFIG_HTTPD
315       default y
316
317config CONFIG_LLD2D
318       bool "LLD2D protocol"
319       default y
320
321config CONFIG_NTP
322       bool "NTP client"
323       default y
324
325config CONFIG_DNSMASQ
326       bool "DNS forwarder"
327       depends on CONFIG_NAT
328       default y
329
330config CONFIG_UTILS
331       bool "Broadcom driver utilities"
332       default y
333
334config CONFIG_ETC
335       bool "SysV init scripts"
336       depends on CONFIG_BUSYBOX
337       default n
338       help
339       SysV init scripts.
340
341config CONFIG_RCS
342       string "Default SysV init script"
343       depends on CONFIG_ETC
344       default "rcS"
345       help
346       Default initialization script.
347
348config CONFIG_BCMWPA2
349       bool "WPA2 Config"
350       default y
351
352config CONFIG_WCN
353       bool "Windows Connect Now support"
354	   depends on CONFIG_NVRAM && CONFIG_SHARED
355       default n
356       help
357       Answer Y to enable support for Windows Connect Now - a method 
358	   to configure wireless networks via USB Flash Devices.
359	   (Requires CONFIG_WCN and dependents be configured into the kernel.)
360
361config CONFIG_EMF
362       bool "Efficient Multicast Forwarding"
363       depends on CONFIG_NVRAM && CONFIG_SHARED
364       default y
365
366config CONFIG_IGMP_PROXY
367       bool "IGMP Proxy"
368       depends on CONFIG_NETCONF
369       default y
370
371config CONFIG_WL_ACI
372       bool "Adjacent Channel Mitigation daemon"
373       default n
374
375config CONFIG_TRAFFIC_MGMT_RSSI_POLICY
376       bool "Traffic Management RSSI policy"
377       default n
378       help
379       Answer Y to enable support for traffic management RSSI policy,
380       also known as VIDEOTAG - a feature to alter packet priority based
381       on the remote station RSSI.
382
383config CONFIG_PHYMON_UTILITY
384       bool "PHY Calibration Monitor"
385       default n
386
387config CONFIG_SHRINK_MEMORY
388       bool "Shrink kernel memory"
389       default n
390
391config CONFIG_BCMDCS
392       bool "Broadcom Dynamic Channel Selection"
393       default n
394
395config CONFIG_EXTACS
396       bool "External Auto Channel Selection"
397       default n
398
399config CONFIG_BCMBSD
400       bool "Brcm Band Steer Selection"
401       default n
402
403config CONFIG_BCMBSD
404       bool "Broadcom Generic Band Steering"
405       default n
406
407config CONFIG_IPV6
408       bool "IPv6 Support"
409       default n
410       help
411       IPv6 Support, required only for Vista Premium Logo.
412
413config CONFIG_RADVD
414       bool "IPv6 Router Advertisement support"
415       default y
416       depends CONFIG_IPV6
417       help
418       Router Advertisement Daemon MUST be selected to work as an IPv6 Router.
419
420config CONFIG_IPROUTE2
421       bool "iproute2: IPv6 Configuration Utility"
422       default y
423       depends CONFIG_IPV6
424       help
425       This utility MUST be selected to configure IPv6 Protocol Stack.
426
427config CONFIG_DHCPV6S
428       bool "IPv6 DHCP Server"
429       default y
430       depends CONFIG_IPV6
431       help
432       Answer Y for DHCP Server for IPv6.
433
434config CONFIG_DHCPV6C
435       bool "IPv6 DHCP Client"
436       default n
437       depends CONFIG_IPV6
438       help
439       Answer Y for DHCP Client for IPv6.
440
441config CONFIG_IPUTILS
442       bool "IPv6 Utility: ping6, traceroute6 and tracepath6 "
443       default n
444       depends CONFIG_IPV6
445       help
446       Answer Y for ping6 for IPv6.
447
448config CONFIG_FAILSAFE_UPGRADE_SUPPORT
449       bool "Capability for Failsafe Upgrades"
450       default n
451       help
452       Add the support to flash the dual linux partition, answer yes
453
454config CONFIG_VOIP
455       bool "VoIP support (Linux 2.6 only)"
456       default n
457       help
458       Answer Y to enable VoIP service.
459
460#ifdef BCMSOUND
461config CONFIG_LIBZ
462       bool "Zlib compression library"
463       default n
464       help
465       ZLIB compression/decompression Library
466
467config CONFIG_SOUND
468       bool "Sound Support (Linux 2.6 only)"
469       default n
470       help
471       Support for playing audio.
472
473config CONFIG_SALSA
474       bool "Small ALSA Library"
475       default y
476       depends CONFIG_SOUND
477       help
478       Small Alsa Library (libasound) for applications to configure sound hardware.
479
480config CONFIG_APLAY
481       bool "Alsa Player"
482       default y
483       depends on CONFIG_SOUND && CONFIG_SALSA
484       help
485       Alsa Player audio application.
486
487config CONFIG_LIBMAD
488       bool "MAD MP3 Library"
489       default y
490       depends on CONFIG_SOUND && CONFIG_LIBZ && CONFIG_SALSA
491       help
492       LIBMAD MP3 Codec Library.
493
494config CONFIG_LIBID3TAG
495       bool "ID3tag Library"
496       default y
497       depends on (CONFIG_SOUND && CONFIG_LIBZ && CONFIG_SALSA) || CONFIG_DLNA_DMS
498       help
499       LIB ID3 Tag parsing Library.
500
501config CONFIG_MADPLAY
502       bool "MAD MP3 player"
503       default y
504       depends on CONFIG_SOUND && CONFIG_LIBMAD
505       help
506       MADPLAY MP3 player.
507
508#endif
509
510endmenu
511
512menu "Additional C libraries"
513
514config CONFIG_LIBCRYPT
515       bool "libcrypt"
516       default y
517       help
518       libcrypt is the cryptography library.
519
520config CONFIG_LIBDL
521       bool "libdl"
522       default n
523       help
524       libdl is the dynamic linking interface library.
525
526config CONFIG_LIBFLOW
527       bool "libflow"
528       default y
529       depends on CONFIG_LIBMNL && CONFIG_LIBNFNETLINK && CONFIG_LIBNETFILTER_CONNTRACK
530       help
531       provides an API for flow management
532
533config CONFIG_LIBM
534       bool "libm"
535       default n
536       help
537       libm is the mathematical library.
538
539config CONFIG_LIBNSL
540       bool "libnsl"
541       default n
542       help
543       libnsl is the network services library.
544
545config CONFIG_LIBPTHREAD
546       bool "libpthread"
547       default n
548       help
549       The POSIX threads library.
550
551config CONFIG_LIBRESOLV
552       bool "libresolv"
553       default n
554       help
555       Functions in this library provide for creating, sending, and
556       interpreting packets to the Internet domain name servers.
557
558config CONFIG_LIBSTDCPP
559       bool "libstdc++"
560       default y
561       help
562       libstdc++ is the GNU Standard C++ Library.
563
564config CONFIG_LIBUTIL
565       bool "libutil"
566       default n
567       help
568       Contains code for "standard" functions used in many different
569       Unix utilities.
570
571config CONFIG_LIBNFNETLINK
572       bool "libnfnetlink"
573       default y
574       help
575       provides a generic messaging infrastructure for in-kernel
576       netfilter subsystems (such as nfnetlink_log, nfnetlink_queue,
577       nfnetlink_conntrack) and their respective users and/or
578       management tools in userspace.
579
580config CONFIG_LIBNETFILTER_CONNTRACK
581       bool "libnetfilter_conntrack"
582       default y
583       depends on CONFIG_LIBNFNETLINK && CONFIG_LIBMNL
584       help
585       provides a programming interface (API) to the in-kernel
586       connection tracking state table
587
588config CONFIG_LIBNETFILTER_QUEUE
589       bool "libnetfilter_queue"
590       default y
591       depends on CONFIG_LIBNFNETLINK
592       help
593       provides an API to packets that have been queued by the
594       kernel packet filter
595
596config CONFIG_LIBMNL
597       bool "libmnl"
598       default y
599       help
600       provides a minimalistic user-space library oriented to
601       Netlink developers
602
603endmenu
604
605menu "Environment"
606
607config LINUXDIR
608       string "Target Linux kernel"
609       default "$(SRCBASE)/linux/linux"
610       help
611       Specify the location of the target Linux kernel directory.
612
613config LIBDIR
614       string "Target /lib"
615       default "$(TOOLCHAIN)/lib"
616       help
617       Specify the location of the target /lib directory.
618
619config USRLIBDIR
620       string "Target /usr/lib"
621       default "$(TOOLCHAIN)/usr/lib"
622       help
623       Specify the location of the target /usr/lib directory.
624
625config CONFIG_RTR_OPTIMIZE_SIZE
626       bool "Optimize router application size"
627       default n
628       help
629       Builds router applications with Os optimization.
630
631config CONFIG_MINI_ROUTER
632       bool "Mini router specific configuration"
633       default n
634       help
635       Specify mini router configuration
636
637endmenu
638
639menu "Internal Options"
640
641#if defined(BCM_MEDIA_IPTV)
642
643config CONFIG_UTELNETD
644       bool "Telnet server"
645       default n
646
647#endif
648
649
650
651endmenu
652
653menu "Advanced Router Features"
654config CONFIG_BCMQOS
655       bool "Broadcom IQoS (New)"
656       default y
657       help
658       Broadcom IQos 
659endmenu
660