Re: [PATCH] Add new dvb-t board ":Zolid Hybrid Tv Stick"

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Op Wed, 25 Apr 2018 08:18:55 -0300
Mauro Carvalho Chehab <mchehab+samsung@xxxxxxxxxx> schreef:

> Em Wed, 25 Apr 2018 12:11:10 +0200
> mjs <mjstork@xxxxxxxxx> escreveu:
> 
> > Op Wed, 25 Apr 2018 06:16:20 -0300
> > Mauro Carvalho Chehab <mchehab+samsung@xxxxxxxxxx> schreef:
> >   
> > > Em Wed, 25 Apr 2018 11:09:50 +0200
> > > mjs <mjstork@xxxxxxxxx> escreveu:
> > >     
> > > > From 0a3355b47dc465c6372d30fa4a36d1c5db6c0fe2 Mon Sep 17 00:00:00 2001
> > > > From: Marcel Stork <mjstork@xxxxxxxxx>
> > > > Date: Wed, 25 Apr 2018 10:53:34 +0200
> > > > Subject: [PATCH] Add new dvb-t board ":Zolid Hybrid Tv Stick".
> > > > 
> > > > Extra code to be able to use this stick, only digital, not analog nor remote-control.
> > > > 
> > > > Changes to be committed:
> > > > 	modified:   em28xx-cards.c
> > > > 	modified:   em28xx-dvb.c
> > > > 	modified:   em28xx.h      
> > > 
> > > You forgot to add your Signed-off-by. That's mandatory for patches to
> > > be acepted.    
> > 
> > Ok, still learning
> >   
> > >     
> > > > 
> > > > ---
> > > >  em28xx-cards.c | 30 +++++++++++++++++++++++++++++-
> > > >  em28xx-dvb.c   |  1 +
> > > >  em28xx.h       |  1 +
> > > >  3 files changed, 31 insertions(+), 1 deletion(-)      
> > > 
> > > 
> > > use git diff against upstream tree. This should be using
> > > a different paths there, e.g. drivers/media/usb/em28xx/...    
> > 
> > This is actually against the upstream tree, in line with your advice in a previous mail.
> > After git clone... and ./build, I did not do "make install" but copy-paste out of the /media_build/linux/drivers/media/usb/em28xx
> > Reason, I do not have an experimental pc and some parts are experimental.
> > I did not want to take the risk to crash my working pc at this moment in time.
> > 
> > I will try to work around this problem.  
> 
> Upstream is actually this tree:
> 
> 	https://git.linuxtv.org/media_tree.git/
> 
> The media_build tree is what we call a "backport tree" :-)

I started with "https://linuxtv.org/wiki/index.php/Development:_How_to_submit_patches"; in line with your advice in a previous mail.
Followed the text to "https://linuxtv.org/wiki/index.php/How_to_Obtain,_Build_and_Install_V4L-DVB_Device Drivers" basic approach.
Also to "https://git.linuxtv.org/media_build.git/about/";
I have used "git clone --depth=1 git://linuxtv.org/media_build.git" followed by ./build and copy/paste files mentioned above.
This is not the required upstream tree ?

Work around:
Added the path to all files manually.
This is acceptable ?

> 
> >    
> 
> > >     
> > > > 
> > > > diff --git a/em28xx-cards.c b/em28xx-cards.c
> > > > index 6e0e67d..01b38a4 100644
> > > > --- a/em28xx-cards.c
> > > > +++ b/em28xx-cards.c
> > > > @@ -87,6 +87,21 @@ static const struct em28xx_reg_seq default_digital[] = {
> > > >  	{	-1,		-1,	-1,		-1},
> > > >  };
> > > >  
> > > > +/* Board Zolid Hybrid Tv Stick */
> > > > +static struct em28xx_reg_seq zolid_tuner[] = {
> > > > +	{EM2820_R08_GPIO_CTRL,		0xfd,		0xff,	100},
> > > > +	{EM2820_R08_GPIO_CTRL,		0xfe,		0xff,	100},
> > > > +	{		-1,					-1,			-1,		 -1},
> > > > +};
> > > > +
> > > > +static struct em28xx_reg_seq zolid_digital[] = {
> > > > +	{EM2820_R08_GPIO_CTRL,		0x6a,		0xff,	100},
> > > > +	{EM2820_R08_GPIO_CTRL,		0x7a,		0xff,	100},
> > > > +	{EM2880_R04_GPO,			0x04,		0xff,	100},
> > > > +	{EM2880_R04_GPO,			0x0c,		0xff,	100},
> > > > +	{	-1,						-1,			-1,		 -1},
> > > > +};
> > > > +
> > > >  /* Board Hauppauge WinTV HVR 900 analog */
> > > >  static const struct em28xx_reg_seq hauppauge_wintv_hvr_900_analog[] = {
> > > >  	{EM2820_R08_GPIO_CTRL,	0x2d,	~EM_GPIO_4,	10},
> > > > @@ -679,6 +694,16 @@ const struct em28xx_board em28xx_boards[] = {
> > > >  			.amux     = EM28XX_AMUX_VIDEO,
> > > >  		} },
> > > >  	},
> > > > +	[EM2882_BOARD_ZOLID_HYBRID_TV_STICK] = {
> > > > +		.name			= ":ZOLID HYBRID TV STICK",
> > > > +		.tuner_type		= TUNER_XC2028,
> > > > +		.tuner_gpio		= zolid_tuner,
> > > > +		.decoder		= EM28XX_TVP5150,
> > > > +		.xclk			= EM28XX_XCLK_FREQUENCY_12MHZ,
> > > > +		.mts_firmware	= 1,
> > > > +		.has_dvb		= 1,
> > > > +		.dvb_gpio		= zolid_digital,
> > > > +	},
> > > >  	[EM2820_BOARD_KWORLD_PVRTV2800RF] = {
> > > >  		.name         = "Kworld PVR TV 2800 RF",
> > > >  		.tuner_type   = TUNER_TEMIC_PAL,
> > > > @@ -2493,7 +2518,7 @@ struct usb_device_id em28xx_id_table[] = {
> > > >  			.driver_info = EM2820_BOARD_UNKNOWN },
> > > >  	{ USB_DEVICE(0xeb1a, 0x2881),
> > > >  			.driver_info = EM2820_BOARD_UNKNOWN },
> > > > -	{ USB_DEVICE(0xeb1a, 0x2883),
> > > > +	{ USB_DEVICE(0xeb1a, 0x2883), /* used by zolid hybrid tv stick */
> > > >  			.driver_info = EM2820_BOARD_UNKNOWN },
> > > >  	{ USB_DEVICE(0xeb1a, 0x2868),
> > > >  			.driver_info = EM2820_BOARD_UNKNOWN },
> > > > @@ -2688,6 +2713,7 @@ static const struct em28xx_hash_table em28xx_eeprom_hash[] = {
> > > >  	{0xb8846b20, EM2881_BOARD_PINNACLE_HYBRID_PRO, TUNER_XC2028},
> > > >  	{0x63f653bd, EM2870_BOARD_REDDO_DVB_C_USB_BOX, TUNER_ABSENT},
> > > >  	{0x4e913442, EM2882_BOARD_DIKOM_DK300, TUNER_XC2028},
> > > > +	{0x85dd871e, EM2882_BOARD_ZOLID_HYBRID_TV_STICK, TUNER_XC2028},
> > > >  };
> > > >  
> > > >  /* I2C devicelist hash table for devices with generic USB IDs */
> > > > @@ -2699,6 +2725,7 @@ static const struct em28xx_hash_table em28xx_i2c_hash[] = {
> > > >  	{0xc51200e3, EM2820_BOARD_GADMEI_TVR200, TUNER_LG_PAL_NEW_TAPC},
> > > >  	{0x4ba50080, EM2861_BOARD_GADMEI_UTV330PLUS, TUNER_TNF_5335MF},
> > > >  	{0x6b800080, EM2874_BOARD_LEADERSHIP_ISDBT, TUNER_ABSENT},
> > > > +	{0x27e10080, EM2882_BOARD_ZOLID_HYBRID_TV_STICK, TUNER_XC2028},
> > > >  };
> > > >  
> > > >  /* NOTE: introduce a separate hash table for devices with 16 bit eeproms */
> > > > @@ -3187,6 +3214,7 @@ void em28xx_setup_xc3028(struct em28xx *dev, struct xc2028_ctrl *ctl)
> > > >  	case EM2880_BOARD_TERRATEC_HYBRID_XS:
> > > >  	case EM2880_BOARD_TERRATEC_HYBRID_XS_FR:
> > > >  	case EM2881_BOARD_PINNACLE_HYBRID_PRO:
> > > > +	case EM2882_BOARD_ZOLID_HYBRID_TV_STICK:
> > > >  		ctl->demod = XC3028_FE_ZARLINK456;
> > > >  		break;
> > > >  	case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900_R2:
> > > > diff --git a/em28xx-dvb.c b/em28xx-dvb.c
> > > > index ebe62ff..640eafe 100644
> > > > --- a/em28xx-dvb.c
> > > > +++ b/em28xx-dvb.c
> > > > @@ -1488,6 +1488,7 @@ static int em28xx_dvb_init(struct em28xx *dev)
> > > >  	case EM2880_BOARD_HAUPPAUGE_WINTV_HVR_900:
> > > >  	case EM2882_BOARD_TERRATEC_HYBRID_XS:
> > > >  	case EM2880_BOARD_EMPIRE_DUAL_TV:
> > > > +	case EM2882_BOARD_ZOLID_HYBRID_TV_STICK:
> > > >  		dvb->fe[0] = dvb_attach(zl10353_attach,
> > > >  					&em28xx_zl10353_xc3028_no_i2c_gate,
> > > >  					&dev->i2c_adap[dev->def_i2c_bus]);
> > > > diff --git a/em28xx.h b/em28xx.h
> > > > index 5fc70d9..37bb696 100644
> > > > --- a/em28xx.h
> > > > +++ b/em28xx.h
> > > > @@ -146,6 +146,7 @@
> > > >  #define EM28174_BOARD_HAUPPAUGE_WINTV_DUALHD_DVB  99
> > > >  #define EM28174_BOARD_HAUPPAUGE_WINTV_DUALHD_01595 100
> > > >  #define EM2884_BOARD_TERRATEC_H6		  101
> > > > +#define EM2882_BOARD_ZOLID_HYBRID_TV_STICK		102
> > > >  
> > > >  /* Limits minimum and default number of buffers */
> > > >  #define EM28XX_MIN_BUF 4      
> > > 
> > > 
> > >     
  Thanks,
    Marcel  



[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux