# file OSD_RAW_CMD_patch_2.diff --- a/linux/drivers/media/common/saa716x/saa716x_ff_cmd.h.orig 2011-11-12 14:46:51.175700236 +0100 +++ b/linux/drivers/media/common/saa716x/saa716x_ff_cmd.h 2011-11-12 14:45:10.103702959 +0100 @@ -1,6 +1,24 @@ #ifndef __SAA716x_FF_CMD_H #define __SAA716x_FF_CMD_H +#if !defined OSD_RAW_CMD +typedef struct osd_raw_cmd_s { + const void *cmd_data; + int cmd_len; + void *result_data; + int result_len; +} osd_raw_cmd_t; + +typedef struct osd_raw_data_s { + const void *data_buffer; + int data_length; + int data_handle; +} osd_raw_data_t; + +#define OSD_RAW_CMD _IOWR('o', 162, osd_raw_cmd_t) +#define OSD_RAW_DATA _IOWR('o', 163, osd_raw_data_t) +#endif + extern int sti7109_cmd_init(struct sti7109_dev *sti7109); extern int sti7109_raw_cmd(struct sti7109_dev * sti7109, osd_raw_cmd_t * cmd); # file v4l-dvb-saa716x-Makefilepatch-2.diff --- v4l-dvb-saa716x-cfa4b4faab67/linux/drivers/media/common/saa716x/Makefile.orig 2013-03-02 07:44:51.112642592 +0100 +++ v4l-dvb-saa716x-cfa4b4faab67/linux/drivers/media/common/saa716x/Makefile 2013-03-02 07:46:56.703138542 +0100 @@ -24,3 +24,5 @@ obj-$(CONFIG_DVB_SAA716X_FF) += saa716x_ff.o EXTRA_CFLAGS = -Idrivers/media/dvb/dvb-core/ -Idrivers/media/dvb/frontends/ -Idrivers/media/dvb-core/ -Idrivers/media/dvb-frontends/ +EXTRA_CFLAGS += -Idrivers/media/common/tuners/ # up to kernel 3.6 +EXTRA_CFLAGS += -Idrivers/media/tuners/ # kernel 3.7+ # file v4l-dvb-saa716x-3.19-set_gpio.patch --- a/linux/drivers/media/common/saa716x/saa716x_budget.c 2014-11-09 15:44:55.000000000 +0100 +++ b/linux/drivers/media/common/saa716x/saa716x_budget.c 2015-02-28 13:58:01.258743639 +0100 @@ -497,10 +497,10 @@ break; } - err = stv090x_set_gpio(fe, 2, 0, en, 0); + err = skystar2_stv090x_config.set_gpio(fe, 2, 0, en, 0); if (err < 0) goto exit; - err = stv090x_set_gpio(fe, 3, 0, sel, 0); + err = skystar2_stv090x_config.set_gpio(fe, 3, 0, sel, 0); if (err < 0) goto exit; @@ -519,7 +519,7 @@ else value = 0; - err = stv090x_set_gpio(fe, 4, 0, value, 0); + err = skystar2_stv090x_config.set_gpio(fe, 4, 0, value, 0); if (err < 0) goto exit; # file v4l-dvb-saa716x-4.2-fix-compile.patch --- a/linux/drivers/media/common/saa716x/saa716x_budget.c 2015-09-03 00:30:08.662553247 +0200 +++ b/linux/drivers/media/common/saa716x/saa716x_budget.c 2015-09-03 00:31:03.899206845 +0200 @@ -306,7 +306,7 @@ #define SAA716x_MODEL_TWINHAN_VP1028 "Twinhan/Azurewave VP-1028" #define SAA716x_DEV_TWINHAN_VP1028 "DVB-S" -static int vp1028_dvbs_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage) +static int vp1028_dvbs_set_voltage(struct dvb_frontend *fe, enum fe_sec_voltage voltage) { struct saa716x_dev *saa716x = fe->dvb->priv; --- a/linux/drivers/media/common/saa716x/saa716x_hybrid.c 2014-11-09 15:44:55.000000000 +0100 +++ b/linux/drivers/media/common/saa716x/saa716x_hybrid.c 2015-09-03 00:31:03.899206845 +0200 @@ -321,7 +321,7 @@ .request_firmware = tda1004x_vp6090_request_firmware, }; -static int vp6090_dvbs_set_voltage(struct dvb_frontend *fe, fe_sec_voltage_t voltage) +static int vp6090_dvbs_set_voltage(struct dvb_frontend *fe, enum fe_sec_voltage voltage) { struct saa716x_dev *saa716x = fe->dvb->priv; --- a/linux/drivers/media/common/saa716x/saa716x_pci.c 2014-11-09 15:44:55.000000000 +0100 +++ b/linux/drivers/media/common/saa716x/saa716x_pci.c 2015-09-03 00:31:03.900206839 +0200 @@ -1,3 +1,5 @@ +#include +#include #include #include #include