All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mauro Carvalho Chehab <mchehab@infradead.org>
To: Andreas Oberritter <obi@linuxtv.org>
Cc: Linux Media Mailing List <linux-media@vger.kernel.org>
Subject: Re: [PATCH RFC 01/91] [media] dvb-core: allow demods to specify the supported delivery systems supported standards.
Date: Tue, 27 Dec 2011 11:28:26 -0200	[thread overview]
Message-ID: <4EF9C7FA.9070203@infradead.org> (raw)
In-Reply-To: <4EF9B606.3090908@linuxtv.org>

On 27-12-2011 10:11, Andreas Oberritter wrote:
> On 27.12.2011 02:07, Mauro Carvalho Chehab wrote:
>> DVB-S and DVB-T, as those were the standards supported by DVBv3.
> 
> The description seems to be incomplete.
> 
>> New standards like DSS, ISDB and CTTB don't fit on any of the
>> above types.
>>
>> while there's a way for the drivers to explicitly change whatever
>> default DELSYS were filled inside the core, still a fake value is
>> needed there, and a "compat" code to allow DVBv3 applications to
>> work with those delivery systems is needed. This is good for a
>> short term solution, while applications aren't using DVBv5 directly.
>>
>> However, at long term, this is bad, as the compat code runs even
>> if the application is using DVBv5. Also, the compat code is not
>> perfect, and only works when the frontend is capable of auto-detecting
>> the parameters that aren't visible by the faked delivery systems.
>>
>> So, let the frontend fill the supported delivery systems at the
>> device properties directly, and, in the future, let the core to use
>> the delsys to fill the reported info::type based on the delsys.
>>
>> Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
>> ---
>>  drivers/media/dvb/dvb-core/dvb_frontend.c |   13 +++++++++++++
>>  drivers/media/dvb/dvb-core/dvb_frontend.h |    8 ++++++++
>>  2 files changed, 21 insertions(+), 0 deletions(-)
>>
>> diff --git a/drivers/media/dvb/dvb-core/dvb_frontend.c b/drivers/media/dvb/dvb-core/dvb_frontend.c
>> index 8dedff4..f17c411 100644
>> --- a/drivers/media/dvb/dvb-core/dvb_frontend.c
>> +++ b/drivers/media/dvb/dvb-core/dvb_frontend.c
>> @@ -1252,6 +1252,19 @@ static void dtv_set_default_delivery_caps(const struct dvb_frontend *fe, struct
>>  	const struct dvb_frontend_info *info = &fe->ops.info;
>>  	u32 ncaps = 0;
>>  
>> +	/*
>> +	 * If the frontend explicitly sets a list, use it, instead of
>> +	 * filling based on the info->type
>> +	 */
>> +	if (fe->ops.delsys[ncaps]) {
>> +		while (fe->ops.delsys[ncaps] && ncaps < MAX_DELSYS) {
>> +			p->u.buffer.data[ncaps] = fe->ops.delsys[ncaps];
>> +			ncaps++;
>> +		}
>> +		p->u.buffer.len = ncaps;
>> +		return;
>> +	}
>> +
> 
> I don't understand what this is trying to solve. This is already handled
> by the get_property driver callback.
> 
> dtv_set_default_delivery_caps() only sets some defaults for drivers not
> implementing get_property yet.

dtv_set_default_delivery_caps() does the wrong thing for delivery systems
like ISDB-T, ISDB-S, DSS, DMB-TH, as it fills data with a fake value that
is there at fe->ops.info.type. 

The fake values there should be used only for DVBv3 legacy calls emulation
on those delivery systems that are not fully compatible with a DVBv3 call.

At the end, I think we should deprecate the fe->ops.info.type, as its
contents is not reliable (as it can represent something else). 

Btw, there are several places at dvb_frontend.c that uses the info.type
to assume the delivery system. This leads DVB core to do the wrong assumptions
for non-DVBv3 supported systems. The right way is to use a new field that
really represents the supported delivery systems by a given frontend, instead
of relying on fe->ops.info.type.


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


  reply	other threads:[~2011-12-27 13:28 UTC|newest]

Thread overview: 122+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-27  1:07 [PATCH RFC 00/91] Only use DVBv5 internally on frontend drivers Mauro Carvalho Chehab
2011-12-27  1:07 ` [PATCH RFC 01/91] [media] dvb-core: allow demods to specify the supported delivery systems supported standards Mauro Carvalho Chehab
2011-12-27  1:07   ` [PATCH RFC 02/91] [media] Rename set_frontend fops to set_frontend_legacy Mauro Carvalho Chehab
2011-12-27  1:07     ` [PATCH RFC 03/91] [media] dvb-core: add support for a DVBv5 get_frontend() callback Mauro Carvalho Chehab
2011-12-27  1:07       ` [PATCH RFC 04/91] [media] af9013: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:07         ` [PATCH RFC 05/91] [media] atbm8830: convert set_fontend to new way and fix delivery system Mauro Carvalho Chehab
2011-12-27  1:07           ` [PATCH RFC 06/91] [media] au8522_dig: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:07             ` [PATCH RFC 07/91] [media] bcm3510: " Mauro Carvalho Chehab
2011-12-27  1:07               ` [PATCH RFC 08/91] [media] cx22700: " Mauro Carvalho Chehab
2011-12-27  1:07                 ` [PATCH RFC 09/91] [media] cx22702: " Mauro Carvalho Chehab
2011-12-27  1:07                   ` [PATCH RFC 10/91] [media] cx24110: " Mauro Carvalho Chehab
2011-12-27  1:07                     ` [PATCH RFC 11/91] [media] cx24116: report delivery system and cleanups Mauro Carvalho Chehab
2011-12-27  1:08                       ` [PATCH RFC 12/91] [media] cx23123: remove an unused argument from cx24123_pll_writereg() Mauro Carvalho Chehab
2011-12-27  1:08                         ` [PATCH RFC 13/91] [media] av7110: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                           ` [PATCH RFC 14/91] [media] cx23123: " Mauro Carvalho Chehab
2011-12-27  1:08                             ` [PATCH RFC 15/91] [media] cxd2820r: report delivery system and cleanups Mauro Carvalho Chehab
2011-12-27  1:08                               ` [PATCH RFC 16/91] [media] dibx000: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                 ` [PATCH RFC 17/91] [media] dib9000: remove unused parameters Mauro Carvalho Chehab
2011-12-27  1:08                                   ` [PATCH RFC 18/91] [media] cx24113: cleanup: remove unused init Mauro Carvalho Chehab
2011-12-27  1:08                                     ` [PATCH RFC 19/91] [media] dib9000: Get rid of the remaining DVBv3 legacy stuff Mauro Carvalho Chehab
2011-12-27  1:08                                       ` [PATCH RFC 20/91] [media] dib3000mb: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                         ` [PATCH RFC 21/91] [media] dib8000: Remove the old DVBv3 struct from it and add delsys Mauro Carvalho Chehab
2011-12-27  1:08                                           ` [PATCH RFC 22/91] [media] dib9000: get rid of unused dvb_frontend_parameters Mauro Carvalho Chehab
2011-12-27  1:08                                             ` [PATCH RFC 23/91] [media] zl10353: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                               ` [PATCH RFC 24/91] [media] em28xx-dvb: don't initialize drx-d non-used fields with zero Mauro Carvalho Chehab
2011-12-27  1:08                                                 ` [PATCH RFC 25/91] [media] drxd: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                                   ` [PATCH RFC 26/91] [media] drxk: " Mauro Carvalho Chehab
2011-12-27  1:08                                                     ` [PATCH RFC 27/91] [media] ds3000: " Mauro Carvalho Chehab
2011-12-27  1:08                                                       ` [PATCH RFC 28/91] [media] dvb_dummy_fe: " Mauro Carvalho Chehab
2011-12-27  1:08                                                         ` [PATCH RFC 29/91] [media] ec100: " Mauro Carvalho Chehab
2011-12-27  1:08                                                           ` [PATCH RFC 30/91] [media] it913x-fe: " Mauro Carvalho Chehab
2011-12-27  1:08                                                             ` [PATCH RFC 31/91] [media] l64781: " Mauro Carvalho Chehab
2011-12-27  1:08                                                               ` [PATCH RFC 32/91] [media] lgs8gl5: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                 ` [PATCH RFC 33/91] [media] lgdt330x: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                   ` [PATCH RFC 34/91] [media] lgdt3305: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                     ` [PATCH RFC 35/91] [media] lgs8gxx: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                       ` [PATCH RFC 36/91] [media] vez1x93: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                         ` [PATCH RFC 37/91] [media] mb86a16: Add delivery system type at fe struct Mauro Carvalho Chehab
2011-12-27  1:08                                                                           ` [PATCH RFC 38/91] [media] mb86a20s: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                                                             ` [PATCH RFC 39/91] [media] mt352: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                               ` [PATCH RFC 40/91] [media] nxt6000: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                 ` [PATCH RFC 41/91] [media] s5h1432: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                   ` [PATCH RFC 42/91] [media] sp8870: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                     ` [PATCH RFC 43/91] [media] sp887x: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                       ` [PATCH RFC 44/91] [media] stv0367: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                         ` [PATCH RFC 45/91] [media] tda10048: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                           ` [PATCH RFC 46/91] [media] tda1004x: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                             ` [PATCH RFC 47/91] [media] s921: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                               ` [PATCH RFC 48/91] [media] mt312: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                 ` [PATCH RFC 49/91] [media] s5h1420: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                   ` [PATCH RFC 50/91] [media] si21xx: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                     ` [PATCH RFC 51/91] [media] stb0899: convert get_frontend to the new struct Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                       ` [PATCH RFC 52/91] [media] stb6100: use get_frontend, instead of get_frontend_legacy() Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                         ` [PATCH RFC 53/91] [media] stv0288: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                           ` [PATCH RFC 54/91] [media] stv0297: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                             ` [PATCH RFC 55/91] [media] stv0299: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                               ` [PATCH RFC 56/91] [media] stv900: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                 ` [PATCH RFC 57/91] [media] stv090x: use .delsys property, instead of get_property() Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                   ` [PATCH RFC 58/91] [media] tda10021: convert set_fontend to use DVBv5 parameters Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                     ` [PATCH RFC 59/91] [media] tda10023: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                       ` [PATCH RFC 60/91] [media] tda10071: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                         ` [PATCH RFC 61/91] [media] tda10086: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                           ` [PATCH RFC 62/91] [media] nxt200x: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                             ` [PATCH RFC 63/91] [media] or51132: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                               ` [PATCH RFC 64/91] [media] or51211: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                 ` [PATCH RFC 65/91] [media] s5h1409: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                   ` [PATCH RFC 66/91] [media] s55h1411: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                     ` [PATCH RFC 67/91] [media] tda8083: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                       ` [PATCH RFC 68/91] [media] vez1820: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                         ` [PATCH RFC 69/91] [media] staging/as102: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                           ` [PATCH RFC 70/91] [media] dst: " Mauro Carvalho Chehab
2011-12-27  1:08                                                                                                                                             ` [PATCH RFC 71/91] [media] af9005-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                               ` [PATCH RFC 72/91] [media] cinergyT2-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                 ` [PATCH RFC 73/91] [media] dtt200u-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                   ` [PATCH RFC 74/91] [media] friio-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                     ` [PATCH RFC 75/91] [media] gp8psk-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                       ` [PATCH RFC 76/91] [media] mxl111sf-demod: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                         ` [PATCH RFC 77/91] [media] vp702x-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                           ` [PATCH RFC 78/91] [media] vp7045-fe: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                             ` [PATCH RFC 79/91] [media] firedtv: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                               ` [PATCH RFC 80/91] [media] siano: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                 ` [PATCH RFC 81/91] [media] ttusb-dec: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                   ` [PATCH RFC 82/91] [media] tlg2300: " Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                     ` [PATCH RFC 83/91] [media] dvb-core: remove get|set_frontend_legacy Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                       ` [PATCH RFC 84/91] [media] dvb: simplify get_tune_settings() struct Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                         ` [PATCH RFC 85/91] [media] dvb-core: Don't pass DVBv3 parameters on tune() fops Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                           ` [PATCH RFC 86/91] [media] dvb: don't pass a DVBv3 parameter for search() fops Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                             ` [PATCH RFC 87/91] [media] dvb: remove the track() fops Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                               ` [PATCH RFC 88/91] [media] dvb-core: don't use fe_bandwidth_t on driver Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                                 ` [PATCH RFC 89/91] [media] dvb: don't use DVBv3 bandwidth macros Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                                   ` [PATCH RFC 90/91] cx23885-dvb: Remove a dirty hack that would require DVBv3 Mauro Carvalho Chehab
2011-12-27  1:09                                                                                                                                                                                     ` [PATCH RFC 91/91] [media] dvb-core: be sure that drivers won't use DVBv3 internally Mauro Carvalho Chehab
2011-12-27 12:25                                                 ` [PATCH RFC 24/91] [media] em28xx-dvb: don't initialize drx-d non-used fields with zero Andreas Oberritter
2011-12-27 10:28         ` [PATCH RFC 04/91] [media] af9013: convert set_fontend to use DVBv5 parameters Antti Palosaari
2011-12-27 11:58           ` Mauro Carvalho Chehab
2011-12-27 12:21       ` [PATCH RFC 03/91] [media] dvb-core: add support for a DVBv5 get_frontend() callback Andreas Oberritter
2011-12-27 13:49         ` Mauro Carvalho Chehab
2011-12-27 14:47           ` Andreas Oberritter
2011-12-27 17:26             ` Mauro Carvalho Chehab
2011-12-27 20:44               ` Andreas Oberritter
2011-12-27 22:33                 ` Mauro Carvalho Chehab
2011-12-27 20:47               ` Andreas Oberritter
2011-12-27 22:36                 ` Mauro Carvalho Chehab
2011-12-30 14:41                   ` Mauro Carvalho Chehab
2011-12-27 22:43                 ` Mauro Carvalho Chehab
2011-12-27 12:11   ` [PATCH RFC 01/91] [media] dvb-core: allow demods to specify the supported delivery systems supported standards Andreas Oberritter
2011-12-27 13:28     ` Mauro Carvalho Chehab [this message]
2011-12-27 14:33       ` Andreas Oberritter
2011-12-27 17:06         ` Mauro Carvalho Chehab
2011-12-27 17:33           ` Antti Palosaari
2011-12-27 17:46             ` Mauro Carvalho Chehab
2011-12-27 20:37           ` Andreas Oberritter
2011-12-27 22:07             ` Mauro Carvalho Chehab
2012-01-02  6:20           ` Manu Abraham
2011-12-27 12:31 ` [PATCH RFC 00/91] Only use DVBv5 internally on frontend drivers Andreas Oberritter
2011-12-27 13:19   ` Mauro Carvalho Chehab
2011-12-27 13:55     ` Mauro Carvalho Chehab
2011-12-28 15:50 ` e9hack
2011-12-30 13:19   ` Mauro Carvalho Chehab
2011-12-30 17:16     ` e9hack
2011-12-30 17:36       ` Mauro Carvalho Chehab
2011-12-30 17:37       ` [PATCH] [media] tda18271c2dd: fix support for DVB-C Mauro Carvalho Chehab

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=4EF9C7FA.9070203@infradead.org \
    --to=mchehab@infradead.org \
    --cc=linux-media@vger.kernel.org \
    --cc=obi@linuxtv.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 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.