Skip to contentSkip to conversation

PCTV nanoStick T2 290e (Sony CXD2820R DVB-T/T2/C)

GIT PULL Antti Palosaari 4 participants 6 messages May 25, 2011 – Jun 3, 2011

Subsystems (2)
lore
Share & tools
lore
#0 lore raw

Moikka Mauro,

Fixes...

The following changes since commit 87cf028f3aa1ed51fe29c36df548aa714dc7438f:

[media] dm1105: GPIO handling added, I2C on GPIO added, LNB control
through GPIO reworked (2011-05-21 11:10:28 -0300)

are available in the git repository at:
git://linuxtv.org/anttip/media_tree.git pctv_290e

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA
cxd2820r: malloc buffers instead of stack
cxd2820r: fix bitfields
em28xx: EM28174 remote support
em28xx: add remote for PCTV nanoStick T2 290e
em28xx: correct PCTV nanoStick T2 290e device name
cxd2820r: correct missing error checks

 drivers/media/dvb/frontends/cxd2820r.h      |    4 +-
 drivers/media/dvb/frontends/cxd2820r_core.c |   22 +++++++++++++---
 drivers/media/dvb/frontends/cxd2820r_priv.h |    4 +-
 drivers/media/video/em28xx/em28xx-cards.c   |    8 +++---
 drivers/media/video/em28xx/em28xx-dvb.c     |   37 
++++++++++++++++++++++++---
 drivers/media/video/em28xx/em28xx-input.c   |    1 +
 6 files changed, 60 insertions(+), 16 deletions(-)

Antti

Signature · 1 line
http://palosaari.fi/
#1 lore raw

Em 25-05-2011 17:42, Antti Palosaari escreveu:

Quoted 7 lines

Moikka Mauro,

Fixes...

The following changes since commit 87cf028f3aa1ed51fe29c36df548aa714dc7438f:

Quoted 7 lines

[media] dm1105: GPIO handling added, I2C on GPIO added, LNB control through GPIO reworked (2011-05-21 11:10:28 -0300)

are available in the git repository at:
git://linuxtv.org/anttip/media_tree.git pctv_290e

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA

That patch is ugly, for several reasons:

1) we don't want a generic "options" parameter, whose meaning changes from device to devices;
2) what happens if someone has two em28xx devices plugged?
3) the better would be to detect if LNA is needed, or to add a DVBS2API call to enable/disable LNA.

Quoted 6 lines

cxd2820r: malloc buffers instead of stack
cxd2820r: fix bitfields
em28xx: EM28174 remote support
em28xx: add remote for PCTV nanoStick T2 290e
em28xx: correct PCTV nanoStick T2 290e device name
cxd2820r: correct missing error checks

The others are OK. Applied, thanks!

While here, I've updated the CARDLIST.* stuff, with the two patches bellow, and running the old -hg scripts that auto-generat the cardlists.

Cheers,
Mauro

-

commit 9b5a38d2e549f3f66ce10ee6b669a401bb5f186b

Author: Mauro Carvalho Chehab <[email protected]>
Date:   Wed Jun 1 10:16:25 2011 -0300

[media] em28xx: use the proper prefix for board names

All boards use EM28xxx_BOARD, to identify that the macro refers to a card entry. So:

EM2874_LEADERSHIP_ISDBT -> EM2874_BOARD_LEADERSHIP_ISDBT

drivers/media/video/em28xx/em28xx-cards.c +2 -2
index f15c734..7635a45 100644
@@ -1259,7 +1259,7 @@ struct em28xx_board em28xx_boards[] = {
 		} },
 	},
 
-	[EM2874_LEADERSHIP_ISDBT] = {
+	[EM2874_BOARD_LEADERSHIP_ISDBT] = {
 		.i2c_speed      = EM2874_I2C_SECONDARY_BUS_SELECT |
 				  EM28XX_I2C_CLK_WAIT_ENABLE |
 				  EM28XX_I2C_FREQ_100_KHZ,
@@ -1937,7 +1937,7 @@ static struct em28xx_hash_table em28xx_i2c_hash[] = {
 	{0x77800080, EM2860_BOARD_TVP5150_REFERENCE_DESIGN, TUNER_ABSENT},
 	{0xc51200e3, EM2820_BOARD_GADMEI_TVR200, TUNER_LG_PAL_NEW_TAPC},
 	{0x4ba50080, EM2861_BOARD_GADMEI_UTV330PLUS, TUNER_TNF_5335MF},
-	{0x6b800080, EM2874_LEADERSHIP_ISDBT, TUNER_ABSENT},
+	{0x6b800080, EM2874_BOARD_LEADERSHIP_ISDBT, TUNER_ABSENT},
 };
 
 /* I2C possible address to saa7115, tvp5150, msp3400, tvaudio */
drivers/media/video/em28xx/em28xx-dvb.c +1 -1
index 7904ca4..012ab8e 100644
@@ -546,7 +546,7 @@ static int dvb_init(struct em28xx *dev)
 	em28xx_set_mode(dev, EM28XX_DIGITAL_MODE);
 	/* init frontend */
 	switch (dev->model) {
-	case EM2874_LEADERSHIP_ISDBT:
+	case EM2874_BOARD_LEADERSHIP_ISDBT:
 		dvb->fe[0] = dvb_attach(s921_attach,
 				&sharp_isdbt, &dev->i2c_adap);
 
drivers/media/video/em28xx/em28xx.h +1 -1
index 3cca331..28b9954 100644
@@ -117,7 +117,7 @@
 #define EM2800_BOARD_VC211A			  74
 #define EM2882_BOARD_DIKOM_DK300		  75
 #define EM2870_BOARD_KWORLD_A340		  76
-#define EM2874_LEADERSHIP_ISDBT			  77
+#define EM2874_BOARD_LEADERSHIP_ISDBT			  77
 #define EM28174_BOARD_PCTV_290E                   78
 
 

commit 8d01aee82b8d2b30507a181609ba190bf192fcb0

Author: Mauro Carvalho Chehab <[email protected]>
Date:   Wed Jun 1 10:23:53 2011 -0300

[media] Update several cardlists

Several cardlist entries are missed. Fix them by running some script magic (about the same scripts we used to have at -hg tree).

Documentation/video4linux/CARDLIST.cx23885 +2 -0
index 87c4634..8910449 100644
@@ -27,3 +27,5 @@
  26 -> Hauppauge WinTV-HVR1290                             [0070:8551]
  27 -> Mygica X8558 PRO DMB-TH                             [14f1:8578]
  28 -> LEADTEK WinFast PxTV1200                            [107d:6f22]
+ 29 -> GoTView X5 3D Hybrid                                [5654:2390]
+ 30 -> NetUP Dual DVB-T/C-CI RF                            [1b55:e2e4]
Documentation/video4linux/CARDLIST.cx88 +1 -0
index 42517d9..d9c0f11 100644
@@ -84,3 +84,4 @@
  83 -> Prof 7301 DVB-S/S2                                  [b034:3034]
  84 -> Samsung SMT 7020 DVB-S                              [18ac:dc00,18ac:dccd]
  85 -> Twinhan VP-1027 DVB-S                               [1822:0023]
+ 86 -> TeVii S464 DVB-S/S2                                 [d464:9022]
Documentation/video4linux/CARDLIST.em28xx +2 -0
index 9aae449..4a7b3df 100644
@@ -74,3 +74,5 @@
  74 -> Actionmaster/LinXcel/Digitus VC211A      (em2800)
  75 -> Dikom DK300                              (em2882)
  76 -> KWorld PlusTV 340U or UB435-Q (ATSC)     (em2870)        [1b80:a340]
+ 77 -> EM2874 Leadership ISDBT                  (em2874)
+ 78 -> PCTV nanoStick T2 290e                   (em28174)
Documentation/video4linux/CARDLIST.saa7134 +4 -0
index 6b4c72d..7efae9b 100644
@@ -182,3 +182,7 @@
 181 -> TechoTrend TT-budget T-3000              [13c2:2804]
 182 -> Kworld PCI SBTVD/ISDB-T Full-Seg Hybrid  [17de:b136]
 183 -> Compro VideoMate Vista M1F               [185b:c900]
+184 -> Encore ENLTV-FM 3                        [1a7f:2108]
+185 -> MagicPro ProHDTV Pro2 DMB-TH/Hybrid      [17de:d136]
+186 -> Beholder BeholdTV 501                    [5ace:5010]
+187 -> Beholder BeholdTV 503 FM                 [5ace:5030]
Documentation/video4linux/CARDLIST.tuner +1 -0
index e67c1db..562d7fa 100644
@@ -83,3 +83,4 @@ tuner=82 - Philips CU1216L
 tuner=83 - NXP TDA18271
 tuner=84 - Sony BTF-Pxn01Z
 tuner=85 - Philips FQ1236 MK5
+tuner=86 - Tena TNF5337 MFD
Documentation/video4linux/CARDLIST.usbvision +2 -0
index 0b72d3f..6fd1af3 100644
@@ -63,3 +63,5 @@
  62 -> Pinnacle PCTV Bungee USB (PAL) FM                        [2304:0419]
  63 -> Hauppauge WinTv-USB                                      [2400:4200]
  64 -> Pinnacle Studio PCTV USB (NTSC) FM V3                    [2304:0113]
+ 65 -> Nogatech USB MicroCam NTSC (NV3000N)                     [0573:3000]
+ 66 -> Nogatech USB MicroCam PAL (NV3001P)                      [0573:3001]
#2 lore raw
Quoted 8 lines · Mauro Carvalho Chehab

Em 25-05-2011 17:42, Antti Palosaari escreveu:

Quoted 2 lines

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA

That patch is ugly, for several reasons:

1) we don't want a generic "options" parameter, whose meaning changes from

    device to devices;

I agree it is not proper solution, but in my mind it is better to offer some solution than no solution at all.

Quoted 1 line

2) what happens if someone has two em28xx devices plugged?

It depends depends devices, currently only nanoStick T2 only looks that param, other just ignore. If there is two nanoStics then both have same LNA settings.

That's just like same behaviour as for example remote controller polling. Or for example DiBcom driver LNA, since it does have similar module param already. Will you you commit it if I rename it similarly as DiBcom?

Quoted 2 lines

3) the better would be to detect if LNA is needed, or to add a DVBS2API call to enable/disable LNA.

True, but it needs some research. There is many hardware which gets signal input from demod or tuner and makes some fine tune according to that. We need to define some new callbacks for demod and tuner in order to do this kind of actions. Or just add new LNA param to API use it manually.

regards,
Antti

Signature · 1 line
http://palosaari.fi/
#3 lore raw
Quoted 24 lines · Antti Palosaari
Quoted 8 lines · Mauro Carvalho Chehab

Em 25-05-2011 17:42, Antti Palosaari escreveu:

Quoted 2 lines

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA

That patch is ugly, for several reasons:

1) we don't want a generic "options" parameter, whose meaning changes from

    device to devices;

I agree it is not proper solution, but in my mind it is better to offer some solution than no solution at all.

Quoted 1 line

2) what happens if someone has two em28xx devices plugged?

It depends depends devices, currently only nanoStick T2 only looks that param, other just ignore. If there is two nanoStics then both have same LNA settings.

That's just like same behaviour as for example remote controller polling. Or for example DiBcom driver LNA, since it does have similar module param already. Will you you commit it if I rename it similarly as DiBcom?

Quoted 8 lines
Quoted 2 lines

3) the better would be to detect if LNA is needed, or to add a DVBS2API call to enable/disable LNA.

True, but it needs some research. There is many hardware which gets signal input from demod or tuner and makes some fine tune according to that. We need to define some new callbacks for demod and tuner in order to do this kind of actions.
Or just add new LNA param to API use it manually.

Or option
4) just enable the LNA unconditionally.

I did some testing in my environment, and I was unable to tune anything on either DVB-T or DVB-C without the LNA enabled. I'm of course aware that this depends on your signal, but have you actually seen a real life signal where tuning fails with the LNA enabled and works without it?

I do believe that my DVB-C signal at least is pretty strong.

Bjørn

#4 lore raw

Here in the UK the mux strengths and parameters are all over the place.

I have had situations in the past (with dib0700 I think) where I've had to twiddle the force_lna setting one way or the other depending on how they've decided to reconfigure my local transmitter.

So I'd be cautious about flat-out enabling it the whole time.

Signature · 2 lines
Steve Kerrison MEng Hons.
http://www.stevekerrison.com/ 
Quoted 53 lines · Bjørn Mork
Quoted 24 lines · Antti Palosaari
Quoted 8 lines · Mauro Carvalho Chehab

Em 25-05-2011 17:42, Antti Palosaari escreveu:

Quoted 2 lines

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA

That patch is ugly, for several reasons:

1) we don't want a generic "options" parameter, whose meaning changes from

    device to devices;

I agree it is not proper solution, but in my mind it is better to offer some solution than no solution at all.

Quoted 1 line

2) what happens if someone has two em28xx devices plugged?

It depends depends devices, currently only nanoStick T2 only looks that param, other just ignore. If there is two nanoStics then both have same LNA settings.

That's just like same behaviour as for example remote controller polling. Or for example DiBcom driver LNA, since it does have similar module param already. Will you you commit it if I rename it similarly as DiBcom?

Quoted 8 lines
Quoted 2 lines

3) the better would be to detect if LNA is needed, or to add a DVBS2API call to enable/disable LNA.

True, but it needs some research. There is many hardware which gets signal input from demod or tuner and makes some fine tune according to that. We need to define some new callbacks for demod and tuner in order to do this kind of actions.
Or just add new LNA param to API use it manually.

Or option
4) just enable the LNA unconditionally.

I did some testing in my environment, and I was unable to tune anything on either DVB-T or DVB-C without the LNA enabled. I'm of course aware that this depends on your signal, but have you actually seen a real life signal where tuning fails with the LNA enabled and works without it?

I do believe that my DVB-C signal at least is pretty strong.

Bjørn

--
To unsubscribe from this list: send the line "unsubscribe linux-media" in the body of a message to [email protected]
More majordomo info at http://vger.kernel.org/majordomo-info.html

#5 lore raw
In reply to Antti Palosaari

Em 03-06-2011 09:34, Antti Palosaari escreveu:

Quoted 16 lines · Mauro Carvalho Chehab
Quoted 8 lines

Em 25-05-2011 17:42, Antti Palosaari escreveu:

Quoted 2 lines

Antti Palosaari (7):
em28xx-dvb: add module param "options" and use it for LNA

That patch is ugly, for several reasons:

1) we don't want a generic "options" parameter, whose meaning changes from

    device to devices;

I agree it is not proper solution, but in my mind it is better to offer some solution than no solution at all.

Quoted 1 line

2) what happens if someone has two em28xx devices plugged?

It depends depends devices, currently only nanoStick T2 only looks that param, other just ignore. If there is two nanoStics then both have same LNA settings.

Quoted 7 lines

That's just like same behaviour as for example remote controller polling. Or for example DiBcom driver LNA, since it does have similar module param already. Will you you commit it if I rename it similarly as DiBcom?

Quoted 2 lines

3) the better would be to detect if LNA is needed, or to add a DVBS2API call to enable/disable LNA.

True, but it needs some research. There is many hardware which gets signal input from demod or tuner and makes some fine tune according to that. We need to define some new callbacks for demod and tuner in order to do this kind of actions. Or just add new LNA param to API use it manually.

I would then just add a LNA option via DVBS2API to allow enabling/disabling it. (LNA enabled seems to be the better default).

Modprobe parameters for things like that sucks.

Cheers,
Mauro