@@ -2,25 +2,69 @@
# Siano Mobile Silicon Digital TV device configuration
#
-config DVB_SIANO_SMS1XXX
- tristate "Siano SMS1XXX USB dongle support"
- depends on DVB_CORE && USB
+config SMS_SIANO_MDTV
+ tristate "Siano MDTV receiver"
+ default m
---help---
- Choose Y here if you have a USB dongle with a SMS1XXX chipset.
+ 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 sms1xxx.
+ To compile this driver as a module, choose M here
+ (The modules will be called smsmdtv).
-config DVB_SIANO_SMS1XXX_SMS_IDS
- bool "Enable support for Siano Mobile Silicon default USB IDs"
- depends on DVB_SIANO_SMS1XXX
+ Note: All dependents, if selected, will be part of this module.
+
+ Further documentation on this driver can be found on the WWW at http://www.siano-ms.com/
+
+if SMS_SIANO_MDTV
+
+# Kernel sub systems support
+
+config SMS_DVB3_SUBSYS
+ bool "DVB v.3 Subsystem support"
default y
---help---
- Choose Y here if you have a USB dongle with a SMS1XXX chipset
- that uses Siano Mobile Silicon's default usb vid:pid.
+ Choose if you would like to have DVB v.3 kernel sub-system support.
- Choose N here if you would prefer to use Siano's external driver.
+config SMS_DVB5_S2API_SUBSYS
+ bool "DVB v.5 (S2 API) Subsystem support"
+ default n
+ ---help---
+ Choose if you would like to have DVB v.5 (S2 API) kernel sub-system support.
- Further documentation on this driver can be found on the WWW at
- <http://www.siano-ms.com/>.
+config SMS_HOSTLIB_SUBSYS
+ bool "Host Library Subsystem support"
+ default n
+ ---help---
+ Choose if you would like to have Siano's host library kernel sub-system support.
+if SMS_HOSTLIB_SUBSYS
+
+config SMS_NET_SUBSYS
+ bool "Siano Network Adapter"
+ default n
+ ---help---
+ Choose if you would like to have Siano's network adapter support.
+
+endif # SMS_HOSTLIB_SUBSYS
+
+# Hardware interfaces support
+
+config SMS_USB_DRV
+ bool "USB interface support"
+ default y
+ ---help---
+ Choose if you would like to have Siano's support for USB interface
+
+config SMS_SDIO_DRV
+ bool "SDIO interface support"
+ default n
+ ---help---
+ Choose if you would like to have Siano's support for SDIO interface
+
+config SMS_SPI_PXA310_DRV
+ bool "PXA 310 SPI interface support"
+ default n
+ ---help---
+ Choose if you would like to have Siano's support for PXA 310 SPI interface
+
+endif # SMS_SIANO_MDTV
@@ -1,8 +1,102 @@ sms1xxx-objs := smscoreapi.o smsusb.o sm
-sms1xxx-objs := smscoreapi.o smsusb.o smsdvb.o sms-cards.o
+###############################################################################
+#
+# Siano Mobile Silicon, Inc.
+# MDTV receiver kernel modules.
+# Copyright (C) 2006-2008, Uri Shkolnik
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+###############################################################################
-obj-$(CONFIG_DVB_SIANO_SMS1XXX) += sms1xxx.o
-EXTRA_CFLAGS += -Idrivers/media/dvb/dvb-core
+# Local variables initialization
+SMS_DVB3_SUBSYS := 0
+SMS_DVB5_S2API_SUBSYS := 0
+SMS_HOSTLIB_SUBSYS := 0
+
+SMS_USB_DRV := 0
+SMS_SDIO_DRV := 0
+SMS_SPI_PXA310_DRV := 0
+
+
+# Default object, include in every build variant
+SMSOBJ := smscoreapi.o sms-cards.o
EXTRA_CFLAGS += $(extra-cflags-y) $(extra-cflags-m)
+
+# Kernel subsystems support
+ifdef CONFIG_SMS_DVB3_SUBSYS
+ifneq ($(CONFIG_SMS_DVB3_SUBSYS),n)
+SMS_DVB3_SUBSYS := 1
+EXTRA_CFLAGS += -DSMS_DVB3_SUBSYS -Idrivers/media/dvb/dvb-core
+SMSOBJ += smsdvb.o
+endif
+endif
+
+ifdef CONFIG_SMS_DVB5_S2API_SUBSYS
+ifneq ($(CONFIG_SMS_DVB5_S2API_SUBSYS),n)
+SMS_DVB5_S2API_SUBSYS := 1
+EXTRA_CFLAGS += -DSMS_DVB5_S2API_SUBSYS
+endif
+endif
+
+ifdef CONFIG_SMS_HOSTLIB_SUBSYS
+ifneq ($(CONFIG_SMS_HOSTLIB_SUBSYS),n)
+SMS_HOSTLIB_SUBSYS := 1
+EXTRA_CFLAGS += -DSMS_HOSTLIB_SUBSYS
+SMSOBJ += smschar.o
+endif
+endif
+
+ifdef CONFIG_SMS_NET_SUBSYS
+ifneq ($(CONFIG_SMS_NET_SUBSYS),n)
+SMS_NET_SUBSYS := 1
+EXTRA_CFLAGS += -DSMS_NET_SUBSYS
+SMSOBJ += smsnet.o
+endif
+endif
+
+# Hardware (host) interfaces support
+ifdef CONFIG_SMS_USB_DRV
+ifneq ($(CONFIG_SMS_USB_DRV),n)
+SMS_USB_DRV := 1
+EXTRA_CFLAGS += -DSMS_USB_DRV
+SMSOBJ += smsusb.o
+endif
+endif
+
+ifdef CONFIG_SMS_SDIO_DRV
+ifneq ($(CONFIG_SMS_SDIO_DRV),n)
+SMS_SDIO_DRV := 1
+EXTRA_CFLAGS += -DSMS_SDIO_DRV
+SMSOBJ += smssdio.o
+endif
+endif
+
+ifdef CONFIG_SMS_SPI_PXA310_DRV
+ifneq ($(CONFIG_SMS_SPI_PXA310_DRV),n)
+SMS_SPI_PXA310_DRV := 1
+EXTRA_CFLAGS += -DSMS_SPI_PXA310_DRV
+SMSOBJ += smsspilog.o smsspicommon.o smsspiphy_pxa.o
+endif
+endif
+
+# All selected in one module named smsmdtv
+smsmdtv-objs := $(SMSOBJ)
+
+obj-$(CONFIG_SMS_SIANO_MDTV) := smsmdtv.o
+
+
+