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

config MIPS32
	bool

config EXPERIMENTAL 
	bool 

config PCI
	bool

choice
	bool "IC Version"
	default RTL865XC 
	depends on RTL865X

config RTL865XB
	bool  "RTL865xB"
	select REALTEK_CPU
	select DMA_NONCOHERENT
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_HAS_CPU_R3000
	select SYS_SUPPORTS_32BIT_KERNEL
	select HW_HAS_PCI
	select IRQ_CPU
	help
	  This enables supports for RTL865XB-Based boards

config RTL8652
	bool  "RTL865xC"
	select REALTEK_CPU
	select DMA_NONCOHERENT
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_HAS_CPU_R3000
	select SYS_SUPPORTS_32BIT_KERNEL
	select HW_HAS_PCI
	select IRQ_CPU
	select RTL865XC
	help
	  This enables supports for RTL8652-Based boards
config RTL8196B
	bool  "RTL865xC"
	select REALTEK_CPU
	select DMA_NONCOHERENT
	select SYS_SUPPORTS_BIG_ENDIAN
	select SYS_HAS_CPU_R3000
	select SYS_SUPPORTS_32BIT_KERNEL
	select HW_HAS_PCI
	select IRQ_CPU
	select RTL865XC
	help
	  This enables supports for RTL8196B-Based boards

endchoice

config RTL865XC
	bool
	default y

#### Enable switch core and NIC ####
config RE865X
	bool "Enable switch core and onchip NIC"
	default y
	depends on RTL865X


#### Driver Type Selection ####
choice  
	bool "Driver type selection"
	default RTL865X_ROMEDRV
	depends on RE865X

config RTL865X_ROMEDRV
	bool "Rome_Driver"
	
config RTL865X_LIGHT_ROMEDRV
	bool "Light_Rome_Driver"
endchoice

#### Driver Mode Selection ####
choice 
	bool "Driver mode selection"
	default RTL865X_MULTILAYER_BSP
	depends on RE865X && RTL865X_ROMEDRV

config RTL865X_LAYER2_BSP
	bool "Layer2"

config RTL865X_MULTILAYER_BSP
	bool "Multilayer"
endchoice

config RTL865XB_PPTPL2TP
	bool "PPTP/L2TP HW acceleration"
	depends on  RE865X && RTL865X_ROMEDRV && RTL865X_MULTILAYER_BSP

config RTL865XB_EXP_WLAN
	bool "WLAN HW acceleration"
	depends on  RE865X && RTL865X_ROMEDRV && RTL865X_MULTILAYER_BSP

config RTL865XB_3G
	bool "3G HW acceleration"
	depends on  RE865X && RTL865X_ROMEDRV && RTL865X_MULTILAYER_BSP

config RTL865XB_GLUEDEV
	bool "Glue Device support"
	depends on  RE865X && RTL865X_ROMEDRV && RTL865X_MULTILAYER_BSP	

config RTL865xB_GLUEDEV_VID
	hex "vlan id used by Glue Device"
	default 9
	depends on RTL865XB_GLUEDEV  

config RTL865xB_GLUEDEV_PNUM
	hex "port number used by Glue Device"
	default 6
	depends on RTL865XB_GLUEDEV  

#### RomeDrv Modulization ####
config  RTL865X_MODULE_ROMEDRV
	bool "RomeDrv Modulization"	
	default n
	depends on RE865X && RTL865X_ROMEDRV 

config RTL865XB_EXP_VERI
	bool "865XB Verification package"
	default n
	depends on RE865X && RTL865X_ROMEDRV 

config RTL8316S
	bool "Enable RTL8316s Verification Model"
	default n
	depends on RE865X && RTL865X_ROMEDRV 

config RTL865X_MODEL_KERNEL
	bool "865X Model Code"
	default n
	depends on RE865X && RTL865X_ROMEDRV 

config RTL865X_MODEL_TEST_FT2
	bool "IC FT2 Testing Code"
	default n
	depends on RE865X && RTL865X_ROMEDRV && RTL865X_MODEL_KERNEL

config RTL865X_FPGA
	bool "RTL865X_FPGA"
	default n
	depends on RE865X && RTL865X_ROMEDRV

#### Log Language selection ####
choice 
	bool "Log Language selection"
	default RTL865X_LOG_EN
	depends on RE865X 

config RTL865X_LOG_ZH_CN
	bool "zh_CN"

config RTL865X_LOG_ZH_TW
	bool "zh_TW"

config RTL865X_LOG_EN
	bool "English"
endchoice

config 865XC_NIC_RX_DRR
	bool "NIC RX DEFICIT ROUND ROBIN(DRR)"
	default n
	depends on RTL865X	
	
config EXTRTL8212_P1TOP4
	bool "Use RTL8212 as External PHY of Port 1 - Port 4"
	default n
	depends on RTL865X && RTL865XC

config EXTRTL8212_PHYID_P1
	hex "PHY ID Assigned to Port 1 with RTL8212(hex)(must be an even value)"
	default 0x12
	depends on EXTRTL8212_P1TOP4

config EXTRTL8212_PHYID_P3 
	hex "PHY ID Assigned to Port 3 with RTL8212(hex)(must be an even value)"
	default 0x14
	depends on EXTRTL8212_P1TOP4

config EXTRTL8212_P5
	bool "Use RTL8212 as External PHY of Port 5"
	default n
	depends on RTL865X && RTL865XC

config EXTRTL8212_PHYID_P5
	hex "PHY ID Assigned to Port 5 with RTL8212(hex)"
	default 0x16
	depends on EXTRTL8212_P5

config RTL865XB_DCUT_SWVLAN
	bool "Enable RTL865xB d-cut Software Vlan"
	default n
	depends on RTL865XB && RE865X

config RTL865XB_BCUT_RLREFILL_BYSW
	bool "Enable RTL865xB b-cut Rate Limit QoS Token Refilled by Software"
	default n
	depends on RTL865XB && RE865X

config RTL865XB_WEB_CONTENT_HDR_FILTER
	bool "Enable Content Filter"
	default n
	depends on RE865X

config RTL865XB_PPTPSERVER
	bool "CONFIG_RTL865XB_PPTPSERVER"
	default n
	select RTL865X_SDK_FEATURE_PPTPSERVER
	depends on RE865X

config RTL865X_SDK_FEATURE_PPTPSERVER
	bool
	default n
	depends on RTL865XB_PPTPSERVER

config RTL865X_IPSEC
	bool "IPSec Acceleration by ROME Driver"
	default y
	select RTL865XB_EXP_CRYPTOENGINE
	depends on RE865X

config RTL865X_ROMEREAL
	bool "ROMEreal (etherreal-like tool)"
	default n
	depends on RE865X
	
config RTL865X_ROMEPERF
	bool "ROMEperf (performance profile)"
	default n
	depends on RE865X

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

config QOS_L7_FILTER
	bool "Enable L7 Filter"
	default n
	depends on RTE865X

config KU_KLIPS
	bool "Enable Kernel KLIPS and User Application Support"
	default y
	select USER_OPENSWAN
	select LIB_LIBGMP
	select USER_IPROUTE2
	select USER_IPROUTE2_IP_IP
	depends on RTL865X

if KU_KLIPS
config USER_OPENSWAN
	bool
	default y

config LIB_LIBGMP
	bool
	default y

config USER_IPROUTE2
	bool 
	default y

config USER_IPROUTE2_IP_IP
	bool 
	default y
endif

config USER_SASH_SH
	bool
	default y
	depends on 	KU_KLIPS != y

config RTL865XB_EXP_CRYPTOENGINE
	bool "Hardware Cryptography Engine Library (or set by [IPSec Acceleration by ROME Driver])"
	default y
	select KLIPS
	select KLIPS_IPIP
	select KLIPS_AH 
	select KLIPS_AUTH_HMAC_MD5 
	select KLIPS_AUTH_HMAC_SHA1 
	select KLIPS_ESP 
	select KLIPS_ENC_3DES 
	select KLIPS_ENC_AES 
	select KLIPS_ALG 
	select KLIPS_ALG_AES 
	select KLIPS_IPCOMP 
	select KLIPS_DEBUG 
	select IPSEC_NAT_TRAVERSAL
	select RTL865X_SDK_FEATURE_KLIPS
	depends on RE865X

config KLIPS
	bool
	default n
	
config KLIPS_IPIP
	bool
	default n

config KLIPS_AH
	bool
	default n

config KLIPS_AUTH_HMAC_MD5
	bool
	default n
	
config KLIPS_AUTH_HMAC_SHA1
	bool
	default n

config KLIPS_ESP
	bool
	default n

config KLIPS_ENC_3DES
	bool
	default n

config  KLIPS_ENC_AES
	bool
	default n

config KLIPS_ALG
	bool
	default n

config KLIPS_ALG_AES
	bool
	default n

config KLIPS_IPCOMP
	bool
	default n

config KLIPS_DEBUG
	bool
	default n

config IPSEC_NAT_TRAVERSAL
	bool 
	default n


config GENEREAL_ALG
	bool "Enable User Defined ALG"
	default n
	depends on RE865X

config RTL865XB_ENRT
	bool "Enable ASIC VLAN table ENRTR"
	default y
	depends on RE865X

config RTL865X_IPTABLES_FAST_PATH
	bool "Enable IPTables Fast Path"
	default n
	depends on RE865X

config RTL865X_USR_DEFINE_TUNNEL
	bool "Enable User Define Tunnel"
	default n
	depends on RTL865X

choice 
	bool "Kernel Compression"
	default GZIP_COMPRESSION
	depends on RTL865X 

config GZIP_COMPRESSION
	bool "GZIP"
	
config LZMA_COMPRESSION
	bool "LZMA"

config NONE_COMPRESSION
	bool "NONE"

endchoice	

choice
	bool "Image Type"
	default IMAGE_ROMFS
	depends on RTL865X

config IMAGE_SQUASH
	bool "SQUASH_RELEASE"
	select SQUASHFS
	select MTD
	select MTD_PARTITIONS
	select MTD_CHAR 
	select MTD_BLOCK_RO
	select MTD_CFI
	select MTD_GEN_PROBE
	select MTD_CFI_INTELEXT
	select MTD_CFI_AMDSTD
	select MTD_CFI_STAA
	select MTD_RTL865X
	
config IMAGE_SQUASH_LZMA
	bool "SQUASH_LZMA_RELEASE"
	select SQUASHFS_LZMA
	select MTD
        select MTD_PARTITIONS
        select MTD_CHAR
        select MTD_BLOCK_RO
        select MTD_CFI
        select MTD_GEN_PROBE
        select MTD_CFI_INTELEXT
        select MTD_CFI_AMDSTD
        select MTD_CFI_STAA
        select MTD_RTL865X

config IMAGE_CRAMFS
	bool "CRAMFS_RELEASE"
	select CRAMFS
	select MTD
        select MTD_PARTITIONS
        select MTD_CHAR
        select MTD_BLOCK_RO
        select MTD_CFI
        select MTD_GEN_PROBE
        select MTD_CFI_INTELEXT
        select MTD_CFI_AMDSTD
        select MTD_CFI_STAA
        select MTD_RTL865X

config IMAGE_ROMFS
	bool "ROMFS_DEBUG"	
#	select ROMFS_FS
	select BLK_DEV_BLKMEM

endchoice

config BLK_DEV_BLKMEM
	bool
	default n

config SQUASHFS
	bool
	default n
	depends on IMAGE_SQUASH

#config CRAMFS
#	bool
#	default n
#	depends on IMAGE_CRAMFS

config SQUASHFS_LZMA
	bool
	default n
	depends on IMAGE_SQUASH_LZMA

#config ROMFS_FS
#	bool
#	default n
#	depends on IMAGE_ROMFS

############Some detail for Image Type ##################
config CONFIG_MTD
	bool 
	default n

config MTD_PARTITIONS
	bool
	default n

#config MTD_CHAR 
#	bool 
#	default n

#config MTD_BLOCK_RO
#	bool
#	default n

#config MTD_CFI
#	bool 
#	default n

#config MTD_GEN_PROBE
#	bool
#	default n

#config MTD_CFI_INTELEXT
#	bool 
#	default n

#config MTD_CFI_AMDSTD
#	bool
#	default n

#config MTD_CFI_STAA
#	bool
#	default n

config MTD_RTL865X
	bool
	default n

config FLASH_SIZE_OF_KERNEL
	hex "FLASH SIZE OF KERNEL OCCUPIED"
	default 0x100000
	depends on IMAGE_SQUASH || IMAGE_CRAMFS || IMAGE_SQUASH_LZMA

config RTL865XB_PCI_SLOT0
	bool "Enable PCI Slot 0 (RTL865XB B-cut)"
	default n
	depends on RTL865XB

config RTL865XB_PCI_SLOT1
	bool "Enable PCI Slot 1 (RTL865XB B-cut)"
	default n
	depends on RTL865XB

config RTL865XB_PCI_SLOT2
	bool "Enable PCI Slot 2 (RTL865XB B-cut)"
	default n
	depends on RTL865XB

config RTL865XB_PCI_SLOT3
	bool "Enable PCI Slot 3 (RTL865XB B-cut)"
	default n
	depends on RTL865XB

config RTL865X_CLE
	bool "Engineering CLE interface support"
	default y
	depends on RE865X && RTL865X

config SMI
	bool "SMI Interface Support(For RTL8366)"
	default n
	depends on RTL865X

config RTL8366
	bool "External switch chip connected(For RTL8366)"
	default n
	depends on RTL865X
	
config MDCMDIO
	bool "MDCMDIO Interface Support(For RTL8305S)"
	default n
	depends on RTL865X

config RTL865x_SWPUBKEY
	bool "Software Public key support (DH/RSA)"
	default n
	depends on RTL865X

config RTL865X_BICOLOR_LED
	bool "Bi-Color LED Support"
	default y
	depends on RTL865X	

config RTL865X_DIAG_LED
	bool "Diag LED Support"
	default n
	depends on RTL865X	

config RTL865X_INIT_BUTTON
	bool "Init Button Support"
	default n
	depends on RTL865X

config RTL8363
	bool "External switch chip (For RTL8363)"
	default n
	depends on RTL865X

config RTL8306SDM_OLD
	bool "Compile in old directory (For RTL8306SDM)"
	default n
	depends on RTL865X

config EXTERNAL_SWITCH
	bool "External switch chip connected"
	default n
	depends on RTL865X

choice 
	bool "Switch Chip Selection"
	default RTL8366S
	depends on EXTERNAL_SWITCH

config RTL8305S
	bool "8305S"
#	default y
	
config RTL8305SB
	bool "8305SB"
	select RTL8305S
 
config RTL8305SC
	bool "8305SC"
	select RTL8305S

config RTL8306SDM
	bool "8306SDM"

config RTL8366S
	bool "8366S"
	select RTL8366S_ASICDRV_TEST

endchoice	

config RTL8366S_ASICDRV_TEST
	bool "RTL8366s Asic Driver Testing"
	default n
	depends on RTL8366S

choice 
	bool "IGMP version selection"
	default IGMP_SNOOPING
	depends on RTL8306SDM || RTL8366S

config IGMP_SNOOPING 	 
	bool "igmpv1/v2"

config MULTICAST_SNOOPING
	bool "igmpv3"

config IGMPSNOOPING_NONE
	bool "none"

endchoice

config RTL865X_VOIP
	bool "VoIP ROME driver support"
	default n
	depends on RTL865X

config RTL865X_NETLOG
	bool "Netlog ROME driver support"
	default n
	depends on RE865X

config RTL865X_PCM
	bool "PCM interface and SLIC driver"
	default n
	depends on RTL865X

config RTL865XB_EXP_PERFORMANCE_EVALUATION
	bool "(Experimental) Performance evaluation"
	default n
	depends on RTL865X

config KERNEL_CMDLINE
	bool "Customize Kernel Command"
	default n
	depends on RTL865X

config CMDLINE
	string "Kernel command line options"
	depends on KERNEL_CMDLINE

config SYSTEM_VERIFICATION
	bool "Realtek SDK development used APIs"
	default n
	depends on RTL865X

#### Don't touch these settings. ROME driver is built using these settings. ####
config RTL865X_MBUF_HEADROOM
	hex
	default 0x80
	depends on RTL865X

config RTL865XB_WLAN1_PORT 
	hex 
	default 0x6
	depends on RTL865X

config RTL865XB_PPTPL2TP_PORT
	hex
	default 0x7
	depends on RTL865X

config RTL865XB_3G_PORT
	hex 
	default 0x8
	depends on RTL865X

config RTL865XB_3G_VLAN
	hex
	default 0xa
	depends on RTL865X

config RTL865X_USR_DEFINE_TUNNEL_PORT
	hex
	default 0x8
	depends on RTL865X

#### End of  Special Settings ####

comment "---------------------------"
	depends on RTL865X

#============================= End of RTKconfig ===============================#

	 
