From: Antti Palosaari <crope@iki.fi>
To: Steve Kerrison <steve@stevekerrison.com>
Cc: linux-media@vger.kernel.org
Subject: Re: comments for DVB LNA API
Date: Wed, 11 Jul 2012 00:32:11 +0300 [thread overview]
Message-ID: <4FFC9F5B.9000800@iki.fi> (raw)
In-Reply-To: <4FFC5B7A.5060708@stevekerrison.com>
On 07/10/2012 07:42 PM, Steve Kerrison wrote:
> On 10/07/12 17:20, Antti Palosaari wrote:
>> I am looking how to implement LNA support for the DVB API.
>>
>> What we need to be configurable at least is: OFF, ON, AUTO.
>>
>> There is LNAs that support variable gain and likely those will be
>> sooner or later. Actually I think there is already LNAs integrated to
>> the RF-tuner that offers adjustable gain. Also looking to NXP catalog
>> and you will see there is digital TV LNAs with adjustable gain.
>>
>> Coming from that requirements are:
>> adjustable gain 0-xxx dB
>> LNA OFF
>> LNA ON
>> LNA AUTO
>>
>> Setting LNA is easy but how to query capabilities of supported LNA
>> values? eg. this device has LNA which supports Gain=5dB, Gain=8dB, LNA
>> auto?
> Without having a sample of device capabilities this question may be
> irrelevant, but what if the gain is somewhat continuiously configurable
> vs. discretized? For example can some be configured just for 5,8 and 11,
> whilst some might have some 8-bit value that controls gain between 5 and
> 11?
Yes.
For example external DVB-T/C LNA NXP BGU7033. It does have 3 modes, 10
dB, 5 dB and bypass -2 dB.
LNAs offering more adjustable gain is called VGA (variable gain
amplifier). It could have control interface like 5-bits or some other
bus like I2C. Those are usually integrated to the silicon RF-tuner and
in that case configuration is possible via tuner registers. Usually it
is not needed to configure at all on run-time.
>> LNA ON (bypass) could be replaced with Gain=0 and LNA ON with Gain>0,
>> Gain=-1 is for auto example.
>
> How should the API handle differences between the specified gain and the
> capabilities of the LNA? Round to nearest possible config if it's within
> the operating range; return error if out of range?
I think rounding is best approach.
Maybe it is not necessary to read at all. Just allow user set LNA in
steps of one number, 0, 1, 2, 3, ..., 100 and let the driver detect
scale. In that case simple LNA having only one static gain value has
values: AUTO, 0, 1. LNA having 2 gain levels: AUTO, 0, 1, 2. VGA having
3 bit control: AUTO, 0, 1, 2, 3, 4, 5, 6, 7.
regards
Antti
--
http://palosaari.fi/
next prev parent reply other threads:[~2012-07-10 21:32 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <4FFC5B4E.8080903@stevekerrison.com>
2012-07-10 16:42 ` comments for DVB LNA API Steve Kerrison
2012-07-10 21:32 ` Antti Palosaari [this message]
2012-07-10 16:20 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=4FFC9F5B.9000800@iki.fi \
--to=crope@iki.fi \
--cc=linux-media@vger.kernel.org \
--cc=steve@stevekerrison.com \
/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).