Re: [PULL v3] for 4.2: add support for cx24120/Technisat SkyStar S2
Hi Patrick/Jemma, Em Wed, 20 May 2015 12:46:45 +0100 Jemma Denson jden...@gmail.com escreveu: On 20/05/15 09:05, Patrick Boettcher wrote: Hi Mauro, This is an updated version (v3) of the pull-request for integrating the cx24120-driver. Jemma (and partially me) addressed all strict-conding-style-issues and fixed several things regarding signal-stats and demod-issues + some code cleaning in general. Yesterday night Jemma implemented everything related to the UNC and BER-stuff. I also integrated your smatch-patches on my branch. In this mail you'll also find the complete patch, please feel free to review it. Thank you! It is now in good shape on my eyes. Patches merged. The only minor issue is that I had to fold two patches to avoid compilation breakage in the middle of the patch series, but I solved this myself. Mauro, I have realised I might have made a mistake in how UCB is calculated - I have a patch for this already, should I just send this through to the list on it's own? Yes, please. I just merged the pull request. So, no need to re-send the entire patch series again. Regards, Mauro -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL v3] for 4.2: add support for cx24120/Technisat SkyStar S2
On 20/05/15 09:05, Patrick Boettcher wrote: Hi Mauro, This is an updated version (v3) of the pull-request for integrating the cx24120-driver. Jemma (and partially me) addressed all strict-conding-style-issues and fixed several things regarding signal-stats and demod-issues + some code cleaning in general. Yesterday night Jemma implemented everything related to the UNC and BER-stuff. I also integrated your smatch-patches on my branch. In this mail you'll also find the complete patch, please feel free to review it. Mauro, I have realised I might have made a mistake in how UCB is calculated - I have a patch for this already, should I just send this through to the list on it's own? Jemma. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PULL v3] for 4.2: add support for cx24120/Technisat SkyStar S2
Hi Mauro, This is an updated version (v3) of the pull-request for integrating the cx24120-driver. Jemma (and partially me) addressed all strict-conding-style-issues and fixed several things regarding signal-stats and demod-issues + some code cleaning in general. Yesterday night Jemma implemented everything related to the UNC and BER-stuff. I also integrated your smatch-patches on my branch. In this mail you'll also find the complete patch, please feel free to review it. best regards, -- Patrick. The following changes since commit e183201b9e917daf2530b637b2f34f1d5afb934d: [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL (2015-04-10 10:29:27 -0300) are available in the git repository at: https://github.com/pboettch/linux.git cx24120-v2 for you to fetch changes up to ee97338cf3522c840256ece3ea5a6f29675f7604: cx24120: fix minor checkpatch-error (2015-05-20 09:58:49 +0200) Jemma Denson (26): [media] Add support for TechniSat Skystar S2 cx24120: Fix minor style typo in Kconfig cx24120: Move clock set to read_status cx24120: Add missing command to cx24120_check_cmd cx24120: Fix hexdump length in writeregs cx24120: Rework vco function to remove xxyyzz variable cx24120: Add DVBv5 signal strength stats cx24120: Enable DVBv5 signal strength stats cx24120: Remove additional calls to read_status cx24120: Return DVBv3 signal strength from cache cx24120: Tidy up signal strength code cx24120: Improve cooked signal strength value cx24120: More coding style fixes cx24120: Fix disecq_send_burst command cx24120: Move CNR to DVBv5 stats cx24120: Tidy up calls to dev_dbg cx24120: Remove unneccesary assignments in cx24120_init cx24120: Tidy cx24120_init cx24120: More tidying in cx24120_init b2c2: Reset no_base_addr on skystarS2 attach failure cx24120: Complete modfec_table cx24120: Add in dvbv5 stats for bit error rate cx24120: Convert read_ber to retreive from cache cx24120: Convert ucblocks to dvbv5 stats cx24120: Check for lock before updating BER UCB cx24120: Update comment fix typo Mauro Carvalho Chehab (3): cx24120: don't initialize a var that won't be used cx24120: declare cx24120_init() as static cx24120: constify static data Patrick Boettcher (6): [media] cx24120: minor checkpatch fixes cx24120: i2c-max-write-size is now configurable [media] MAINTAINERS: add cx24120-maintainer cx24120: fix codingstyle issue first round cx24120: fix strict checkpatch-errors cx24120: fix minor checkpatch-error MAINTAINERS |9 + drivers/media/common/b2c2/Kconfig|1 + drivers/media/common/b2c2/flexcop-fe-tuner.c | 53 +- drivers/media/common/b2c2/flexcop-misc.c |1 + drivers/media/common/b2c2/flexcop-reg.h |1 + drivers/media/dvb-frontends/Kconfig |7 + drivers/media/dvb-frontends/Makefile |1 + drivers/media/dvb-frontends/cx24120.c| 1592 ++ drivers/media/dvb-frontends/cx24120.h| 58 + 9 files changed, 1716 insertions(+), 7 deletions(-) create mode 100644 drivers/media/dvb-frontends/cx24120.c create mode 100644 drivers/media/dvb-frontends/cx24120.h diff --git a/MAINTAINERS b/MAINTAINERS index 30e7e38..cdd4f23 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2848,6 +2848,15 @@ S: Maintained F: drivers/media/common/cx2341x* F: include/media/cx2341x* +CX24120 MEDIA DRIVER +M: Jemma Denson jden...@gmail.com +M: Patrick Boettcher patrick.boettc...@posteo.de +L: linux-media@vger.kernel.org +W: http://linuxtv.org/ +Q: http://patchwork.linuxtv.org/project/linux-media/list/ +S: Maintained +F: drivers/media/dvb-frontends/cx24120* + CX88 VIDEO4LINUX DRIVER M: Mauro Carvalho Chehab mche...@osg.samsung.com L: linux-media@vger.kernel.org diff --git a/drivers/media/common/b2c2/Kconfig b/drivers/media/common/b2c2/Kconfig index a8c6cdf..e593638 100644 --- a/drivers/media/common/b2c2/Kconfig +++ b/drivers/media/common/b2c2/Kconfig @@ -14,6 +14,7 @@ config DVB_B2C2_FLEXCOP select DVB_S5H1420 if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_ITD1000 if MEDIA_SUBDRV_AUTOSELECT select DVB_ISL6421 if MEDIA_SUBDRV_AUTOSELECT + select DVB_CX24120 if MEDIA_SUBDRV_AUTOSELECT select DVB_CX24123 if MEDIA_SUBDRV_AUTOSELECT select MEDIA_TUNER_SIMPLE if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_CX24113 if MEDIA_SUBDRV_AUTOSELECT diff --git a/drivers/media/common/b2c2/flexcop-fe-tuner.c b/drivers/media/common/b2c2/flexcop-fe-tuner.c index 7e14e90..2426062 100644 --- a/drivers/media/common/b2c2/flexcop-fe-tuner.c +++ b/drivers/media/common/b2c2/flexcop-fe-tuner.c @@ -12,6 +12,7 @@ #include cx24113.h #include cx24123.h
Re: [PULL v3] for 4.2: add support for cx24120/Technisat SkyStar S2
On Wed, 20 May 2015 09:07:27 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Hi Patrick/Jemma, Em Wed, 20 May 2015 12:46:45 +0100 Jemma Denson jden...@gmail.com escreveu: On 20/05/15 09:05, Patrick Boettcher wrote: Hi Mauro, This is an updated version (v3) of the pull-request for integrating the cx24120-driver. Jemma (and partially me) addressed all strict-conding-style-issues and fixed several things regarding signal-stats and demod-issues + some code cleaning in general. Yesterday night Jemma implemented everything related to the UNC and BER-stuff. I also integrated your smatch-patches on my branch. In this mail you'll also find the complete patch, please feel free to review it. Thank you! It is now in good shape on my eyes. Patches merged. The only minor issue is that I had to fold two patches to avoid compilation breakage in the middle of the patch series, but I solved this myself. Thank you for your help (and especially to Jemma). (one big thing crossed off my eternal TODO-list.) best regards, -- Patrick. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Fri, 15 May 2015 16:18:07 +0100 Jemma Denson jden...@gmail.com escreveu: Hi Mauro, On 15/05/15 15:24, Mauro Carvalho Chehab wrote: Of course. Jemma and me (mainly Jemma) are progressing and might be able to resubmit everything this weekend. Good! Thanks for the good work! Mauro The only thing left now is moving UCB BER over to DVBv5 stats - we haven't got anything close to any specs for this demod so I'm struggling to work out how to handle the counter increment. It's not helped by my signal not being marginal enough to see any errors anyway! What's the best course of action here - either leave those two out entirely or fudge something to get the numbers to about the right magnitude and worry about making it more accurate at a later date? I prefer to have something, even not 100% acurate, reported via DVBv5. Regards, Mauro -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
On 19/05/15 11:57, Mauro Carvalho Chehab wrote: The only thing left now is moving UCB BER over to DVBv5 stats - we haven't got anything close to any specs for this demod so I'm struggling to work out how to handle the counter increment. It's not helped by my signal not being marginal enough to see any errors anyway! What's the best course of action here - either leave those two out entirely or fudge something to get the numbers to about the right magnitude and worry about making it more accurate at a later date? I prefer to have something, even not 100% acurate, reported via DVBv5. Regards, Mauro I think I've managed to work it out now :) It's set to use a 16 bit BER window and what I did manage to see suggests that the window is based on packets. So it's just a case of calculating things from there. I implemented something for BER lastnight but it does need a little tidying. UCB should be much more straightforward. I should be able to find time during the week, or if not this weekend. I'll send the patches through to Patrick to add to his tree and then we can have a v3 pull request. Jemma. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
On Tue, 19 May 2015 12:25:19 +0100 Jemma Denson jden...@gmail.com wrote: On 19/05/15 11:57, Mauro Carvalho Chehab wrote: The only thing left now is moving UCB BER over to DVBv5 stats - we haven't got anything close to any specs for this demod so I'm struggling to work out how to handle the counter increment. It's not helped by my signal not being marginal enough to see any errors anyway! What's the best course of action here - either leave those two out entirely or fudge something to get the numbers to about the right magnitude and worry about making it more accurate at a later date? I prefer to have something, even not 100% acurate, reported via DVBv5. Regards, Mauro I think I've managed to work it out now :) It's set to use a 16 bit BER window and what I did manage to see suggests that the window is based on packets. So it's just a case of calculating things from there. I implemented something for BER lastnight but it does need a little tidying. UCB should be much more straightforward. I should be able to find time during the week, or if not this weekend. I'll send the patches through to Patrick to add to his tree and then we can have a v3 pull request. Great job. Let's do it so. I will check with Mauro about his patches. -- Patrick. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PULL v2] for 4.2: add support for cx24120/Technisat SkyStar S2
Hi Mauro, This is an updated version of the pull-request for integrating the cx24120-driver. Jemma (and partially me) addressed all strict-conding-style-issues and fixed several things regarding signal-stats and demod-issues + some code cleaning in general. The only thing missing is the UNC/BER-support in DVBv5-stats. As Jemma pointed out, this is not trivial with the little information and equipment available. Not sure when this issue can be addressed - if ever. In this mail you'll also find the complete patch, please feel free to review it. best regards, -- Patrick. The following changes since commit 0fae1997f09796aca8ada5edc028aef587f6716c: [media] dib0700: avoid the risk of forgetting to add the adapter's size (2015-05-14 19:31:34 -0300) are available in the git repository at: https://github.com/pboettch/linux.git cx24120-v2 for you to fetch changes up to e2faa4d8b0b4d1efd68e9ea300ce47b3172a50cc: cx24120: Complete modfec_table (2015-05-18 12:08:09 +0200) Jemma Denson (21): [media] Add support for TechniSat Skystar S2 cx24120: Fix minor style typo in Kconfig cx24120: Move clock set to read_status cx24120: Add missing command to cx24120_check_cmd cx24120: Fix hexdump length in writeregs cx24120: Rework vco function to remove xxyyzz variable cx24120: Add DVBv5 signal strength stats cx24120: Enable DVBv5 signal strength stats cx24120: Remove additional calls to read_status cx24120: Return DVBv3 signal strength from cache cx24120: Tidy up signal strength code cx24120: Improve cooked signal strength value cx24120: More coding style fixes cx24120: Fix disecq_send_burst command cx24120: Move CNR to DVBv5 stats cx24120: Tidy up calls to dev_dbg cx24120: Remove unneccesary assignments in cx24120_init cx24120: Tidy cx24120_init cx24120: More tidying in cx24120_init b2c2: Reset no_base_addr on skystarS2 attach failure cx24120: Complete modfec_table Patrick Boettcher (5): [media] cx24120: minor checkpatch fixes cx24120: i2c-max-write-size is now configurable [media] MAINTAINERS: add cx24120-maintainer cx24120: fix codingstyle issue first round cx24120: fix strict checkpatch-errors MAINTAINERS |9 + drivers/media/common/b2c2/Kconfig|1 + drivers/media/common/b2c2/flexcop-fe-tuner.c | 53 +- drivers/media/common/b2c2/flexcop-misc.c |1 + drivers/media/common/b2c2/flexcop-reg.h |1 + drivers/media/dvb-frontends/Kconfig |7 + drivers/media/dvb-frontends/Makefile |1 + drivers/media/dvb-frontends/cx24120.c| 1489 ++ drivers/media/dvb-frontends/cx24120.h| 58 + 9 files changed, 1613 insertions(+), 7 deletions(-) create mode 100644 drivers/media/dvb-frontends/cx24120.c create mode 100644 drivers/media/dvb-frontends/cx24120.h diff --git a/MAINTAINERS b/MAINTAINERS index fafa912..5579b55 100644 --- a/MAINTAINERS +++ b/MAINTAINERS @@ -2873,6 +2873,15 @@ S: Maintained F: drivers/media/common/cx2341x* F: include/media/cx2341x* +CX24120 MEDIA DRIVER +M: Jemma Denson jden...@gmail.com +M: Patrick Boettcher patrick.boettc...@posteo.de +L: linux-media@vger.kernel.org +W: http://linuxtv.org/ +Q: http://patchwork.linuxtv.org/project/linux-media/list/ +S: Maintained +F: drivers/media/dvb-frontends/cx24120* + CX88 VIDEO4LINUX DRIVER M: Mauro Carvalho Chehab mche...@osg.samsung.com L: linux-media@vger.kernel.org diff --git a/drivers/media/common/b2c2/Kconfig b/drivers/media/common/b2c2/Kconfig index a8c6cdf..e593638 100644 --- a/drivers/media/common/b2c2/Kconfig +++ b/drivers/media/common/b2c2/Kconfig @@ -14,6 +14,7 @@ config DVB_B2C2_FLEXCOP select DVB_S5H1420 if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_ITD1000 if MEDIA_SUBDRV_AUTOSELECT select DVB_ISL6421 if MEDIA_SUBDRV_AUTOSELECT + select DVB_CX24120 if MEDIA_SUBDRV_AUTOSELECT select DVB_CX24123 if MEDIA_SUBDRV_AUTOSELECT select MEDIA_TUNER_SIMPLE if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_CX24113 if MEDIA_SUBDRV_AUTOSELECT diff --git a/drivers/media/common/b2c2/flexcop-fe-tuner.c b/drivers/media/common/b2c2/flexcop-fe-tuner.c index 7e14e90..2426062 100644 --- a/drivers/media/common/b2c2/flexcop-fe-tuner.c +++ b/drivers/media/common/b2c2/flexcop-fe-tuner.c @@ -12,6 +12,7 @@ #include cx24113.h #include cx24123.h #include isl6421.h +#include cx24120.h #include mt352.h #include bcm3510.h #include nxt200x.h @@ -26,6 +27,16 @@ #define FE_SUPPORTED(fe) (defined(CONFIG_DVB_##fe) || \ (defined(CONFIG_DVB_##fe##_MODULE) defined(MODULE))) +#if FE_SUPPORTED(BCM3510) || FE_SUPPORTED(CX24120) +static int flexcop_fe_request_firmware(struct dvb_frontend *fe, + const struct
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Hi Mauro, On Thu, 14 May 2015 18:40:40 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Em Wed, 29 Apr 2015 08:55:26 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com escreveu: Em Wed, 29 Apr 2015 13:35:01 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, On Mon, 27 Apr 2015 21:40:22 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. I fixed the files cx24120.[ch] in a --strict manner. Thanks Do you want me to send each of these patches to the list? They are not really interesting. But if it might help to review for any obvious mistakes... Yes, please send to ML. Ping. Thanks for the ping. I'll be marking the original patch at patchwork: http://patchwork.linuxtv.org/patch/29162/ As changes requested. Please submit the new version of the pull request when ready. Of course. Jemma and me (mainly Jemma) are progressing and might be able to resubmit everything this weekend. regards, -- Patrick. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Hi Mauro, On 15/05/15 15:24, Mauro Carvalho Chehab wrote: Of course. Jemma and me (mainly Jemma) are progressing and might be able to resubmit everything this weekend. Good! Thanks for the good work! Mauro The only thing left now is moving UCB BER over to DVBv5 stats - we haven't got anything close to any specs for this demod so I'm struggling to work out how to handle the counter increment. It's not helped by my signal not being marginal enough to see any errors anyway! What's the best course of action here - either leave those two out entirely or fudge something to get the numbers to about the right magnitude and worry about making it more accurate at a later date? Jemma. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Fri, 15 May 2015 10:24:33 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, On Thu, 14 May 2015 18:40:40 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Em Wed, 29 Apr 2015 08:55:26 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com escreveu: Em Wed, 29 Apr 2015 13:35:01 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, On Mon, 27 Apr 2015 21:40:22 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. I fixed the files cx24120.[ch] in a --strict manner. Thanks Do you want me to send each of these patches to the list? They are not really interesting. But if it might help to review for any obvious mistakes... Yes, please send to ML. Ping. Thanks for the ping. I'll be marking the original patch at patchwork: http://patchwork.linuxtv.org/patch/29162/ As changes requested. Please submit the new version of the pull request when ready. Of course. Jemma and me (mainly Jemma) are progressing and might be able to resubmit everything this weekend. Good! Thanks for the good work! Mauro -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Wed, 29 Apr 2015 08:55:26 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com escreveu: Em Wed, 29 Apr 2015 13:35:01 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, On Mon, 27 Apr 2015 21:40:22 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. I fixed the files cx24120.[ch] in a --strict manner. Thanks Do you want me to send each of these patches to the list? They are not really interesting. But if it might help to review for any obvious mistakes... Yes, please send to ML. Ping. I'll be marking the original patch at patchwork: http://patchwork.linuxtv.org/patch/29162/ As changes requested. Please submit the new version of the pull request when ready. Thanks! Mauro I rebased my tree on the media-tree of this morning. Ok. I checked the fe_stat-stuff and I saw that you need to keep the old unc, ber and snr functions anyway. For now, yes. I doubt that the cx24120 in its current state reports anything useful for statistical uses. Do you think there is an added value adding it to a driver which is very simple in this regards? The thing is that we'll need/want to remove the DVBv3 stats support from the drivers, and add some code inside the core to keep backward support. So, it is more like avoiding the need of rework on it latter. Now that the driver is fresh, people have the hardware in hands to check if something doesn't break with the conversion. If this got postponed, the one doing the conversion may not have the hardware anymore, with could cause regressions. Regarding the wait for channel-lock I think it could be written differently using a state and checking in the get_status-function whether it is locked for the first time. This will need testing. I haven't done it yet. Well, as this was not merged on 4.2 and we're at -rc1, we have some time to address the needs. Just try to send me a new pull request up to -rc5 (or, at most, at beginning of the -rc6 week), or otherwise it could be postponed to 4.3. Regards, Mauro -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Hi Mauro, On Mon, 27 Apr 2015 21:40:22 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. I fixed the files cx24120.[ch] in a --strict manner. Do you want me to send each of these patches to the list? They are not really interesting. But if it might help to review for any obvious mistakes... I rebased my tree on the media-tree of this morning. I checked the fe_stat-stuff and I saw that you need to keep the old unc, ber and snr functions anyway. I doubt that the cx24120 in its current state reports anything useful for statistical uses. Do you think there is an added value adding it to a driver which is very simple in this regards? Regarding the wait for channel-lock I think it could be written differently using a state and checking in the get_status-function whether it is locked for the first time. This will need testing. I haven't done it yet. regards, -- Patrick. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Wed, 29 Apr 2015 13:35:01 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, On Mon, 27 Apr 2015 21:40:22 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. I fixed the files cx24120.[ch] in a --strict manner. Thanks Do you want me to send each of these patches to the list? They are not really interesting. But if it might help to review for any obvious mistakes... Yes, please send to ML. I rebased my tree on the media-tree of this morning. Ok. I checked the fe_stat-stuff and I saw that you need to keep the old unc, ber and snr functions anyway. For now, yes. I doubt that the cx24120 in its current state reports anything useful for statistical uses. Do you think there is an added value adding it to a driver which is very simple in this regards? The thing is that we'll need/want to remove the DVBv3 stats support from the drivers, and add some code inside the core to keep backward support. So, it is more like avoiding the need of rework on it latter. Now that the driver is fresh, people have the hardware in hands to check if something doesn't break with the conversion. If this got postponed, the one doing the conversion may not have the hardware anymore, with could cause regressions. Regarding the wait for channel-lock I think it could be written differently using a state and checking in the get_status-function whether it is locked for the first time. This will need testing. I haven't done it yet. Well, as this was not merged on 4.2 and we're at -rc1, we have some time to address the needs. Just try to send me a new pull request up to -rc5 (or, at most, at beginning of the -rc6 week), or otherwise it could be postponed to 4.3. Regards, Mauro -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Thank you for your review Mauro. In total there are about 3-4 (it's a guess) users of this driver and this, written-once read-never, code is for a hardware which is very unlikely to be ever reused again ever. Sometimes I regret that there is no carpet in OpenSource where you could hide the dirt under ;-). This driver has been reverse-engineered from a binary-only release - so looking for logic is not really useful - there will be sections which are not understandable or would require a certain amount of investigation and reverse-engineering (I'm thinking of the UNC and BER reporting, maybe SNR too). Tough not sure if it is worth the time. Anyone there to convince me? I'm really surprised that checkpatch.pl hasn't seen any of the coding-style problems you pointed out, except the printk-usage. I ran it on the .c-file and not on the patch, is that the problem? Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. Sorry for the top-posting. best regards, -- Patrick. On Mon, 27 Apr 2015 17:16:28 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Em Mon, 20 Apr 2015 09:27:20 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, Would you please pull the following two patches for finally mainlining the Technisat SkyStar S2 (and its frontend cx24120). Ideally for 4.1, but I assume it is too late. So for 4.2. Hi Patrick, It was too late for 4.1. We typically close the merge for the next Kernel one week before the open of a merge window. Please also tell whether a pull-request is OK for you or whether you prefer patches. Pull requests work best for me, as it warrants that the patches will be applied in order. Also, I priorize pull requests over usual patches. However, if you send a pull request, don't forget to also post the patch series, as it helps people to review and comment about the code. I'm based on the current media-tree's master. But can rebase myself on anything you wish for your convenience. That's fine. You can base on it or on any tag at the Linus tree. My script will actually convert the pull request into a quilt series of patches, getting only the patches between the range specified at the pull request e-mail. It is slow, however, if the origin branch is not here, as it needs to download a larger amount of objects, and then use a somewhat complex heuristics to detect the origin branch. That's why the best is to either base on media-tree master or on a Linus tag. Thanks, -- Patrick. The following changes since commit e183201b9e917daf2530b637b2f34f1d5afb934d: [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL (2015-04-10 10:29:27 -0300) are available in the git repository at: https://github.com/pboettch/linux.git cx24120-v2 for you to fetch changes up to 3a6500da369a632c9fd405b1191dcbf5e5e07504: [media] cx24120: minor checkpatch fixes (2015-04-17 11:11:40 +0200) As complained by checkpatch: WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #195: new file mode 100644 Please add an entry at MAINTAINERS for the one that will be maintaining it. Other comments follow. From c6c7a0454adacfda1ecbd62ae46b23d8af857539 Mon Sep 17 00:00:00 2001 From: Jemma Denson jden...@gmail.com Date: Tue, 14 Apr 2015 14:04:50 +0200 Subject: [media] Add support for TechniSat Skystar S2 To: Linux Media Mailing List linux-media@vger.kernel.org Cc: Mauro Carvalho Chehab mche...@infradead.org This patch adds support for the Technisat Skystar S2 - this has been tried before but the cx24120 driver was a bit out of shape and it didn't got any further: https://patchwork.linuxtv.org/patch/10575/ It is an old card, but currently being sold off for next to nothing, so it's proving quite popular of late. Noticing it's quite similar to the cx24116 and cx24117 I've rewritten the driver in a similar way. There were a few registers and commands from those drivers missing from this one I've tested out and found they do something so they've been added in to speed up tuning and to make get_frontend return something useful. Signed-off-by: Jemma Denson jden...@gmail.com Signed-off-by: Patrick.Boettcher patrick.boettc...@posteo.de --- drivers/media/common/b2c2/Kconfig|1 + drivers/media/common/b2c2/flexcop-fe-tuner.c | 51 +- drivers/media/common/b2c2/flexcop-misc.c |1 + drivers/media/common/b2c2/flexcop-reg.h |1 + drivers/media/dvb-frontends/Kconfig |7 + drivers/media/dvb-frontends/Makefile |1 + drivers/media/dvb-frontends/cx24120.c| 1577 ++ drivers/media/dvb-frontends/cx24120.h| 56 + 8 files changed, 1688 insertions(+), 7 deletions(-) create
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
(Resending to fix reply-all) Hi Mauro, Thanks for taking the time to look into this. I'll let Patrick respond to the first part regards the pull request - I'll just respond to the points you've made about the driver itself. On 27/04/15 21:16, Mauro Carvalho Chehab wrote: + + +/* Write multiple registers */ +static int cx24120_writeregN(struct cx24120_state *state, +u8 reg, const u8 *values, u16 len, u8 incr) +{ +int ret; +u8 buf[5]; /* maximum 4 data bytes at once - flexcop limitation +(very limited i2c-interface this one) */ Hmm... if the limit is at flexcop, then the best is to not be add such restriction here, but at the flexcop code, and passing the max limit that used for the I2C transfer as a parameter at the attach structure, just like other frontend and tuner drivers do. I had considered doing that - the cx24116 driver does have i2c_wr_max as part of it's config struct. The only reason I didn't however was that I did consider that it's now quite unlikely this demod would be used in anything else so it could probably safely stay fixed for a while yet. As you say though it would be nicer as a config item, and it shouldn't be too much to add in so I'll look into doing it that way. Also, this limit is hardcoded here. Please use a define instead. So, if I do have this as a config item then this and the following hardcoded values should all disappear... + +struct i2c_msg msg = { +.addr = state-config-i2c_addr, +.flags = 0, +.buf = buf, +.len = len }; + +while (len) { +buf[0] = reg; +msg.len = len 4 ? 4 : len; Again, don't hardcode the max buf size here. + +/* Wait for tuning */ +while (delay_cnt = 0) { +cx24120_read_status(fe, status); +if (status FE_HAS_LOCK) +goto tuned; +msleep(20); +delay_cnt -= 20; +} I don't see any need for waiting for tune here. This is generally done in userspace and at the kthread inside dvb_frontend.c. Any reason why this has to be done here? Some point after tuning the cx24120_set_clock_ratios function needs to be called and the firmware command CMD_CLOCK_SET sent. The ratios sent to this command depend on delivery system, fec pilot - the latter two only available to read after tuning. If this isn't done then the mpeg stream doesn't appear. Is there a better point to set the ratios? Or for another way of asking that, is there some other function that will always get hit after tuning? + +/* Calculate vco from config */ +static u64 cx24120_calculate_vco(struct cx24120_state *state) +{ +u32 vco; +u64 inv_vco, res, xxyyzz; +u32 xtal_khz = state-config-xtal_khz; + +xxyyzz = 0x4ULL; xxyyzz? Weird name for a var. Yes... one of the oddities left from the dissasembled driver I hadn't ironed out yet! I'll look into what it's supposed to be doing and rename that to something far more sensible. As time allows I'll get this fixed up as required - would it be best if I send patches to here made against Patrick's tree? I presume also one patch for each of the coding styles, and then one patch for each of the other issues? Jemma. -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Mon, 20 Apr 2015 09:27:20 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, Would you please pull the following two patches for finally mainlining the Technisat SkyStar S2 (and its frontend cx24120). Ideally for 4.1, but I assume it is too late. So for 4.2. Hi Patrick, It was too late for 4.1. We typically close the merge for the next Kernel one week before the open of a merge window. Please also tell whether a pull-request is OK for you or whether you prefer patches. Pull requests work best for me, as it warrants that the patches will be applied in order. Also, I priorize pull requests over usual patches. However, if you send a pull request, don't forget to also post the patch series, as it helps people to review and comment about the code. I'm based on the current media-tree's master. But can rebase myself on anything you wish for your convenience. That's fine. You can base on it or on any tag at the Linus tree. My script will actually convert the pull request into a quilt series of patches, getting only the patches between the range specified at the pull request e-mail. It is slow, however, if the origin branch is not here, as it needs to download a larger amount of objects, and then use a somewhat complex heuristics to detect the origin branch. That's why the best is to either base on media-tree master or on a Linus tag. Thanks, -- Patrick. The following changes since commit e183201b9e917daf2530b637b2f34f1d5afb934d: [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL (2015-04-10 10:29:27 -0300) are available in the git repository at: https://github.com/pboettch/linux.git cx24120-v2 for you to fetch changes up to 3a6500da369a632c9fd405b1191dcbf5e5e07504: [media] cx24120: minor checkpatch fixes (2015-04-17 11:11:40 +0200) As complained by checkpatch: WARNING: added, moved or deleted file(s), does MAINTAINERS need updating? #195: new file mode 100644 Please add an entry at MAINTAINERS for the one that will be maintaining it. Other comments follow. From c6c7a0454adacfda1ecbd62ae46b23d8af857539 Mon Sep 17 00:00:00 2001 From: Jemma Denson jden...@gmail.com Date: Tue, 14 Apr 2015 14:04:50 +0200 Subject: [media] Add support for TechniSat Skystar S2 To: Linux Media Mailing List linux-media@vger.kernel.org Cc: Mauro Carvalho Chehab mche...@infradead.org This patch adds support for the Technisat Skystar S2 - this has been tried before but the cx24120 driver was a bit out of shape and it didn't got any further: https://patchwork.linuxtv.org/patch/10575/ It is an old card, but currently being sold off for next to nothing, so it's proving quite popular of late. Noticing it's quite similar to the cx24116 and cx24117 I've rewritten the driver in a similar way. There were a few registers and commands from those drivers missing from this one I've tested out and found they do something so they've been added in to speed up tuning and to make get_frontend return something useful. Signed-off-by: Jemma Denson jden...@gmail.com Signed-off-by: Patrick.Boettcher patrick.boettc...@posteo.de --- drivers/media/common/b2c2/Kconfig|1 + drivers/media/common/b2c2/flexcop-fe-tuner.c | 51 +- drivers/media/common/b2c2/flexcop-misc.c |1 + drivers/media/common/b2c2/flexcop-reg.h |1 + drivers/media/dvb-frontends/Kconfig |7 + drivers/media/dvb-frontends/Makefile |1 + drivers/media/dvb-frontends/cx24120.c| 1577 ++ drivers/media/dvb-frontends/cx24120.h| 56 + 8 files changed, 1688 insertions(+), 7 deletions(-) create mode 100644 drivers/media/dvb-frontends/cx24120.c create mode 100644 drivers/media/dvb-frontends/cx24120.h diff --git a/drivers/media/common/b2c2/Kconfig b/drivers/media/common/b2c2/Kconfig index a8c6cdfaa2f5..e5936380b1e5 100644 --- a/drivers/media/common/b2c2/Kconfig +++ b/drivers/media/common/b2c2/Kconfig @@ -14,6 +14,7 @@ config DVB_B2C2_FLEXCOP select DVB_S5H1420 if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_ITD1000 if MEDIA_SUBDRV_AUTOSELECT select DVB_ISL6421 if MEDIA_SUBDRV_AUTOSELECT + select DVB_CX24120 if MEDIA_SUBDRV_AUTOSELECT select DVB_CX24123 if MEDIA_SUBDRV_AUTOSELECT select MEDIA_TUNER_SIMPLE if MEDIA_SUBDRV_AUTOSELECT select DVB_TUNER_CX24113 if MEDIA_SUBDRV_AUTOSELECT diff --git a/drivers/media/common/b2c2/flexcop-fe-tuner.c b/drivers/media/common/b2c2/flexcop-fe-tuner.c index 7e14e90d2922..66f6910a1810 100644 --- a/drivers/media/common/b2c2/flexcop-fe-tuner.c +++ b/drivers/media/common/b2c2/flexcop-fe-tuner.c @@ -12,6 +12,7 @@ #include cx24113.h #include cx24123.h #include isl6421.h +#include cx24120.h #include mt352.h #include bcm3510.h #include nxt200x.h @@ -26,6 +27,16 @@ #define FE_SUPPORTED(fe) (defined(CONFIG_DVB_##fe) || \ (defined(CONFIG_DVB_##fe##_MODULE) defined(MODULE)))
Re: [PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Em Mon, 27 Apr 2015 23:25:23 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Thank you for your review Mauro. In total there are about 3-4 (it's a guess) users of this driver and this, written-once read-never, code is for a hardware which is very unlikely to be ever reused again ever. Sometimes I regret that there is no carpet in OpenSource where you could hide the dirt under ;-). :) This driver has been reverse-engineered from a binary-only release - so looking for logic is not really useful - there will be sections which are not understandable or would require a certain amount of investigation and reverse-engineering (I'm thinking of the UNC and BER reporting, maybe SNR too). SNR can be reported in relative mode, if you're unable to figure out what it means in dB. I don't see much problem for UNC, as, on both DVBv3 and DVBv5, this is a counter. BER is the only measure that could be more problematic, as, on DVBv5, it requires the scale of the BER measure, e. g. if BER reports 1, does that mean an error of 10^-12, 10^-9, 10^-7, 10^-6 or some other bit rate? In other words, what's the denominator for BER? Tough not sure if it is worth the time. Anyone there to convince me? I'm really surprised that checkpatch.pl hasn't seen any of the coding-style problems you pointed out, except the printk-usage. I ran it on the .c-file and not on the patch, is that the problem? No. People complained that checkpatch was too pedantic. So, some checks are now optional. A more pedantic test would be to run it as: $ checkpatch.pl --strict There are other parameters that could also used, like --codespell, in order to identify spelling errors. Checkpatch can even correct some common errors, using the --fix parameter. If you run checkpatch in strict mode, you'll see a lot more errors, like: CHECK: spaces preferred around that '/' (ctx:VxV) #1330: FILE: drivers/media/dvb-frontends/cx24120.c:1131: + cmd.arg[4] = ((state-dcur.symbol_rate/1000) 0xff00) 8; ... CHECK: Alignment should match open parenthesis #1486: FILE: drivers/media/dvb-frontends/cx24120.c:1287: + err(Could not load firmware (%s): %d\n, + CX24120_FIRMWARE, ret); ... CHECK: Prefer kzalloc(sizeof(*state)...) over kzalloc(sizeof(struct cx24120_state)...) #466: FILE: drivers/media/dvb-frontends/cx24120.c:267: + state = kzalloc(sizeof(struct cx24120_state), ... total: 2 errors, 5 warnings, 107 checks, 1755 lines checked E. g., 107 additional reports will pop up. Ok, not all of them are relevant. That's why this is disabled by default. For example, it works for me if you don't fix this warning: CHECK: Avoid CamelCase: skystarS2_rev33_attach #106: FILE: drivers/media/common/b2c2/flexcop-fe-tuner.c:635: +static int skystarS2_rev33_attach(struct flexcop_device *fc, It is probably worth to run checkpatch in strict mode for new drivers, in order to see if something relevant pops up. I generally don't run it in strict mode when reviewing patches, as it would generate too much overhead on my review process, as it would take me more time reviewing those things, and I may miss something more relevant. Could we send an additional patch for coding-style or would you prefer a new patch which has everything inside? This would maintain the author-attribution of the initial commit. An additional patch is fine. Sorry for the top-posting. best regards, -- Patrick. On Mon, 27 Apr 2015 17:16:28 -0300 Mauro Carvalho Chehab mche...@osg.samsung.com wrote: Em Mon, 20 Apr 2015 09:27:20 +0200 Patrick Boettcher patrick.boettc...@posteo.de escreveu: Hi Mauro, Would you please pull the following two patches for finally mainlining the Technisat SkyStar S2 (and its frontend cx24120). Ideally for 4.1, but I assume it is too late. So for 4.2. Hi Patrick, It was too late for 4.1. We typically close the merge for the next Kernel one week before the open of a merge window. Please also tell whether a pull-request is OK for you or whether you prefer patches. Pull requests work best for me, as it warrants that the patches will be applied in order. Also, I priorize pull requests over usual patches. However, if you send a pull request, don't forget to also post the patch series, as it helps people to review and comment about the code. I'm based on the current media-tree's master. But can rebase myself on anything you wish for your convenience. That's fine. You can base on it or on any tag at the Linus tree. My script will actually convert the pull request into a quilt series of patches, getting only the patches between the range specified at the pull request e-mail. It is slow, however, if the origin branch is not here, as it needs to download a larger amount of objects, and then use a somewhat complex heuristics to detect the origin branch. That's why the best is to either base on
[PULL] For 4.2 (or even 4.1?) add support for cx24120/Technisat SkyStar S2
Hi Mauro, Would you please pull the following two patches for finally mainlining the Technisat SkyStar S2 (and its frontend cx24120). Ideally for 4.1, but I assume it is too late. So for 4.2. Please also tell whether a pull-request is OK for you or whether you prefer patches. I'm based on the current media-tree's master. But can rebase myself on anything you wish for your convenience. Thanks, -- Patrick. The following changes since commit e183201b9e917daf2530b637b2f34f1d5afb934d: [media] uvcvideo: add support for VIDIOC_QUERY_EXT_CTRL (2015-04-10 10:29:27 -0300) are available in the git repository at: https://github.com/pboettch/linux.git cx24120-v2 for you to fetch changes up to 3a6500da369a632c9fd405b1191dcbf5e5e07504: [media] cx24120: minor checkpatch fixes (2015-04-17 11:11:40 +0200) Jemma Denson (1): [media] Add support for TechniSat Skystar S2 Patrick Boettcher (1): [media] cx24120: minor checkpatch fixes drivers/media/common/b2c2/Kconfig|1 + drivers/media/common/b2c2/flexcop-fe-tuner.c | 51 +- drivers/media/common/b2c2/flexcop-misc.c |1 + drivers/media/common/b2c2/flexcop-reg.h |1 + drivers/media/dvb-frontends/Kconfig |7 + drivers/media/dvb-frontends/Makefile |1 + drivers/media/dvb-frontends/cx24120.c| 1574 ++ drivers/media/dvb-frontends/cx24120.h| 56 + 8 files changed, 1685 insertions(+), 7 deletions(-) create mode 100644 drivers/media/dvb-frontends/cx24120.c create mode 100644 drivers/media/dvb-frontends/cx24120.h -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Support for cx24120?
Hi, I recently got an TechniSat SkyStar S2 [13d0:2103] which uses an FlexCop2-Bridge, which is supported, but an unsupported? CX24120 Demod. (This card is rather cheap, 45€ LowProfile incl. IR-Remote, otherwise i'd just have sent it back.) TechniSat provides a Binary Driver ( http://www.technisat-daun.de/download/soft/soft_linux-driver_12-2008_6611.zip ) which contains an cx24120 blob (32/64) +Firmware, but requires an Dec2008 V4L-checkout ( I need a newer rev for my E3C EC168 USB-DVBT-Stick) Anyway I can get this working? Can I help in any way? Thanks, Paul lspci Network controller: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card (rev 02) Subsystem: Techsan Electronics Co Ltd B2C2 FlexCopII DVB chip / Technisat SkyStar2 DVB card Control: I/O+ Mem+ BusMaster- SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap- 66MHz- UDF- FastB2B- ParErr- DEVSEL=slow TAbort- TAbort- MAbort- SERR- PERR- INTx- Interrupt: pin A routed to IRQ 17 Region 0: Memory at feae (32-bit, non-prefetchable) [size=64K] Region 1: I/O ports at bc00 [size=32] Kernel modules: b2c2-flexcop-pci dmesg [ 17.355268] b2c2-flexcop: B2C2 FlexcopII/II(b)/III digital TV receiver chip loaded successfully [ 17.357454] flexcop-pci: will use the HW PID filter. [ 17.357460] flexcop-pci: card revision 2 [ 17.357469] b2c2_flexcop_pci :05:04.0: PCI INT A - GSI 17 (level, low) - IRQ 17 [ 17.391402] DVB: registering new adapter (FlexCop Digital TV device) [ 17.393043] b2c2-flexcop: MAC address = xx:xx:xx:xx:d0:02 [ 17.393555] CX24123: wrong demod revision: 84 [ 17.628997] mt352_read_register: readreg error (reg=127, ret==-121) [ 17.636769] nxt200x: nxt200x_readbytes: i2c read error (addr 0x0a, err == -121) [ 17.636772] Unknown/Unsupported NXT chip: 00 00 00 00 00 [ 17.645121] lgdt330x: i2c_read_demod_bytes: addr 0x59 select 0x02 error (ret == -121) [ 17.661886] stv0297_readreg: readreg error (reg == 0x80, ret == -121) [ 17.671433] mt312_read: ret == -121 [ 17.671508] b2c2-flexcop: no frontend driver found for this B2C2/FlexCop adapter [ 17.671805] b2c2_flexcop_pci :05:04.0: PCI INT A disabled -- To unsubscribe from this list: send the line unsubscribe linux-media in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html