#
# Siano Mobile Silicon Digital TV device configuration
#

config SMS_SIANO_MDTV
	tristate "Siano SMS1xxx based MDTV receiver"
	depends on DVB_CORE && INPUT
	---help---
	  Choose Y or M here if you have MDTV receiver with a Siano chipset.

	  To compile this driver as a module, choose M here
	  (The module will be called smsmdtv).

	  Further documentation on this driver can be found on the WWW
	  at http://www.siano-ms.com/

if SMS_SIANO_MDTV
menu "Siano module components"

# Hardware interfaces support

config SMS_USB_DRV
	tristate "USB interface support"
	depends on DVB_CORE && USB
	---help---
	  Choose if you would like to have Siano's support for USB interface

config SMS_SDIO_DRV
	tristate "SDIO interface support"
	depends on DVB_CORE && MMC
	---help---
	  Choose if you would like to have Siano's support for SDIO interface
endmenu
endif # SMS_SIANO_MDTV
