linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: JP <jp@jpvw.nl>
To: Sean Young <sean@mess.org>
Cc: linux-media@vger.kernel.org,
	Michael Ira Krufky <mkrufky@linuxtv.org>,
	Antti Palosaari <crope@iki.fi>,
	Frantisek Rysanek <Frantisek.Rysanek@post.cz>
Subject: Re: PATCH V3.5 1/2] dvbsky: add support for "Mygica T230C v2"
Date: Tue, 16 Jul 2019 05:11:52 +0200	[thread overview]
Message-ID: <a541542c-110d-0cd9-d269-e1cb34b4fb54@jpvw.nl> (raw)
In-Reply-To: <20190715212131.egehgb73qxw7eueb@gofer.mess.org>



On 7/15/19 11:21 PM, Sean Young wrote:
> On Tue, Jul 09, 2019 at 08:39:32PM +0200, Jan Pieter van Woerkom wrote:
>> From: Jan Pieter van Woerkom <jp@jpvw.nl>
>>
>> Adds support for the "Mygica T230C v2" into the "dvbsky" driver.
>> A small enhancement is also needed in the si2168 demodulator
>> driver, and a USB device ID in dvb-usb-ids.h .
>>
>> This is v3.5 of the proposed patch, based on feedback from Sean
>> Young and Antti Palosaari.
>> Tested by patch author on DVB(T/T2/C).
>> Tested by Frank Rysanek on a T230C v2: can tune into locally
>> available DVB-T and DVB-T2 muxes, video and audio playback works.
>> Applies cleanly against Linux 5.2 .
>>
>> The T230C v2 hardware needs a mode of the si2168 chip to be
>> set for which the si2168 driver previously had no support.
>> This patch uses a specific measure to configure this on the
>> T230C v2 hardware only - see the flag passed via the ts_mode
>> attribute and its dependency on USB_PID_MYGICA_T230C2. Other
>> devices using the si2168 demodulator driver are not affected.
>>
>> Signed-off-by: Jan Pieter van Woerkom <jp@jpvw.nl>
>> Tested-by: Frank Rysanek <Frantisek.Rysanek@post.cz>
>> ---
>> diff -ru a/drivers/media/dvb-frontends/si2168.c b/drivers/media/dvb-frontends/si2168.c
>> --- a/drivers/media/dvb-frontends/si2168.c	2019-07-08 00:41:56.000000000 +0200
>> +++ b/drivers/media/dvb-frontends/si2168.c	2019-07-09 18:47:59.514873658 +0200
>> @@ -82,8 +82,18 @@
>>   
>>   	dev_dbg(&client->dev, "%s acquire: %d\n", __func__, acquire);
>>   
>> +	/* set manual value */
>> +	if (dev->ts_mode & SI2168_TS_CLK_MANUAL) {
>> +		memcpy(cmd.args, "\x14\x00\x0d\x10\xe8\x03", 6);
>> +		cmd.wlen = 6;
>> +		cmd.rlen = 4;
>> +		ret = si2168_cmd_execute(client, &cmd);
>> +		if (ret)
>> +			return ret;
>> +	}
>>   	/* set TS_MODE property */
>> -	memcpy(cmd.args, "\x14\x00\x01\x10\x10\x00", 6);
>> +	memcpy(cmd.args, "\x14\x00\x01\x10\x00\x00", 6);
> Here byte at offset 4 is now 0 rather than 0x10.
>
>> +	cmd.args[4] = dev->ts_mode & (SI2168_TS_CLK_AUTO|SI2168_TS_CLK_MANUAL);
> The many existing frontends which use the si2168 do have not have ts_mode
> bit SI2168_TS_CLK_AUTO (0x010) set. So, this changes what is sent for
> those drivers. Is that intended?
At least 2 other drivers I tested (T230 in cxusb.c and 1 anysee)
work with this bit set or clear. My guess was that it would be OK
to use 0x00. So sort of intended. I couldn't think of a simple
operation to set one bit and clear the other. I will think again. :-)

>
> Thanks,
>
> Sean
>
>>   	if (acquire)
>>   		cmd.args[4] |= dev->ts_mode;
>>   	else
>> diff -ru a/drivers/media/dvb-frontends/si2168.h b/drivers/media/dvb-frontends/si2168.h
>> --- a/drivers/media/dvb-frontends/si2168.h	2019-07-08 00:41:56.000000000 +0200
>> +++ b/drivers/media/dvb-frontends/si2168.h	2019-07-09 18:47:59.514873658 +0200
>> @@ -30,6 +30,8 @@
>>   #define SI2168_TS_PARALLEL	0x06
>>   #define SI2168_TS_SERIAL	0x03
>>   #define SI2168_TS_TRISTATE	0x00
>> +#define SI2168_TS_CLK_AUTO	0x10
>> +#define SI2168_TS_CLK_MANUAL	0x20
>>   	u8 ts_mode;
>>   
>>   	/* TS clock inverted */


  reply	other threads:[~2019-07-16  3:11 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-09 18:39 PATCH V3.5 1/2] dvbsky: add support for "Mygica T230C v2" Jan Pieter van Woerkom
2019-07-09 18:42 ` [PATCH V3.5 2/2] " Jan Pieter van Woerkom
2019-07-15 21:21 ` PATCH V3.5 1/2] " Sean Young
2019-07-16  3:11   ` JP [this message]
2019-07-16  8:12     ` Sean Young

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=a541542c-110d-0cd9-d269-e1cb34b4fb54@jpvw.nl \
    --to=jp@jpvw.nl \
    --cc=Frantisek.Rysanek@post.cz \
    --cc=crope@iki.fi \
    --cc=linux-media@vger.kernel.org \
    --cc=mkrufky@linuxtv.org \
    --cc=sean@mess.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).