Re: PATCH: Query DVB frontend capabilities

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 15, 2011 at 12:12 AM, Mauro Carvalho Chehab
<mchehab@xxxxxxxxxx> wrote:
> Em 14-11-2011 16:30, Manu Abraham escreveu:
>> On Mon, Nov 14, 2011 at 11:38 PM, Mauro Carvalho Chehab
>> <mchehab@xxxxxxxxxx> wrote:
>>> Yet, this doesn't require any changes at DVB API, as all that the demodulator
>>> need to know is the sub-carrier parameters (frequency, roll-off, symbol
>>> rate, etc).
>>
>> You do: this is why there were changes to the V3 API to accomodate
>> DVB-S2, which eventually became V5. The major change that underwent is
>> the addition of newer modulations. The demodulator need to be
>> explicitly told of the modulation. With some demodulators, the
>> modulation order could be detected from the PL signaling, rather than
>> the user space application telling it.
>
> DVB-S2 doesn't require DVB bandwidth to be specified.


stb0899:
		switch (state->delsys) {
		case SYS_DVBS:
		case SYS_DSS:
                                  ......
			if (state->config->tuner_set_bandwidth)
				state->config->tuner_set_bandwidth(fe, (13 *
(stb0899_carr_width(state) + SearchRange)) / 10);
			if (state->config->tuner_get_bandwidth)
				state->config->tuner_get_bandwidth(fe, &internal->tuner_bw);
                               .......
    			break;
		case SYS_DVBS2:
                                  ......
			if (state->config->tuner_set_bandwidth)
				state->config->tuner_set_bandwidth(fe, (stb0899_carr_width(state)
+ SearchRange));
			if (state->config->tuner_get_bandwidth)
				state->config->tuner_get_bandwidth(fe, &internal->tuner_bw);
    			break;


cx24116:

	/* Set/Reset B/W */
	cmd.args[0x00] = CMD_BANDWIDTH;
	cmd.args[0x01] = 0x01;
	cmd.len = 0x02;
	ret = cx24116_cmd_execute(fe, &cmd);
	if (ret != 0)
		return ret;


stv090x does a lot of auto detection for almost everything, but still:

stv090x:
			if (state->algo == STV090x_COLD_SEARCH)
				state->tuner_bw = (15 * (stv090x_car_width(state->srate,
state->rolloff) + 10000000)) / 10;
			else if (state->algo == STV090x_WARM_SEARCH)
				state->tuner_bw = stv090x_car_width(state->srate, state->rolloff)
+ 10000000;
		}


Regards,
Manu
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Input]     [Video for Linux]     [Gstreamer Embedded]     [Mplayer Users]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]
  Powered by Linux