From: Mauro Carvalho Chehab <m.chehab@samsung.com>
To: Antti Palosaari <crope@iki.fi>
Cc: LMML <linux-media@vger.kernel.org>, Hans Verkuil <hverkuil@xs4all.nl>
Subject: Re: [REVIEW PATCH 11/13] DocBook: document RF tuner bandwidth controls
Date: Wed, 12 Mar 2014 10:21:18 -0300 [thread overview]
Message-ID: <20140312102118.79956fd3@samsung.com> (raw)
In-Reply-To: <53205BF6.9040304@iki.fi>
Em Wed, 12 Mar 2014 15:07:02 +0200
Antti Palosaari <crope@iki.fi> escreveu:
> On 12.03.2014 14:57, Antti Palosaari wrote:
> > On 12.03.2014 14:47, Mauro Carvalho Chehab wrote:
> >> Em Wed, 12 Mar 2014 14:26:35 +0200
> >> Antti Palosaari <crope@iki.fi> escreveu:
> >>
> >>> On 12.03.2014 13:02, Mauro Carvalho Chehab wrote:
> >>>> Em Mon, 10 Mar 2014 12:01:28 +0200
> >>>> Antti Palosaari <crope@iki.fi> escreveu:
> >>>>
> >>>>> On 05.03.2014 20:49, Mauro Carvalho Chehab wrote:
> >>>>>> Em Thu, 27 Feb 2014 02:22:06 +0200
> >>>>>> Antti Palosaari <crope@iki.fi> escreveu:
> >>>>>>
> >>>>>>> Add documentation for RF tuner bandwidth controls. These controls
> >>>>>>> are
> >>>>>>> used to set filters on tuner signal path.
> >>>>>>>
> >>>>>>> Cc: Hans Verkuil <hverkuil@xs4all.nl>
> >>>>>>> Signed-off-by: Antti Palosaari <crope@iki.fi>
> >>>>>>> ---
> >>>>>>> Documentation/DocBook/media/v4l/controls.xml | 19
> >>>>>>> +++++++++++++++++++
> >>>>>>> 1 file changed, 19 insertions(+)
> >>>>>>>
> >>>>>>> diff --git a/Documentation/DocBook/media/v4l/controls.xml
> >>>>>>> b/Documentation/DocBook/media/v4l/controls.xml
> >>>>>>> index 6c9dbf6..5550fea 100644
> >>>>>>> --- a/Documentation/DocBook/media/v4l/controls.xml
> >>>>>>> +++ b/Documentation/DocBook/media/v4l/controls.xml
> >>>>>>> @@ -5007,6 +5007,25 @@ descriptor. Calling &VIDIOC-QUERYCTRL; for
> >>>>>>> this control will return a
> >>>>>>> description of this control class.</entry>
> >>>>>>> </row>
> >>>>>>> <row>
> >>>>>>> + <entry
> >>>>>>> spanname="id"><constant>V4L2_CID_RF_TUNER_BANDWIDTH_AUTO</constant> </entry>
> >>>>>>>
> >>>>>>> + <entry>boolean</entry>
> >>>>>>> + </row>
> >>>>>>> + <row>
> >>>>>>> + <entry spanname="descr">Enables/disables tuner
> >>>>>>> radio channel
> >>>>>>> +bandwidth configuration. In automatic mode bandwidth
> >>>>>>> configuration is performed
> >>>>>>> +by the driver.</entry>
> >>>>>>> + </row>
> >>>>>>> + <row>
> >>>>>>> + <entry
> >>>>>>> spanname="id"><constant>V4L2_CID_RF_TUNER_BANDWIDTH</constant> </entry>
> >>>>>>>
> >>>>>>> + <entry>integer</entry>
> >>>>>>> + </row>
> >>>>>>> + <row>
> >>>>>>> + <entry spanname="descr">Filter(s) on tuner signal
> >>>>>>> path are used to
> >>>>>>> +filter signal according to receiving party needs. Driver
> >>>>>>> configures filters to
> >>>>>>> +fulfill desired bandwidth requirement. Used when
> >>>>>>> V4L2_CID_RF_TUNER_BANDWIDTH_AUTO is not
> >>>>>>> +set. The range and step are driver-specific.</entry>
> >>>>>>
> >>>>>> Huh? If this is enable/disable, why "the range and step are
> >>>>>> driver-specific"?
> >>>>>
> >>>>> Because there is two controls grouped. That is situation of having
> >>>>> AUTO/MANUAL.
> >>>>> V4L2_CID_RF_TUNER_BANDWIDTH_AUTO
> >>>>> V4L2_CID_RF_TUNER_BANDWIDTH
> >>>>>
> >>>>> V4L2_CID_RF_TUNER_BANDWIDTH is valid only when
> >>>>> V4L2_CID_RF_TUNER_BANDWIDTH_AUTO == false.
> >>>>>
> >>>>
> >>>> Sorry, but I'm not understanding what you're arguing.
> >>>>
> >>>> Yeah, it is clear at the patch that there are two controls, and that
> >>>> V4L2_CID_RF_TUNER_BANDWIDTH is valid only when AUTO is disabled, but
> >>>> this doesn't answer my question:
> >>>>
> >>>> Why V4L2_CID_RF_TUNER_BANDWIDTH's range and step are driver-specific?
> >>>>
> >>>
> >>> Hmmm. That control is used to configure RF filters. Filters set
> >>> bandwidth of radio channel. There is usually quite limited set of
> >>> available analog filters inside RF tuner. If you look for example
> >>> FC0012/FC0013 possible filters are 6/7/8 MHz. E4000 has something 4-11
> >>> MHz. If you look those very old 1st gen silicon tuners like QT1010 /
> >>> MT2060, there is no integrated filters at all - but there is external
> >>> saw filter which is usually 8MHz at 36.125 MHz IF.
> >>>
> >>> Did you remember there is same parameter already in DVB API (struct
> >>> dtv_frontend_properties bandwidth_hz)? That is control is currently used
> >>> to set r820t, fc0012, fc10013 .bandwidth_hz value, e4000 implements it
> >>> correctly as own control.
> >>>
> >>> I am quite astonished we have that big gap with our views.
> >>
> >> Well, on DVB, the bandwidth is specified in Hz, at DVBv5 (or via
> >> an enum on DVBv3).
> >>
> >> Here, there's no description about the unit to be used (Hz? kHz?).
> >> It just says that this is an integer, with a driver-specific
> >> range and step.
> >>
> >> So, one driver might choose to use Hz, other kHz, and other to
> >> expose some internal counter. That's bad.
> >>
> >> We should either use a V4L2_CTRL_TYPE_MENU type of control, where it
> >> would be possible to do something similar to DVBv3 way to specify
> >> the bandwidth filter, or to define that the bandwidth will be
> >> in Hz, kHz or MHz.
> >
> > Yeah, indeed. That was my mistake. The aim was Hz yes.
> >
> >>
> >> Probably, a menu type is better, as it allows userspace to get
> >> all supported bandwidths.
> >
> > I though it too, but there is already a lot choices for some tuners,
> > E4000 has over 30. What is maximum reasonable filter count for
> > V4L2_CTRL_TYPE_MENU?
I don't see any troubles on having 30 items there. Maybe Hans is aware
of some troubles on having such number of items.
The advantage of a menu type is that it helps userspace to select
an existing range.
> One fear there is also what happens when there will be some day new RF
> tuner having DSP which does digital filtering ~1 Hz step?
It is possible.
> Mabbe the current control is enough, but probably it is place to add
> comment unit is Hz (even I think people should expect it is Hz when RF
> frequencies are spoken).
Please remind that V4L2 API has 3 scales already for frequencies,
HZ being the less obvious one, as it is the one added only for
3.14 and upper.
I see two alternatives here:
1) say that this is always Hz. The problem is if some future hardware
would support a bandwidth bigger than 2 GHz. That's unlikely, as
using such filter would require a wide band antenna, but
I won't doubt that this might happen some day;
2) say that this should follow the corresponding tuner CAPS for
frequencies (V4L2_TUNER_CAP_LOW, V4L2_TUNER_CAP_NORM, V4L2_TUNER_CAP_1HZ).
The advantage of (2) is that, if we latter need to support wide band
filters, one would just need to use V4L2_TUNER_CAP_NORM (or a newer
V4L2_TUNER_CAP_1KHZ).
Regards,
Mauro
next prev parent reply other threads:[~2014-03-12 13:21 UTC|newest]
Thread overview: 24+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-02-27 0:21 [REVIEW PATCH 00/13] SDR API - V4L API stuff itself Antti Palosaari
2014-02-27 0:21 ` [REVIEW PATCH 01/13] v4l: add RF tuner gain controls Antti Palosaari
2014-02-27 0:21 ` [REVIEW PATCH 02/13] v4l: add RF tuner channel bandwidth control Antti Palosaari
2014-02-27 0:21 ` [REVIEW PATCH 03/13] v4l: reorganize RF tuner control ID numbers Antti Palosaari
2014-02-27 0:21 ` [REVIEW PATCH 04/13] v4l: uapi: add SDR formats CU8 and CU16LE Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 05/13] v4l: add enum_freq_bands support to tuner sub-device Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 06/13] v4l: add control for RF tuner PLL lock flag Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 07/13] DocBook: V4L: add V4L2_SDR_FMT_CU8 - 'CU08' Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 08/13] DocBook: V4L: add V4L2_SDR_FMT_CU16LE - 'CU16' Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 09/13] DocBook: document RF tuner gain controls Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 10/13] DocBook: media: document V4L2_CTRL_CLASS_RF_TUNER Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 11/13] DocBook: document RF tuner bandwidth controls Antti Palosaari
[not found] ` <20140305154922.508c48d7@samsung.com>
2014-03-10 10:01 ` Antti Palosaari
2014-03-12 11:02 ` Mauro Carvalho Chehab
2014-03-12 12:26 ` Antti Palosaari
2014-03-12 12:37 ` Antti Palosaari
2014-03-12 12:47 ` Mauro Carvalho Chehab
2014-03-12 12:57 ` Antti Palosaari
2014-03-12 13:07 ` Antti Palosaari
2014-03-12 13:21 ` Mauro Carvalho Chehab [this message]
2014-03-12 14:23 ` Antti Palosaari
2014-03-12 17:15 ` Mauro Carvalho Chehab
2014-02-27 0:22 ` [REVIEW PATCH 12/13] DocBook: media: document PLL lock control Antti Palosaari
2014-02-27 0:22 ` [REVIEW PATCH 13/13] DocBook: media: add some general info about RF tuners Antti Palosaari
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=20140312102118.79956fd3@samsung.com \
--to=m.chehab@samsung.com \
--cc=crope@iki.fi \
--cc=hverkuil@xs4all.nl \
--cc=linux-media@vger.kernel.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