#
# For a description of the syntax of this configuration file,
# see the file kconfig-language.txt in the NuttX tools repository.
#

if ARCH_CHIP_JZ4780
comment "JZ4780 Configuration Options"

menu "JZ4780 Peripheral Support"
config JZ4780_LCD
	bool "LCD controller"
	default n

config JZ4780_OHCI
	bool "Full/low speed OHCI support"
	default n
	select SCHED_HPWORK
	select USBHOST
	select USBHOST_HAVE_ASYNCH
	select USBHOST_ASYNCH
	select USBHOST_WAITER
	---help---
		Build support for the JZ4780 USB full speed Open Host Controller
		Interface (OHCI).


if JZ4780_OHCI
config JZ4780_OHCI_NEDS
	int "Number of endpoint descriptors"
	default 6

config JZ4780_OHCI_NTDS
	int "Number of transfer descriptors"
	default 9

config JZ4780_OHCI_TDBUFFERS
	int "Number of transfer descriptor buffers"
	default 6

config JZ4780_OHCI_TDBUFSIZE
	int "Size of one transfer descriptor buffer"
	default 128
	---help---
		The size of one transfer descriptor (TD) buffer in bytes.  The TD
		buffer size must be an even number of 32-bit words

config JZ4780_OHCI_REGDEBUG
	bool "Enable low-level OHCI register debug"
	default n
	depends on DEBUG_USB_INFO

endif # JZ4780_OHCI

config JZ4780_EHCI
	bool "High speed EHCI support"
	default n
	select USBHOST
	select USBHOST_HAVE_ASYNCH
	select USBHOST_WAITER
	---help---
		Build support for the JZ4780 USB high speed Enhanced Host Controller
		Interface (EHCI).  If low/full speed is needed too, then you must
		also enable the OHCI controller.

if JZ4780_EHCI

config JZ4780_EHCI_NQHS
	int "Number of Queue Head (QH) structures"
	default 8
	---help---
		Configurable number of Queue Head (QH) structures.  The default is
		one per Root hub port plus one for EP0 (4).

config JZ4780_EHCI_NQTDS
	int "Number of Queue Element Transfer Descriptor (qTDs)"
	default 10
	---help---
		Configurable number of Queue Element Transfer Descriptor (qTDs).
		The default is one per root hub plus three from EP0 (6).

config JZ4780_EHCI_BUFSIZE
	int "Size of one request/descriptor buffer"
	default 1024
	---help---
		The size of one request/descriptor buffer in bytes.  The TD buffe
		size must be an even number of 32-bit words and must be large enough
		to hangle the largest transfer via a SETUP request.

config JZ4780_EHCI_PREALLOCATE
	bool "Preallocate descriptor pool"
	default y
	---help---
		Select this option to pre-allocate EHCI queue and descriptor
		structure pools in .bss.  Otherwise, these pools will be
		dynamically allocated using kmm_memalign().

config JZ4780_EHCI_REGDEBUG
	bool "Enable low-level EHCI register debug"
	default n
	depends on DEBUG_USB_INFO

endif # JZ4780_EHCI
endmenu # JZ4780 Peripheral Support

endif
