if ARCH_IOP3XX

menu "IOP3xx Implementation Options"

comment "IOP3xx Platform Types"

config ARCH_IQ80321
	bool "Enable support for IQ80321"
	select ARCH_IOP321
	help
	  Say Y here if you want to run your kernel on the Intel IQ80321
	  evaluation kit for the IOP321 chipset.

config ARCH_IQ31244
	bool "Enable support for IQ31244"
	select ARCH_IOP321
	help
	  Say Y here if you want to run your kernel on the Intel IQ31244
	  evaluation kit for the IOP321 chipset.

config ARCH_IQ80331
	bool "Enable support for IQ80331"
	select ARCH_IOP331
	help
	  Say Y here if you want to run your kernel on the Intel IQ80331
	  evaluation kit for the IOP331 chipset.

config ARCH_EP80219
    bool "Enable support for EP80219"
    select ARCH_IOP321
    select ARCH_IQ31244

# Which IOP variant are we running?
config ARCH_IOP321
	bool
	help
	  The IQ80321 uses the IOP321 variant.
	  The IQ31244 and EP80219 uses the IOP321 variant.

config ARCH_IOP331
	bool
	default ARCH_IQ80331
	help
	  The IQ80331 uses the IOP331 variant.

comment "IOP3xx Chipset Features"

config IOP3XX_CCNT
	bool "Export CCNT as high resolution time source"
	depends on (ARCH_IOP321 || ARCH_IOP331) && EXPERIMENTAL
	help
          Say Y here if you want to export the CCNT as a high resolution
          time source like the 'rdtsc' under x86.

config IOP3XX_AAU
	bool "Support AAU for RAID5 hardware XOR engine"
	depends on (ARCH_IOP321 || ARCH_IOP331) && !ARCH_EP80219 && EXPERIMENTAL
	help
	  Say Y here if you want to use the IOP's Application Acceleration
	  Unit to do hardware XOR for RAID5. The AAU is capable of XOR
	  32 sources at once, however currently Linux only support 5 with
	  with the standard MD software API interface. The speed test in the
	  beginning will show that AAU is slower than the XScale processor,
	  however that is caused by overhead of setting up AAU on small 
	  quantity of data. When doing multiple sources on large sets of data
	  this is no longer an issue. 

config IOP3XX_DMA
	bool "Support DMA on IOP3XX"
	depends on (ARCH_IOP321 || ARCH_IOP331) && EXPERIMENTAL
	help
	  Say Y here if you want to use the IOP's DMA Units. IQ80310 is not
	  supported currently with the unified driver. The DMA units on the
	  IOP331 can do iSCSI CRC32c calculations.

config IOP3XX_DMACOPY
	bool "Support DMA kernel memcpy on IOP3XX"
	depends on (IOP3XX_DMA) && EXPERIMENTAL
	help 
	  Say Y here if you want to use the DMA engine to perform memcpy()
	  in the kernel for >~1k buffers. Has significant performance 
	  enhancement on IOP321 and IOP331 for certain operations. 		 
config IOP3XX_DMA_COPYTOUSER
	bool "Support DMA copy_to_user() on IOP3XX"
	depends on (IOP3XX_DMA) && EXPERIMENTAL
	help
	  Say Y here if you want to use the DMA engine to perform
	  copy_to_user() functionality for >~1k buffers. Has significant
	  performance enhancement on IOP321. Not recommended for IOP331.

config IOP3XX_DMA_COPYFROMUSER
	bool "Support DMA copy_from_user() on IOP3XX"
	depends on (IOP3XX_DMA) && EXPERIMENTAL
	help
	  Say Y here if you want to use the DMA engine to perform
	  copy_from_user() functionality for >~1k buffers. Has significant
	  performance enhancement on IOP321. Not recommended for IOP331.

endmenu
endif
