All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH] af9035: add support for 2nd tuner of MSI DigiVox Diversity
@ 2016-01-04 21:16 Stefan Pöschel
  2016-01-15 17:13 ` Stefan Pöschel
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Pöschel @ 2016-01-04 21:16 UTC (permalink / raw)
  To: Linux Media Mailing List

PIP tested with VLC. Diversity tested with the Windows driver.

Signed-off-by: Stefan Pöschel <basic.master@gmx.de>
---
 drivers/media/usb/dvb-usb-v2/af9035.c | 4 ++--
 drivers/media/usb/dvb-usb-v2/af9035.h | 3 ++-
 2 files changed, 4 insertions(+), 3 deletions(-)

diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c
index 6e02a15..b3c09fe 100644
--- a/drivers/media/usb/dvb-usb-v2/af9035.c
+++ b/drivers/media/usb/dvb-usb-v2/af9035.c
@@ -684,7 +684,7 @@ static int af9035_download_firmware(struct dvb_usb_device *d,
 	if (ret < 0)
 		goto err;

-	if (tmp == 1 || tmp == 3) {
+	if (tmp == 1 || tmp == 3 || tmp == 5) {
 		/* configure gpioh1, reset & power slave demod */
 		ret = af9035_wr_reg_mask(d, 0x00d8b0, 0x01, 0x01);
 		if (ret < 0)
@@ -823,7 +823,7 @@ static int af9035_read_config(struct dvb_usb_device *d)
 	if (ret < 0)
 		goto err;

-	if (tmp == 1 || tmp == 3)
+	if (tmp == 1 || tmp == 3 || tmp == 5)
 		state->dual_mode = true;

 	dev_dbg(&d->udev->dev, "%s: ts mode=%d dual mode=%d\n", __func__,
diff --git a/drivers/media/usb/dvb-usb-v2/af9035.h b/drivers/media/usb/dvb-usb-v2/af9035.h
index 416a97f..df22001 100644
--- a/drivers/media/usb/dvb-usb-v2/af9035.h
+++ b/drivers/media/usb/dvb-usb-v2/af9035.h
@@ -112,9 +112,10 @@ static const u32 clock_lut_it9135[] = {
  * 0  TS
  * 1  DCA + PIP
  * 3  PIP
+ * 5  DCA + PIP
  * n  DCA
  *
- * Values 0 and 3 are seen to this day. 0 for single TS and 3 for dual TS.
+ * Values 0, 3 and 5 are seen to this day. 0 for single TS and 3/5 for dual TS.
  */

 #define EEPROM_BASE_AF9035        0x42fd
-- 
2.6.4

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

* Re: [PATCH] af9035: add support for 2nd tuner of MSI DigiVox Diversity
  2016-01-04 21:16 [PATCH] af9035: add support for 2nd tuner of MSI DigiVox Diversity Stefan Pöschel
@ 2016-01-15 17:13 ` Stefan Pöschel
  2016-01-25 19:54   ` Stefan Pöschel
  0 siblings, 1 reply; 3+ messages in thread
From: Stefan Pöschel @ 2016-01-15 17:13 UTC (permalink / raw)
  To: Linux Media Mailing List

Hi,

I just wanted to ask if there is any further information needed regarding my patch.

Best regards,
	Stefan

Am 04.01.2016 um 22:16 schrieb Stefan Pöschel:
> PIP tested with VLC. Diversity tested with the Windows driver.
> 
> Signed-off-by: Stefan Pöschel <basic.master@gmx.de>
> ---
>  drivers/media/usb/dvb-usb-v2/af9035.c | 4 ++--
>  drivers/media/usb/dvb-usb-v2/af9035.h | 3 ++-
>  2 files changed, 4 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c
> index 6e02a15..b3c09fe 100644
> --- a/drivers/media/usb/dvb-usb-v2/af9035.c
> +++ b/drivers/media/usb/dvb-usb-v2/af9035.c
> @@ -684,7 +684,7 @@ static int af9035_download_firmware(struct dvb_usb_device *d,
>  	if (ret < 0)
>  		goto err;
> 
> -	if (tmp =1 || tmp == 3) {
> +	if (tmp =1 || tmp == 3 || tmp == 5) {
>  		/* configure gpioh1, reset & power slave demod */
>  		ret =f9035_wr_reg_mask(d, 0x00d8b0, 0x01, 0x01);
>  		if (ret < 0)
> @@ -823,7 +823,7 @@ static int af9035_read_config(struct dvb_usb_device *d)
>  	if (ret < 0)
>  		goto err;
> 
> -	if (tmp =1 || tmp == 3)
> +	if (tmp =1 || tmp == 3 || tmp == 5)
>  		state->dual_mode =rue;
> 
>  	dev_dbg(&d->udev->dev, "%s: ts mode= dual mode=%d\n", __func__,
> diff --git a/drivers/media/usb/dvb-usb-v2/af9035.h b/drivers/media/usb/dvb-usb-v2/af9035.h
> index 416a97f..df22001 100644
> --- a/drivers/media/usb/dvb-usb-v2/af9035.h
> +++ b/drivers/media/usb/dvb-usb-v2/af9035.h
> @@ -112,9 +112,10 @@ static const u32 clock_lut_it9135[] =
>   * 0  TS
>   * 1  DCA + PIP
>   * 3  PIP
> + * 5  DCA + PIP
>   * n  DCA
>   *
> - * Values 0 and 3 are seen to this day. 0 for single TS and 3 for dual TS.
> + * Values 0, 3 and 5 are seen to this day. 0 for single TS and 3/5 for dual TS.
>   */
> 
>  #define EEPROM_BASE_AF9035        0x42fd
> 

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

* Re: [PATCH] af9035: add support for 2nd tuner of MSI DigiVox Diversity
  2016-01-15 17:13 ` Stefan Pöschel
@ 2016-01-25 19:54   ` Stefan Pöschel
  0 siblings, 0 replies; 3+ messages in thread
From: Stefan Pöschel @ 2016-01-25 19:54 UTC (permalink / raw)
  To: Linux Media Mailing List

OK, I guess some further details might help here:

The MSI DigiVox Diversity (USB DVB-T stick) has two tuners and is
promoted with diversity function. I can confirm both features working
under Windows.
The stick also works out-of-the-box under a more or less recent kernel -
however only one tuner/DVB adapter is recognized and added.

Therefore I sniffed the stick initialisation via USB under Windows and
stepwise compared the I²C writing/reading with another dump of the stick
init under Linux. It turned out that the regarding EEPROM register of
the stick has a different value than the two present ones, to announce
that it has two tuners and diversity.
After adding the new value of 5 to the regarding IF clauses, the second
tuner is recognized and added as a second DVB adapter.

To verify the tuners working independent from each other, I used VLC
with the --dvb-adapter param and tuned to different DVB-T muxes. Both
tuners worked at the same time without problems.
Though the diversity feature does not seem to work yet; as far as I
understand there are hardly kernel drivers supporting this...

Regards,
	Stefan


Am 15.01.2016 um 18:13 schrieb Stefan Pöschel:
> Hi,
> 
> I just wanted to ask if there is any further information needed regarding my patch.
> 
> Best regards,
> 	Stefan
> 
> Am 04.01.2016 um 22:16 schrieb Stefan Pöschel:
>> PIP tested with VLC. Diversity tested with the Windows driver.
>>
>> Signed-off-by: Stefan Pöschel <basic.master@gmx.de>
>> ---
>>  drivers/media/usb/dvb-usb-v2/af9035.c | 4 ++--
>>  drivers/media/usb/dvb-usb-v2/af9035.h | 3 ++-
>>  2 files changed, 4 insertions(+), 3 deletions(-)
>>
>> diff --git a/drivers/media/usb/dvb-usb-v2/af9035.c b/drivers/media/usb/dvb-usb-v2/af9035.c
>> index 6e02a15..b3c09fe 100644
>> --- a/drivers/media/usb/dvb-usb-v2/af9035.c
>> +++ b/drivers/media/usb/dvb-usb-v2/af9035.c
>> @@ -684,7 +684,7 @@ static int af9035_download_firmware(struct dvb_usb_device *d,
>>  	if (ret < 0)
>>  		goto err;
>>
>> -	if (tmp =1 || tmp == 3) {
>> +	if (tmp =1 || tmp == 3 || tmp == 5) {
>>  		/* configure gpioh1, reset & power slave demod */
>>  		ret =f9035_wr_reg_mask(d, 0x00d8b0, 0x01, 0x01);
>>  		if (ret < 0)
>> @@ -823,7 +823,7 @@ static int af9035_read_config(struct dvb_usb_device *d)
>>  	if (ret < 0)
>>  		goto err;
>>
>> -	if (tmp =1 || tmp == 3)
>> +	if (tmp =1 || tmp == 3 || tmp == 5)
>>  		state->dual_mode =rue;
>>
>>  	dev_dbg(&d->udev->dev, "%s: ts mode= dual mode=%d\n", __func__,
>> diff --git a/drivers/media/usb/dvb-usb-v2/af9035.h b/drivers/media/usb/dvb-usb-v2/af9035.h
>> index 416a97f..df22001 100644
>> --- a/drivers/media/usb/dvb-usb-v2/af9035.h
>> +++ b/drivers/media/usb/dvb-usb-v2/af9035.h
>> @@ -112,9 +112,10 @@ static const u32 clock_lut_it9135[] =
>>   * 0  TS
>>   * 1  DCA + PIP
>>   * 3  PIP
>> + * 5  DCA + PIP
>>   * n  DCA
>>   *
>> - * Values 0 and 3 are seen to this day. 0 for single TS and 3 for dual TS.
>> + * Values 0, 3 and 5 are seen to this day. 0 for single TS and 3/5 for dual TS.
>>   */
>>
>>  #define EEPROM_BASE_AF9035        0x42fd
>>
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
> 

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

end of thread, other threads:[~2016-01-25 19:54 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-01-04 21:16 [PATCH] af9035: add support for 2nd tuner of MSI DigiVox Diversity Stefan Pöschel
2016-01-15 17:13 ` Stefan Pöschel
2016-01-25 19:54   ` Stefan Pöschel

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.