public inbox for linux-media@vger.kernel.org
 help / color / mirror / Atom feed
* DVB support for MSI DigiVox A/D II and KWorld 320U
@ 2009-10-12 19:23 Lauri Laanmets
  2009-10-12 20:13 ` Devin Heitmueller
  0 siblings, 1 reply; 9+ messages in thread
From: Lauri Laanmets @ 2009-10-12 19:23 UTC (permalink / raw)
  To: linux-media

Hello

I have KWorld 320U USB DVT-T Hybrid and trying to get DVB part working. 
The code from mcentral worked pretty well but as it is closed down now I 
would like to contribute to linux-media and enable and validate the 
hardware support for this device.

I have:

Linux 2.6.28-15-generic x86_64 GNU/Linux
Bus 001 Device 002: ID eb1a:e320 eMPIA Technology, Inc.

This device has the same id with "MSI DigiVox A/D II" but I guess it 
shouldn't matter because it appears to be exactly the same thing just 
with the different brand label with Zarlink ZL10353 DVB-T on both boards.

I have downloaded the code from v4l-dvb and commented out the "#if 0" 
around the device dvb definition ( em28xx-cards.c ), also added it to 
frontend registration ( em28xx-dvb.c) the same as KWorld 310 - just a 
normal Zarlink attach function.

The trouble is that I get an error:

zl10353_read_register: readreg error (reg=127, ret==-19)

and I cannot understand why. I have the mcentral code still lying around 
and comparing those codes doesn't seem to have any difference. Maybe 
there still is a magic bit somewhere to set?

Otherwise the device is recognized correctly:

[   34.704863] em28xx #0: chip ID is em2882/em2883
[   34.863889] em28xx #0: i2c eeprom 00: 1a eb 67 95 1a eb 20 e3 d0 12 
5c 00 6a 22 00 00
[   34.863898] em28xx #0: i2c eeprom 10: 00 00 04 57 4e 07 00 00 00 00 
00 00 00 00 00 00
[   34.863906] em28xx #0: i2c eeprom 20: 46 00 01 00 f0 10 01 00 00 00 
00 00 5b 1e 00 00
[   34.863913] em28xx #0: i2c eeprom 30: 00 00 20 40 20 80 02 20 01 01 
00 00 00 00 00 00
[   34.863920] em28xx #0: i2c eeprom 40: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863927] em28xx #0: i2c eeprom 50: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863933] em28xx #0: i2c eeprom 60: 00 00 00 00 00 00 00 00 00 00 
22 03 55 00 53 00
[   34.863940] em28xx #0: i2c eeprom 70: 42 00 20 00 32 00 38 00 38 00 
31 00 20 00 44 00
[   34.863947] em28xx #0: i2c eeprom 80: 65 00 76 00 69 00 63 00 65 00 
00 00 00 00 00 00
[   34.863954] em28xx #0: i2c eeprom 90: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863960] em28xx #0: i2c eeprom a0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863967] em28xx #0: i2c eeprom b0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863974] em28xx #0: i2c eeprom c0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863981] em28xx #0: i2c eeprom d0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863987] em28xx #0: i2c eeprom e0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.863994] em28xx #0: i2c eeprom f0: 00 00 00 00 00 00 00 00 00 00 
00 00 00 00 00 00
[   34.864002] em28xx #0: EEPROM ID= 0x9567eb1a, EEPROM hash = 0x74913442
[   34.864004] em28xx #0: EEPROM info:
[   34.864005] em28xx #0:       AC97 audio (5 sample rates)
[   34.864007] em28xx #0:       500mA max power
[   34.864009] em28xx #0:       Table at 0x04, strings=0x226a, 0x0000, 
0x0000
[   34.864012] em28xx #0: Identified as MSI DigiVox A/D II (card=50)

Regards
Lauri





^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-10-12 19:23 Lauri Laanmets
@ 2009-10-12 20:13 ` Devin Heitmueller
  2009-10-12 20:41   ` Lauri Laanmets
  0 siblings, 1 reply; 9+ messages in thread
From: Devin Heitmueller @ 2009-10-12 20:13 UTC (permalink / raw)
  To: Lauri Laanmets; +Cc: linux-media

On Mon, Oct 12, 2009 at 3:23 PM, Lauri Laanmets
<lauri.laanmets@proekspert.ee> wrote:
> Hello
>
> I have KWorld 320U USB DVT-T Hybrid and trying to get DVB part working. The
> code from mcentral worked pretty well but as it is closed down now I would
> like to contribute to linux-media and enable and validate the hardware
> support for this device.
>
> I have:
>
> Linux 2.6.28-15-generic x86_64 GNU/Linux
> Bus 001 Device 002: ID eb1a:e320 eMPIA Technology, Inc.
>
> This device has the same id with "MSI DigiVox A/D II" but I guess it
> shouldn't matter because it appears to be exactly the same thing just with
> the different brand label with Zarlink ZL10353 DVB-T on both boards.
>
> I have downloaded the code from v4l-dvb and commented out the "#if 0" around
> the device dvb definition ( em28xx-cards.c ), also added it to frontend
> registration ( em28xx-dvb.c) the same as KWorld 310 - just a normal Zarlink
> attach function.
>
> The trouble is that I get an error:
>
> zl10353_read_register: readreg error (reg=127, ret==-19)
>
> and I cannot understand why. I have the mcentral code still lying around and
> comparing those codes doesn't seem to have any difference. Maybe there still
> is a magic bit somewhere to set?

In em28xx-dvb.c, try using "em28xx_zl10353_with_xc3028_no_i2c_gate" in
the dvb_attach() instead of "em28xx_zl10353_with_xc3028".
Alternatively, move the case line for your board further down so it's
the same as "EM2882_BOARD_TERRATEC_HYBRID_XS" instead of being the
same as "EM2880_BOARD_KWORLD_DVB_310U"

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-10-12 20:13 ` Devin Heitmueller
@ 2009-10-12 20:41   ` Lauri Laanmets
  2009-10-12 20:45     ` Devin Heitmueller
  0 siblings, 1 reply; 9+ messages in thread
From: Lauri Laanmets @ 2009-10-12 20:41 UTC (permalink / raw)
  To: Devin Heitmueller, linux-media

Hello

Tried that but the result is basically the same: "zl10353_attach" gives

[  491.490259] zl10353_read_register: readreg error (reg=127, ret==-19)

And it is funny that if I compile the mcentral latest code in the same 
kernel, it works, but I cannot find the difference in the code :)

Lauri


Devin Heitmueller wrote:
>
>
> In em28xx-dvb.c, try using "em28xx_zl10353_with_xc3028_no_i2c_gate" in
> the dvb_attach() instead of "em28xx_zl10353_with_xc3028".
> Alternatively, move the case line for your board further down so it's
> the same as "EM2882_BOARD_TERRATEC_HYBRID_XS" instead of being the
> same as "EM2880_BOARD_KWORLD_DVB_310U"
>
> Devin
>
>   


^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-10-12 20:41   ` Lauri Laanmets
@ 2009-10-12 20:45     ` Devin Heitmueller
  0 siblings, 0 replies; 9+ messages in thread
From: Devin Heitmueller @ 2009-10-12 20:45 UTC (permalink / raw)
  To: Lauri Laanmets; +Cc: linux-media

On Mon, Oct 12, 2009 at 4:41 PM, Lauri Laanmets
<lauri.laanmets@proekspert.ee> wrote:
> Hello
>
> Tried that but the result is basically the same: "zl10353_attach" gives
>
> [  491.490259] zl10353_read_register: readreg error (reg=127, ret==-19)
>
> And it is funny that if I compile the mcentral latest code in the same
> kernel, it works, but I cannot find the difference in the code :)
>
> Lauri

Check the dvb_gpio setting in the board profile.  On some of those
boards you need to take put one of the GPO pins high to take the demod
out of reset.  The KWorld 315u and 330u are both like that.

Devin

-- 
Devin J. Heitmueller - Kernel Labs
http://www.kernellabs.com

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
       [not found] <31497292.9391255416643929.JavaMail.root@mail>
@ 2009-10-13  6:54 ` Lauri Laanmets
  2009-11-13  8:37   ` Fwd: " Lauri Laanmets
  0 siblings, 1 reply; 9+ messages in thread
From: Lauri Laanmets @ 2009-10-13  6:54 UTC (permalink / raw)
  To: Devin Heitmueller; +Cc: linux-media

Hello

> Check the dvb_gpio setting in the board profile.  On some of those
> boards you need to take put one of the GPO pins high to take the demod
> out of reset.  The KWorld 315u and 330u are both like that.

Absolutely true. Using the same pin setting as KWorld 330U made the I2C communication work correctly and the device is found.

Now the trouble is that scanning channels doesn't work, blue LED doesn't light up and the device is not heated up.

I'm quite newbie in this field, is there a good way to know what registers to set exactly?

I see that the working "mcentral" code had the following setting:

#define EETI_DEFAULT_GPIO {						\
	.ts1_on     = _BIT_VAL(EM28XX_GPIO0,  0, 0), 			\
	.a_on       = _BIT_VAL(EM28XX_GPIO1,  0, 0), 			\
	.xc3028_sec = _BIT_VAL(EM28XX_GPIO2,  1, 0), 			\
	/* reserved */							\
	.t1_reset   = _BIT_VAL(EM28XX_GPIO4,  0, 1), 			\
	/* reserved */							\
	.t1_on      = _BIT_VAL(EM28XX_GPIO6,  0, 0), 			\
	.t2_on      = _BIT_VAL(EM28XX_GPIO7,  1, 0), 			\
									\
	.l1_on      = _BIT_VAL(EM28XX_GOP2,   1, 0), 			\
	.d1_reset   = _BIT_VAL(EM28XX_GOP3,   0, 1), 			\
}

But the v4l-dvb uses:

static struct em28xx_reg_seq kworld_330u_digital[] = {
	{EM28XX_R08_GPIO,	0x6e,	~EM_GPIO_4,	10},
	{EM2880_R04_GPO,	0x08,	0xff,		10},
	{ -1,			-1,	-1,		-1},
};

Lauri

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Fwd: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-10-13  6:54 ` DVB support for MSI DigiVox A/D II and KWorld 320U Lauri Laanmets
@ 2009-11-13  8:37   ` Lauri Laanmets
  2009-11-13  8:47     ` Markus Rechberger
  0 siblings, 1 reply; 9+ messages in thread
From: Lauri Laanmets @ 2009-11-13  8:37 UTC (permalink / raw)
  To: linux-media

Hello

I have managed to attach the device without any error messages now but the tuning and playback of DVB still doesn't work. I get a lot of these error messages:

[  247.268152] em28xx #0: reading i2c device failed (error=-110)
[  247.268161] xc2028 1-0061: i2c input error: rc = -110 (should be 2)

and

[  433.232124] xc2028 1-0061: Loading SCODE for type=DTV6 ATSC OREN538 SCODE HAS_IF_5580 (60110020), id 0000000000000000.
[  433.256017] xc2028 1-0061: Incorrect readback of firmware version.
[  433.372019] xc2028 1-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.
[  437.940029] xc2028 1-0061: Loading firmware for type=D2620 DTV78 (108), id 0000000000000000.

Do anybody have an idea what to do next? Or maybe somebody is willing to help me understanding the mcentral code because that one works fine.

Regards
Lauri

----- Forwarded Message -----
From: "Lauri Laanmets" <lauri.laanmets@proekspert.ee>
To: "Devin Heitmueller" <dheitmueller@kernellabs.com>
Cc: linux-media@vger.kernel.org
Sent: Tuesday, October 13, 2009 9:54:05 AM
Subject: Re: DVB support for MSI DigiVox A/D II and KWorld 320U

Hello

> Check the dvb_gpio setting in the board profile.  On some of those
> boards you need to take put one of the GPO pins high to take the demod
> out of reset.  The KWorld 315u and 330u are both like that.

Absolutely true. Using the same pin setting as KWorld 330U made the I2C communication work correctly and the device is found.

Now the trouble is that scanning channels doesn't work, blue LED doesn't light up and the device is not heated up.

I'm quite newbie in this field, is there a good way to know what registers to set exactly?

I see that the working "mcentral" code had the following setting:

#define EETI_DEFAULT_GPIO {						\
	.ts1_on     = _BIT_VAL(EM28XX_GPIO0,  0, 0), 			\
	.a_on       = _BIT_VAL(EM28XX_GPIO1,  0, 0), 			\
	.xc3028_sec = _BIT_VAL(EM28XX_GPIO2,  1, 0), 			\
	/* reserved */							\
	.t1_reset   = _BIT_VAL(EM28XX_GPIO4,  0, 1), 			\
	/* reserved */							\
	.t1_on      = _BIT_VAL(EM28XX_GPIO6,  0, 0), 			\
	.t2_on      = _BIT_VAL(EM28XX_GPIO7,  1, 0), 			\
									\
	.l1_on      = _BIT_VAL(EM28XX_GOP2,   1, 0), 			\
	.d1_reset   = _BIT_VAL(EM28XX_GOP3,   0, 1), 			\
}

But the v4l-dvb uses:

static struct em28xx_reg_seq kworld_330u_digital[] = {
	{EM28XX_R08_GPIO,	0x6e,	~EM_GPIO_4,	10},
	{EM2880_R04_GPO,	0x08,	0xff,		10},
	{ -1,			-1,	-1,		-1},
};

Lauri

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-11-13  8:37   ` Fwd: " Lauri Laanmets
@ 2009-11-13  8:47     ` Markus Rechberger
  2009-11-13  8:59       ` Lauri Laanmets
  0 siblings, 1 reply; 9+ messages in thread
From: Markus Rechberger @ 2009-11-13  8:47 UTC (permalink / raw)
  To: Lauri Laanmets; +Cc: linux-media

On Fri, Nov 13, 2009 at 4:37 PM, Lauri Laanmets
<lauri.laanmets@proekspert.ee> wrote:
> Hello
>
> I have managed to attach the device without any error messages now but the tuning and playback of DVB still doesn't work. I get a lot of these error messages:
>
> [  247.268152] em28xx #0: reading i2c device failed (error=-110)
> [  247.268161] xc2028 1-0061: i2c input error: rc = -110 (should be 2)
>
> and
>
> [  433.232124] xc2028 1-0061: Loading SCODE for type=DTV6 ATSC OREN538 SCODE HAS_IF_5580 (60110020), id 0000000000000000.
> [  433.256017] xc2028 1-0061: Incorrect readback of firmware version.
> [  433.372019] xc2028 1-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.
> [  437.940029] xc2028 1-0061: Loading firmware for type=D2620 DTV78 (108), id 0000000000000000.
>
> Do anybody have an idea what to do next? Or maybe somebody is willing to help me understanding the mcentral code because that one works fine.
>

Due some fundamental problems we do not recommend to use the
em28xx-new code, it can damage your device(!)

We are now working together with several manufacturers since we
accepted their restrictions we got indepth details about how to handle
those devices correctly in order to prevent damaged devices. Even if
it works fine for you it might break the device the next day. The only
way to get it right is to cooperate with the chip design companies.

Markus

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
  2009-11-13  8:47     ` Markus Rechberger
@ 2009-11-13  8:59       ` Lauri Laanmets
  0 siblings, 0 replies; 9+ messages in thread
From: Lauri Laanmets @ 2009-11-13  8:59 UTC (permalink / raw)
  To: Markus Rechberger; +Cc: linux-media

Hi

Sorry if I wasn't clear enough. I'm trying to get V4l code working. So I'm playing around with GPIO's and have managed to get the I2C communication working but something is still missing. I was thinking that because mcentral code worked, maybe some information can be taken over from it but the code is so much different, I do not understand it fully.

Or what should I try next?

Lauri

----- Original Message -----
From: "Markus Rechberger" <mrechberger@gmail.com>
To: "Lauri Laanmets" <lauri.laanmets@proekspert.ee>
Cc: linux-media@vger.kernel.org
Sent: Friday, November 13, 2009 10:47:03 AM
Subject: Re: DVB support for MSI DigiVox A/D II and KWorld 320U

On Fri, Nov 13, 2009 at 4:37 PM, Lauri Laanmets
<lauri.laanmets@proekspert.ee> wrote:
> Hello
>
> I have managed to attach the device without any error messages now but the tuning and playback of DVB still doesn't work. I get a lot of these error messages:
>
> [  247.268152] em28xx #0: reading i2c device failed (error=-110)
> [  247.268161] xc2028 1-0061: i2c input error: rc = -110 (should be 2)
>
> and
>
> [  433.232124] xc2028 1-0061: Loading SCODE for type=DTV6 ATSC OREN538 SCODE HAS_IF_5580 (60110020), id 0000000000000000.
> [  433.256017] xc2028 1-0061: Incorrect readback of firmware version.
> [  433.372019] xc2028 1-0061: Loading firmware for type=BASE F8MHZ (3), id 0000000000000000.
> [  437.940029] xc2028 1-0061: Loading firmware for type=D2620 DTV78 (108), id 0000000000000000.
>
> Do anybody have an idea what to do next? Or maybe somebody is willing to help me understanding the mcentral code because that one works fine.
>

Due some fundamental problems we do not recommend to use the
em28xx-new code, it can damage your device(!)

We are now working together with several manufacturers since we
accepted their restrictions we got indepth details about how to handle
those devices correctly in order to prevent damaged devices. Even if
it works fine for you it might break the device the next day. The only
way to get it right is to cooperate with the chip design companies.

Markus

^ permalink raw reply	[flat|nested] 9+ messages in thread

* Re: DVB support for MSI DigiVox A/D II and KWorld 320U
@ 2009-11-14 18:42 viktor
  0 siblings, 0 replies; 9+ messages in thread
From: viktor @ 2009-11-14 18:42 UTC (permalink / raw)
  To: linux-media

Hello

please,from where you download latest mcentral code?
domain mcentral.de not working for me.

thanks
Viktor

> Hello
>
> Tried that but the result is basically the same: "zl10353_attach" gives
> 
> [  491.490259] zl10353_read_register: readreg error (reg=127, ret==-19)
>
> And it is funny that if I compile the mcentral latest code in the same 
> kernel, it works, but I cannot find the difference in the code :)
>
> Lauri



^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2009-11-14 18:42 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <31497292.9391255416643929.JavaMail.root@mail>
2009-10-13  6:54 ` DVB support for MSI DigiVox A/D II and KWorld 320U Lauri Laanmets
2009-11-13  8:37   ` Fwd: " Lauri Laanmets
2009-11-13  8:47     ` Markus Rechberger
2009-11-13  8:59       ` Lauri Laanmets
2009-11-14 18:42 viktor
  -- strict thread matches above, loose matches on Subject: below --
2009-10-12 19:23 Lauri Laanmets
2009-10-12 20:13 ` Devin Heitmueller
2009-10-12 20:41   ` Lauri Laanmets
2009-10-12 20:45     ` Devin Heitmueller

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox