if MIPS_RALINK

choice
	prompt "Ralink SoC selection"
	default SOC_RT288X
	help
	  Select Ralink MIPS SoC type.

	config RALINK_RT288X
		bool "RT288x"
		select SOC_RT288X

	config RALINK_RT305X
		bool "RT305x"
		select SOC_RT305X

	config RALINK_RT3883
		bool "RT3883"
		select SOC_RT3883

        config RALINK_RT6856
                bool "RT6856"
                select SOC_RT6856
                
	config RALINK_MT7620
		bool "MT7620"
		select SOC_MT7620
		
	config RALINK_MT7621
		bool "MT7621"
		select SOC_MT7621            
endchoice

source "arch/mips/ralink/rt288x/Kconfig"
source "arch/mips/ralink/rt305x/Kconfig"
source "arch/mips/ralink/rt3883/Kconfig"
source "arch/mips/ralink/rt6856/Kconfig"
source "arch/mips/ralink/mt7620/Kconfig"
source "arch/mips/ralink/mt7621/Kconfig"

config SOC_RT288X
	bool
	select CEVT_R4K
	select CSRC_R4K
	select DMA_NONCOHERENT
	select IRQ_CPU
	select ARCH_REQUIRE_GPIOLIB
	select SYS_HAS_CPU_MIPS32_R1
	select SYS_HAS_CPU_MIPS32_R2
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_HAS_EARLY_PRINTK
	select MIPS_MACHINE

config SOC_RT305X
	bool
	select CEVT_R4K
	select CSRC_R4K
	select DMA_NONCOHERENT
	select IRQ_CPU
	select ARCH_REQUIRE_GPIOLIB
	select SYS_HAS_CPU_MIPS32_R1
	select SYS_HAS_CPU_MIPS32_R2
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_HAS_EARLY_PRINTK
	select MIPS_MACHINE
	select USB_ARCH_HAS_HCD

config SOC_RT3883
	bool
	select CEVT_R4K
	select CSRC_R4K
	select DMA_NONCOHERENT
	select IRQ_CPU
	select ARCH_REQUIRE_GPIOLIB
	select SYS_HAS_CPU_MIPS32_R1
	select SYS_HAS_CPU_MIPS32_R2
	select SYS_SUPPORTS_32BIT_KERNEL
	select SYS_SUPPORTS_LITTLE_ENDIAN
	select SYS_HAS_EARLY_PRINTK
	select MIPS_MACHINE
	select USB_ARCH_HAS_OHCI
	select USB_ARCH_HAS_EHCI

config SOC_RT6856
        bool
 #bool "Ralink RT6855A/RT6856A board"
        select CEVT_R4K
        select CSRC_R4K
        select DMA_NONCOHERENT
        select IRQ_CPU
        select ARCH_REQUIRE_GPIOLIB
        select SYS_HAS_CPU_MIPS32_R1
        select SYS_HAS_CPU_MIPS32_R2
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_LITTLE_ENDIAN
        select SYS_HAS_EARLY_PRINTK
        select MIPS_MACHINE
        select USB_ARCH_HAS_OHCI
        select USB_ARCH_HAS_EHCI
        select HW_HAS_PCI
        select MIPS_TC3262
        select CPU_MIPSR2_IRQ_VI
        select CPU_MIPSR2_IRQ_EI
        select SYS_HAS_CPU_MIPS64_R1
        select SYS_SUPPORTS_MULTITHREADING
#        select NO_EXCEPT_FILL
#        select BOOT_RAW        
#        select SWAP_IO_SPACE
#        select BOOT_ELF32
#        select TC3162_ADSL
#        select TC3162_IMEM

	
config SOC_MT7620
        bool
        select CEVT_R4K
        select CSRC_R4K
        select DMA_NONCOHERENT
        select IRQ_CPU
        select ARCH_REQUIRE_GPIOLIB
        select SYS_HAS_CPU_MIPS32_R1
        select SYS_HAS_CPU_MIPS32_R2
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_LITTLE_ENDIAN
        select SYS_HAS_EARLY_PRINTK
        select MIPS_MACHINE
        select USB_ARCH_HAS_OHCI
        select USB_ARCH_HAS_EHCI
        select MT7620_ASIC

        
config SOC_MT7621
	bool
        select CEVT_R4K
        select CSRC_R4K
        select DMA_NONCOHERENT
        select IRQ_CPU
        select ARCH_REQUIRE_GPIOLIB
        select SYS_HAS_CPU_MIPS32_R1
        select SYS_HAS_CPU_MIPS32_R2
        select SYS_SUPPORTS_32BIT_KERNEL
        select SYS_SUPPORTS_LITTLE_ENDIAN
        select SYS_HAS_EARLY_PRINTK
        select MIPS_MACHINE
        select USB_ARCH_HAS_OHCI
        select USB_ARCH_HAS_EHCI
        select MT7621_ASIC		
	select MIPS_CPU_SCACHE
	select SYS_SUPPORTS_MULTITHREADING
	select SYS_SUPPORTS_SMP
	select SYS_SUPPORTS_MIPS_CMP
	select IRQ_GIC
        
config MT7620_ASIC
#       bool "MT7620_ASIC"        
		bool

config MT7621_ASIC
		bool       

config RALINK_DEV_GPIO_BUTTONS
	def_bool n

config RALINK_DEV_GPIO_LEDS
	def_bool n

endif
###########
## flash type
############
if RALINK_RT3883 || RALINK_RT6856 || RALINK_MT7620 || RALINK_MT7621
choice
       prompt "Flash Type"
       default MTD_SPI_RALINK

config MTD_NOR_RALINK
       bool "NOR"

config MTD_SPI_RALINK
       bool "SPI"
    
endchoice

config  MTD_RALINK_SPI_DRV
        bool "Ralink SPI driver"
        depends on MTD_SPI_RALINK

config ENABLE_HW_WD
       bool "enable hardware watchdog"
if ENABLE_HW_WD
config GPIO_HW_WD_NUM
       int "GPIO pin to reset hwardware watchdog"
       default "54"
endif
config  RALINK_TIMER_DFS
        bool "Ralink DFS Timer"


#########
##Ralink timer
###########

config  RALINK_TIMER_WDG
        tristate "WatchDog Timer"

config  RALINK_TIMER_WDG_RESET_OUTPUT
        bool "Ralink WatchDog Reset Output"
        depends on RALINK_TIMER_WDG

config  RALINK_WDG_TIMER
        int "WatchDog Timer (Unit:1Sec, Max=30Sec)"
        default 10
        depends on RALINK_TIMER_WDG

config  RALINK_WDG_REFRESH_INTERVAL
        int "WatchDog Refresh Interval (Unit:1Sec, Max=30Sec)"
        default 4
        depends on RALINK_TIMER_WDG

endif
###########
## Power Saving
############
config  RALINK_CPUSLEEP_AND_SYSTICK_COUNTER
        bool "CPU Sleep mode and System Tick Counter Support"
        depends on RALINK_MT7620
        default n

###########
## Debuging
############
source "drivers/net/rt_rdm/Kconfig"

#######
# NAT
#######
choice
prompt "Ralink NAT Type"

config  RA_NAT_NONE
bool "None"
config  RA_NAT_SW
bool "Software"
depends on !RALINK_RT5350
config  RA_NAT_HW
bool "Hardware"
depends on !RALINK_RT5350
endchoice

source "net/nat/hw_nat/Kconfig"
