--- work/webcamd-3.2.0.2/build/config.h.orig +++ work/webcamd-3.2.0.2/build/config.h @@ -310,6 +310,7 @@ #define CONFIG_VIDEO_VP27SMPX /* y */ #define CONFIG_VIDEO_WM8739 /* y */ #define CONFIG_VIDEO_WM8775 /* y */ +#define CONFIG_DVB_USB_RTL2832U /* y */ #undef CONFIG_INPUT_FF_MEMLESS /* n */ #undef CONFIG_INPUT_POLLDEV /* n */ #undef CONFIG_INPUT_SPARSEKMAP /* n */ --- work/webcamd-3.2.0.2/build/obj-y/Makefile.orig +++ work/webcamd-3.2.0.2/build/obj-y/Makefile @@ -557,6 +557,45 @@ SRCS+= \ mxl111sf-gpio.c \ mxl111sf-demod.c \ mxl111sf-tuner.c \ + demod_rtl2832.c \ + dvbt_demod_base.c \ + dvbt_nim_base.c \ + foundation.c \ + math_mpi.c \ + nim_rtl2832_mxl5007t.c \ + nim_rtl2832_fc2580.c \ + nim_rtl2832_mt2266.c \ + rtl2832u.c \ + rtl2832u_fe.c \ + rtl2832u_io.c \ + tuner_mxl5007t.c \ + tuner_fc2580.c \ + tuner_mt2266.c \ + tuner_tua9001.c \ + nim_rtl2832_tua9001.c \ + tuner_fc0012.c \ + nim_rtl2832_fc0012.c \ + demod_rtl2836.c \ + dtmb_demod_base.c \ + dtmb_nim_base.c \ + nim_rtl2836_fc2580.c \ + nim_rtl2836_mxl5007t.c \ + tuner_e4000.c \ + nim_rtl2832_e4000.c \ + tuner_mt2063.c \ + demod_rtl2840.c \ + tuner_max3543.c \ + nim_rtl2832_mt2063.c \ + nim_rtl2832_max3543.c \ + nim_rtl2840_mt2063.c \ + nim_rtl2840_max3543.c \ + qam_demod_base.c \ + qam_nim_base.c \ + tuner_tda18272.c \ + nim_rtl2832_tda18272.c \ + rtl2832u_ioctl.c \ + nim_rtl2832_fc0013.c \ + tuner_fc0013.c \ smscoreapi.c \ sms-cards.c \ smsendian.c \ --- work/webcamd-3.2.0.2/config.orig +++ work/webcamd-3.2.0.2/config @@ -307,3 +307,5 @@ CONFIG_VIDEO_V4L2_COMMON=y CONFIG_VIDEO_VP27SMPX=y CONFIG_VIDEO_WM8739=y CONFIG_VIDEO_WM8775=y + +CONFIG_DVB_USB_RTL2832U=y --- work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/Kconfig.orig +++ work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/Kconfig @@ -402,3 +402,9 @@ config DVB_USB_MXL111SF select VIDEO_TVEEPROM help Say Y here to support the MxL111SF USB2.0 DTV receiver. + +config DVB_USB_RTL2832U + tristate "Realtek RTL2832U DVB-T USB2.0 support" + depends on DVB_USB + help + Realtek RTL2832U DVB-T driver. --- work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/Makefile.orig +++ work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/Makefile @@ -110,3 +110,18 @@ ccflags-y += -Idrivers/media/dvb/dvb-cor ccflags-y += -Idrivers/media/common/tuners EXTRA_CFLAGS += -Idrivers/media/dvb/ttpci + +dvb-usb-rtl2832u-objs := demod_rtl2832.o dvbt_demod_base.o dvbt_nim_base.o \ + foundation.o math_mpi.o nim_rtl2832_mxl5007t.o nim_rtl2832_fc2580.o \ + nim_rtl2832_mt2266.o rtl2832u.o rtl2832u_fe.o rtl2832u_io.o \ + tuner_mxl5007t.o tuner_fc2580.o tuner_mt2266.o tuner_tua9001.o \ + nim_rtl2832_tua9001.o tuner_fc0012.o nim_rtl2832_fc0012.o demod_rtl2836.o \ + dtmb_demod_base.o dtmb_nim_base.o nim_rtl2836_fc2580.o nim_rtl2836_mxl5007t.o \ + tuner_e4000.o nim_rtl2832_e4000.o tuner_mt2063.o demod_rtl2840.o \ + tuner_max3543.o nim_rtl2832_mt2063.o nim_rtl2832_max3543.o \ + nim_rtl2840_mt2063.o nim_rtl2840_max3543.o qam_demod_base.o qam_nim_base.o \ + tuner_tda18272.o nim_rtl2832_tda18272.o rtl2832u_ioctl.o nim_rtl2832_fc0013.o \ + tuner_fc0013.o + +#obj-m += dvb-usb-rtl2832u.o +obj-$(CONFIG_DVB_USB_RTL2832U) += dvb-usb-rtl2832u.o --- work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/rtl2832u.c.orig +++ work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/rtl2832u.c @@ -5,7 +5,7 @@ #include "rtl2832u_io.h" #include "rtl2832u_ioctl.h" -#if (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) || ((defined V4L2_VERSION) && (V4L2_VERSION >= 196608)) +#if 1 // (LINUX_VERSION_CODE >= KERNEL_VERSION(3,2,0)) || ((defined V4L2_VERSION) && (V4L2_VERSION >= 196608)) #define V4L2_REFACTORED_MFE_CODE #endif @@ -627,7 +627,7 @@ static int rtl2832u_rc_query(struct dvb_ tableSize = ARRAY_SIZE(rtl2832u_rc_keys_map_table); for (i = 0; i < tableSize; i++) { if(rtl2832u_rc_keys_map_table[i].scancode == scancode ){ -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) *event = rtl2832u_rc_keys_map_table[i].keycode; #else *event = rtl2832u_rc_keys_map_table[i].event; @@ -890,7 +890,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -988,7 +988,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1088,7 +1088,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1191,7 +1191,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1298,7 +1298,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1405,7 +1405,7 @@ static struct dvb_usb_device_properties /*remote control*/ .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1511,7 +1511,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1612,7 +1612,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else @@ -1713,7 +1713,7 @@ static struct dvb_usb_device_properties //remote control .rc.legacy = { -#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) +#if 1 // LINUX_VERSION_CODE >= KERNEL_VERSION(3,0,0) .rc_map_table = rtl2832u_rc_keys_map_table, //user define key map .rc_map_size = ARRAY_SIZE(rtl2832u_rc_keys_map_table), //user define key map size #else --- work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/rtl2832u_fe.c.orig +++ work/webcamd-3.2.0.2/media_tree/drivers/media/dvb/dvb-usb/rtl2832u_fe.c @@ -4,6 +4,10 @@ #include "rtl2832u.h" #include "rtl2832u_ioctl.h" +#if 1 // XXX ?? +#define cancel_delayed_work cancel_delayed_work_sync +#endif + extern int demod_default_type; extern int dtmb_error_packet_discard; extern int dvb_use_rtl2832u_card_type;