config RTL865XC_8186SDK_GW_MP
	bool 
	default y

config RTL865XC
	bool
	default y
	
config DEFAULTS_KERNEL_2_6
	bool
	default y
	
config RTL865X
	bool "Support for Realtek RTL865XC advanced gateway/router SoC"
	default y
	select RTL865XC
	select MIPS32
	select EXPERIMENTAL
#	select PCI
	select RTL8186_GW_8M
	select NONCOHERENT_IO
	select NEW_TIME_C
	select NEW_IRQ 
	select RTL8181_GPIO
	select KERNEL_CMDLINE
	help
		This is a global Option, define Macro CONFIG_RTL865X for RTL865x SDK.

config RTL8186_GW_8M
        bool "Kernel is configured for 8186SDK GW Mode"
        depends on RTL865X

config RTL8196_RTL8366
        bool
        default y
        depends on RTL865X

config RTK_MTD_ROOT
	bool
	depends on RTL865X

config NEW_PCI
	bool 
	default y 
	depends on PCI

config RTL865X_WTDOG
	bool "Enable watchdog timer support"
	default y
	depends on RTL865X	

config RTL865X_SUSPEND
#	bool "Enable RTL865xC suspend mode"
	bool 
	default n
	depends on RTL865X
 
menu "Config MIPS16-Inst Option for Kernel Modules"
        config RTL865X_KERNEL_MIPS16
                bool "Enable MIPS16 Encoding for Linux Kernel"
                default n
                depends on RTL865X
        comment "Config Optional MIPS16-Inst Option for Kernel Modules"
        config RTL865X_KERNEL_MIPS16_CRYPTO
                bool "Enable MIPS16 Encoding for crypto module(linux-2.x.x/crypto)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_FS
                bool "Enable MIPS16 Encoding for fs     module(linux-2.x.x/fs)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_IPC
                bool "Enable MIPS16 Encoding for ipc    module(linux-2.x.x/ipc)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_KERNEL
                bool "Enable MIPS16 Encoding for core   module(linux-2.x.x/kernel)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_LIB
                bool "Enable MIPS16 Encoding for lib    module(linux-2.x.x/lib)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_MM
                bool "Enable MIPS16 Encoding for mm    module(linux-2.x.x/mm)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_NET
                bool "Enable MIPS16 Encoding for net   module(linux-2.x.x/net)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        comment "Config Optional MIPS16-Inst Option for Device Drivers"
        config RTL865X_KERNEL_MIPS16_MTD
                bool "Enable MIPS16 Encoding for mtd    module(linux-2.x.x/drivers/mtd)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_LAYERDRIVER
                bool "Enable MIPS16 Encoding for lan   module(linux-2.x.x/drivers/net/re865x)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_WLAN
                bool "Enable MIPS16 Encoding for wlan   module(linux-2.x.x/drivers/net/wirless/rtl8190)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_PCI
                bool "Enable MIPS16 Encoding for pci    module(linux-2.x.x/drivers/pci)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_CHAR
                bool "Enable MIPS16 Encoding for char    module(linux-2.x.x/drivers/char)"
                default n
                depends on RTL865X_KERNEL_MIPS16
        config RTL865X_KERNEL_MIPS16_BLOCK
                bool "Enable MIPS16 Encoding for block    module(linux-2.x.x/drivers/block)"
                default n
                depends on RTL865X_KERNEL_MIPS16
endmenu

menu "Config for Layered Driver Features"
        config RTL865X_LAYERED_DRIVER
                bool "Enable rtl865x layered driver"
                default y
                depends on RTL865X
                
        config RTL865X_LAYERED_ASIC_DRIVER
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
                
        config RTL865X_LAYERED_ASIC_DRIVER_L3
                bool
                default n
                depends on RTL865X_LAYERED_ASIC_DRIVER
                
        config RTL865X_LAYERED_ASIC_DRIVER_L4
                bool
                default n
                depends on RTL865X_LAYERED_ASIC_DRIVER
 
        config RTL865X_LAYERED_DRIVER_ACL
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_LAYERED_DRIVER_L2
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_HW_QOS_SUPPORT
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_LAYERED_DRIVER_L3
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_HARDWARE_MULTICAST
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_LAYERED_DRIVER_L4
                bool
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        comment 'Choose basic features.'
 
        config RTL865X_EXTPORT
                bool "Rtl865x extension port"
                default n
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_EXTPORT_VLANID
                int
                default "9"
                depends on RTL865X_LAYERED_DRIVER
 
        comment 'Choose hardware features.'
 
        choice
                prompt "Hardware Features Selection"
                default RTL865X_HW_NAPT
                depends on RTL865X_LAYERED_DRIVER
 
        config RTL865X_HW_NAPT
                bool "Enable RTL865x Hardware NAPT"
                select RTL865X_LAYERED_ASIC_DRIVER
                select RTL865X_LAYERED_ASIC_DRIVER_L3
                select RTL865X_LAYERED_ASIC_DRIVER_L4
                select RTL865X_LAYERED_DRIVER_ACL
                select RTL865X_LAYERED_DRIVER_L2
                select RTL865X_HW_QOS_SUPPORT
                select RTL865X_LAYERED_DRIVER_L3
                select RTL865X_HARDWARE_MULTICAST
                select RTL865X_LAYERED_DRIVER_L4
 
        config RTL865X_HW_MULTICAST_ONLY
                bool "Enable RTL865x Hardware Multicast Only"
                select RTL865X_LAYERED_ASIC_DRIVER
                select RTL865X_LAYERED_ASIC_DRIVER_L3
                select RTL865X_HARDWARE_MULTICAST
 
        config RTL865X_HW_L2_ONLY
                bool "Enable RTL865x Hardware switch Only"
                select RTL865X_LAYERED_ASIC_DRIVER
 
        endchoice
 
        comment 'Choose advance features.'
 
        config RTL865X_LANPORT_RESTRICTION
                bool "Rtl865x lan port restriction"
                default n
                depends on RTL865X_LAYERED_DRIVER
 
endmenu

#config RTK_KERNEL_MIPS16
#        bool "Encode Kernel Code with MIPS16 Instruction Set"
#        default y
#        depends on RTL865X

config NONCOHERENT_IO
	bool
	default y
	depends on RTL865X

config NEW_TIME_C
	bool
	default y
	depends on RTL865X

config NEW_IRQ
	bool
	default y
	depends on RTL865X

config RTL8181_GPIO 
	bool
	default y
	depends on RTL865X

config MIPS32
	bool

config EXPERIMENTAL 
	bool 

config RTL865X_WATCHDOG
#	bool "Enable Watchdog"
	bool
	default y
	depends on RTL865X


config KERNEL_CMDLINE
	bool 
	default y
	depends on RTL865X

config RTL865X_MBUF_HEADROOM
int
range 0 256
default "128"
depends on RTL865X

config RTL865X_ETH_PRIV_SKB
	bool "Enable Ethernet Private Skb"
	default y
	depends on RTL865X

#config RTL8190_PRIV_SKB
#	bool "Enable 8190 Private Skb"
#	default y
#	depends on RTL865X
	
#config RTL8214_SUPPORT
#	bool
#	default n
#	depends on RTL865X
	
config EXTRTL8212_PHYID_P1
	int
	default "18"
	depends on RTL865X

config EXTRTL8212_PHYID_P3
	int
	default "20"
	depends on RTL865X

config EXTRTL8212_PHYID_P5
	int
	default "22"
	depends on RTL865X

config RTL865X_HARDWARE_NAT
	bool "Rtl865x napt hardware accelerate"
	default n
	depends on RTL865X

config RTL865x_TCPFLOW_NONE_STATUS_CHECK
        bool "Create HW NAT Entry without checking tcp flow status (For SMB/IXIA tcp test)"
        default n
        depends on RTL865X_HARDWARE_NAT

config RTL865X_PPPOE_HWACC
	bool "Rtl865x pppoe hardware accelerate"
	default n
	depends on RTL865X_HARDWARE_NAT

config RTL865X_HW_PPTPL2TP
	bool "Rtl865x pptp hardware offload"
	default n
	depends on RTL865X_HARDWARE_NAT

#config HARDWARE_NAT_DEBUG
#	bool
#	default n
#	depends on RTL865X

config RTL865X_LAYERED_DRIVER
	bool "Enable rtl865x layered driver"
	default n
	depends on RTL865X

config RTL865X_EXTPORT
	bool "Rtl865x extension port"
	default n
	depends on RTL865X_LAYERED_DRIVER

config RTL865X_EXTPORT_VLANID
	int
	default "9"
	depends on RTL865X_EXTPORT

config RTL865X_PROC_DEBUG
	bool "Enable proc filesystem for debug"
	default n
	depends on RTL865X_HARDWARE_NAT

config MESH_ENABLE
        bool "IEEE 802.11s mesh support"
        default n

config RTL8196_SPI_FLASH
        bool "SPI flash support"
        default n

config RTL865X_LAYERED_DRIVER
	bool "enable rtl865x layered driver"
	default n
	depends on RTL865X

#============================= End of Kconfig ===============================#

	 
