* [PATCH V3.6 0/2] linux-media: dvbsky: add support for Mygica T230C v2
@ 2019-07-17 18:05 Jan Pieter van Woerkom
2019-07-17 18:09 ` [PATCH V3.6 1/2] " Jan Pieter van Woerkom
` (2 more replies)
0 siblings, 3 replies; 6+ messages in thread
From: Jan Pieter van Woerkom @ 2019-07-17 18:05 UTC (permalink / raw)
To: linux-media
Cc: Michael Ira Krufky, Antti Palosaari, Sean Young, Frantisek Rysanek
Add support for the "Mygica T230C v2" into the "dvbsky" driver.
A small enhancement in the si2168 demodulator driver is also
needed, and a USB device ID in dvb-usb-ids.h .
This is v3.6 of proposed patch, based on work from an
anonymous author, and with feedback from Sean Young and
Antti Palosaari. Tested by patch author on DVB-(T/T2/C).
Tested by Frank Rysanek: can tune into locally available
DVB-T and DVB-T2 muxes, video and audio playback works.
Applies cleanly against Linux 5.2 .
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V3.6 1/2] linux-media: dvbsky: add support for Mygica T230C v2
2019-07-17 18:05 [PATCH V3.6 0/2] linux-media: dvbsky: add support for Mygica T230C v2 Jan Pieter van Woerkom
@ 2019-07-17 18:09 ` Jan Pieter van Woerkom
2019-07-17 18:11 ` [PATCH V3.6 2/2] " Jan Pieter van Woerkom
2019-07-18 0:36 ` [PATCH V3.6.1 " Jan Pieter van Woerkom
2 siblings, 0 replies; 6+ messages in thread
From: Jan Pieter van Woerkom @ 2019-07-17 18:09 UTC (permalink / raw)
To: linux-media
Cc: Michael Ira Krufky, Antti Palosaari, Sean Young, Frantisek Rysanek
Adds support for the "Mygica T230C v2" into the "dvbsky" driver.
Signed-off-by: Jan Pieter van Woerkom <jp@jpvw.nl>
Tested-by: Frank Rysanek <Frantisek.Rysanek@post.cz>
---
diff -ru a/drivers/media/usb/dvb-usb-v2/dvbsky.c b/drivers/media/usb/dvb-usb-v2/dvbsky.c
--- a/drivers/media/usb/dvb-usb-v2/dvbsky.c 2019-07-08 00:41:56.000000000 +0200
+++ b/drivers/media/usb/dvb-usb-v2/dvbsky.c 2019-07-16 06:05:07.607212862 +0200
@@ -551,6 +551,8 @@
si2168_config.i2c_adapter = &i2c_adapter;
si2168_config.fe = &adap->fe[0];
si2168_config.ts_mode = SI2168_TS_PARALLEL;
+ if (le16_to_cpu(d->udev->descriptor.idProduct) == USB_PID_MYGICA_T230C2)
+ si2168_config.ts_mode |= SI2168_TS_CLK_MANUAL;
si2168_config.ts_clock_inv = 1;
state->i2c_client_demod = dvb_module_probe("si2168", NULL,
@@ -790,6 +792,9 @@
{ DVB_USB_DEVICE(USB_VID_CONEXANT, USB_PID_MYGICA_T230C,
&mygica_t230c_props, "MyGica Mini DVB-T2 USB Stick T230C",
RC_MAP_TOTAL_MEDIA_IN_HAND_02) },
+ { DVB_USB_DEVICE(USB_VID_CONEXANT, USB_PID_MYGICA_T230C2,
+ &mygica_t230c_props, "MyGica Mini DVB-T2 USB Stick T230C v2",
+ RC_MAP_TOTAL_MEDIA_IN_HAND_02) },
{ }
};
MODULE_DEVICE_TABLE(usb, dvbsky_id_table);
diff -ru a/include/media/dvb-usb-ids.h b/include/media/dvb-usb-ids.h
--- a/include/media/dvb-usb-ids.h 2019-07-08 00:41:56.000000000 +0200
+++ b/include/media/dvb-usb-ids.h 2019-07-16 06:05:07.607212862 +0200
@@ -388,6 +388,7 @@
#define USB_PID_MYGICA_D689 0xd811
#define USB_PID_MYGICA_T230 0xc688
#define USB_PID_MYGICA_T230C 0xc689
+#define USB_PID_MYGICA_T230C2 0xc68a
#define USB_PID_ELGATO_EYETV_DIVERSITY 0x0011
#define USB_PID_ELGATO_EYETV_DTT 0x0021
#define USB_PID_ELGATO_EYETV_DTT_2 0x003f
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V3.6 2/2] linux-media: dvbsky: add support for Mygica T230C v2
2019-07-17 18:05 [PATCH V3.6 0/2] linux-media: dvbsky: add support for Mygica T230C v2 Jan Pieter van Woerkom
2019-07-17 18:09 ` [PATCH V3.6 1/2] " Jan Pieter van Woerkom
@ 2019-07-17 18:11 ` Jan Pieter van Woerkom
2019-07-17 19:25 ` Sean Young
2019-07-18 0:36 ` [PATCH V3.6.1 " Jan Pieter van Woerkom
2 siblings, 1 reply; 6+ messages in thread
From: Jan Pieter van Woerkom @ 2019-07-17 18:11 UTC (permalink / raw)
To: linux-media
Cc: Michael Ira Krufky, Antti Palosaari, Sean Young, Frantisek Rysanek
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.
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-16 21:21:39.267802750 +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);
+ cmd.args[4] <<= (dev->ts_mode & SI2168_TS_CLK_MANUAL) >> 5;
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-16 06:29:53.913009262 +0200
@@ -30,6 +30,7 @@
#define SI2168_TS_PARALLEL 0x06
#define SI2168_TS_SERIAL 0x03
#define SI2168_TS_TRISTATE 0x00
+#define SI2168_TS_CLK_MANUAL 0x20
u8 ts_mode;
/* TS clock inverted */
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V3.6 2/2] linux-media: dvbsky: add support for Mygica T230C v2
2019-07-17 18:11 ` [PATCH V3.6 2/2] " Jan Pieter van Woerkom
@ 2019-07-17 19:25 ` Sean Young
2019-07-18 0:29 ` JP
0 siblings, 1 reply; 6+ messages in thread
From: Sean Young @ 2019-07-17 19:25 UTC (permalink / raw)
To: Jan Pieter van Woerkom
Cc: linux-media, Michael Ira Krufky, Antti Palosaari, Frantisek Rysanek
On Wed, Jul 17, 2019 at 08:11:50PM +0200, Jan Pieter van Woerkom wrote:
> 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.
>
> 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-16 21:21:39.267802750 +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);
> + cmd.args[4] <<= (dev->ts_mode & SI2168_TS_CLK_MANUAL) >> 5;
I'm sorry but this is not very readable. How about:
if (dev->ts_mode & SI2168_TS_CLK_MANUAL)
cmd.args[4] = SI2168_TS_CLK_MANUAL;
?
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-16 06:29:53.913009262 +0200
> @@ -30,6 +30,7 @@
> #define SI2168_TS_PARALLEL 0x06
> #define SI2168_TS_SERIAL 0x03
> #define SI2168_TS_TRISTATE 0x00
> +#define SI2168_TS_CLK_MANUAL 0x20
> u8 ts_mode;
>
> /* TS clock inverted */
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V3.6 2/2] linux-media: dvbsky: add support for Mygica T230C v2
2019-07-17 19:25 ` Sean Young
@ 2019-07-18 0:29 ` JP
0 siblings, 0 replies; 6+ messages in thread
From: JP @ 2019-07-18 0:29 UTC (permalink / raw)
To: Sean Young
Cc: linux-media, Michael Ira Krufky, Antti Palosaari, Frantisek Rysanek
On 7/17/19 9:25 PM, Sean Young wrote:
> On Wed, Jul 17, 2019 at 08:11:50PM +0200, Jan Pieter van Woerkom wrote:
>> 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.
>>
>> 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-16 21:21:39.267802750 +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);
>> + cmd.args[4] <<= (dev->ts_mode & SI2168_TS_CLK_MANUAL) >> 5;
> I'm sorry but this is not very readable. How about:
>
> if (dev->ts_mode & SI2168_TS_CLK_MANUAL)
> cmd.args[4] = SI2168_TS_CLK_MANUAL;
>
> ?
Yes you're right. I'll post update in this thread.
>
> 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-16 06:29:53.913009262 +0200
>> @@ -30,6 +30,7 @@
>> #define SI2168_TS_PARALLEL 0x06
>> #define SI2168_TS_SERIAL 0x03
>> #define SI2168_TS_TRISTATE 0x00
>> +#define SI2168_TS_CLK_MANUAL 0x20
>> u8 ts_mode;
>>
>> /* TS clock inverted */
^ permalink raw reply [flat|nested] 6+ messages in thread
* Re: [PATCH V3.6.1 2/2] linux-media: dvbsky: add support for Mygica T230C v2
2019-07-17 18:05 [PATCH V3.6 0/2] linux-media: dvbsky: add support for Mygica T230C v2 Jan Pieter van Woerkom
2019-07-17 18:09 ` [PATCH V3.6 1/2] " Jan Pieter van Woerkom
2019-07-17 18:11 ` [PATCH V3.6 2/2] " Jan Pieter van Woerkom
@ 2019-07-18 0:36 ` Jan Pieter van Woerkom
2 siblings, 0 replies; 6+ messages in thread
From: Jan Pieter van Woerkom @ 2019-07-18 0:36 UTC (permalink / raw)
To: linux-media
Cc: Michael Ira Krufky, Antti Palosaari, Sean Young, Frantisek Rysanek
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.
Signed-off-by: Jan Pieter van Woerkom <jp@jpvw.nl>
---
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-18 01:57:35.036592424 +0200
@@ -82,8 +82,19 @@
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);
+ if (dev->ts_mode & SI2168_TS_CLK_MANUAL)
+ cmd.args[4] = SI2168_TS_CLK_MANUAL;
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-16 06:29:53.913009262 +0200
@@ -30,6 +30,7 @@
#define SI2168_TS_PARALLEL 0x06
#define SI2168_TS_SERIAL 0x03
#define SI2168_TS_TRISTATE 0x00
+#define SI2168_TS_CLK_MANUAL 0x20
u8 ts_mode;
/* TS clock inverted */
^ permalink raw reply [flat|nested] 6+ messages in thread
end of thread, other threads:[~2019-07-18 0:36 UTC | newest]
Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2019-07-17 18:05 [PATCH V3.6 0/2] linux-media: dvbsky: add support for Mygica T230C v2 Jan Pieter van Woerkom
2019-07-17 18:09 ` [PATCH V3.6 1/2] " Jan Pieter van Woerkom
2019-07-17 18:11 ` [PATCH V3.6 2/2] " Jan Pieter van Woerkom
2019-07-17 19:25 ` Sean Young
2019-07-18 0:29 ` JP
2019-07-18 0:36 ` [PATCH V3.6.1 " Jan Pieter van Woerkom
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.