* [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
@ 2008-03-01 16:14 Florian Lohoff
2008-03-02 22:43 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-01 16:14 UTC (permalink / raw)
To: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 1118 bytes --]
Hi,
i was wondering why i have a problem in my application that i need to
run scan once after loading the module, otherwise my DVBFE_SET_PARAMS
fails - I couldnt explain it until i looked into the kernel code - In
the dvb_frontend.c i see this code:
1738 case DVBFE_SET_PARAMS: {
1739 struct dvb_frontend_tune_settings fetunesettings;
1740 enum dvbfe_delsys delsys = fepriv->fe_info.delivery;
...
1783 } else {
1784 /* default values */
1785 switch (fepriv->fe_info.delivery) {
...
1817 default:
1818 up(&fepriv->sem);
1819 return -EINVAL;
1820 }
Should the code use fepriv->feparam.delivery instead of
fepriv->fe_info.delivery to sense the right delivery system ?
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-01 16:14 [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ? Florian Lohoff
@ 2008-03-02 22:43 ` Manu Abraham
2008-03-02 23:36 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-02 22:43 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> Hi,
> i was wondering why i have a problem in my application that i need to
> run scan once after loading the module, otherwise my DVBFE_SET_PARAMS
> fails - I couldnt explain it until i looked into the kernel code - In
> the dvb_frontend.c i see this code:
>
> 1738 case DVBFE_SET_PARAMS: {
> 1739 struct dvb_frontend_tune_settings fetunesettings;
> 1740 enum dvbfe_delsys delsys = fepriv->fe_info.delivery;
> ...
> 1783 } else {
> 1784 /* default values */
> 1785 switch (fepriv->fe_info.delivery) {
> ...
> 1817 default:
> 1818 up(&fepriv->sem);
> 1819 return -EINVAL;
> 1820 }
>
> Should the code use fepriv->feparam.delivery instead of
> fepriv->fe_info.delivery to sense the right delivery system ?
Which demodulator driver are you using to test your application ?
Though a bug, but that won't make any difference to what you are looking at,
since the delay and others are used in the case of swzigzag, which
doesn't exist
at least for the existing demods using the track() callback at all.
This would be a fix for any demod drivers using the set_params() callback.
Regards,
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-02 22:43 ` Manu Abraham
@ 2008-03-02 23:36 ` Florian Lohoff
2008-03-03 0:22 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-02 23:36 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 3792 bytes --]
Hi,
On Mon, Mar 03, 2008 at 02:43:33AM +0400, Manu Abraham wrote:
> Florian Lohoff wrote:
> >Hi,
> >i was wondering why i have a problem in my application that i need to
> >run scan once after loading the module, otherwise my DVBFE_SET_PARAMS
> >fails - I couldnt explain it until i looked into the kernel code - In
> >the dvb_frontend.c i see this code:
> >
> >1738 case DVBFE_SET_PARAMS: {
> >1739 struct dvb_frontend_tune_settings fetunesettings;
> >1740 enum dvbfe_delsys delsys = fepriv->fe_info.delivery;
> >...
> >1783 } else {
> >1784 /* default values */
> >1785 switch (fepriv->fe_info.delivery) {
> >...
> >1817 default:
> >1818 up(&fepriv->sem);
> >1819 return -EINVAL;
> >1820 }
> >
> >Should the code use fepriv->feparam.delivery instead of
> >fepriv->fe_info.delivery to sense the right delivery system ?
>
> Which demodulator driver are you using to test your application ?
STB0899 on a SkyStar HD - Using DVB-S2 on Astra
> Though a bug, but that won't make any difference to what you are looking at,
> since the delay and others are used in the case of swzigzag, which
> doesn't exist
> at least for the existing demods using the track() callback at all.
The problem i see and some people off list already acknowledged is that
the DVBFE_GET_INFO actually _SETS_ informations in the kernel about the
delivery system which gets even cached across frontend opens. This is
why my application, which did not issue a GET_INFO but rather set the
delivery system in the dvbfeparam, failed. The delivery in the
dvbfeparam in the DVBFE_SET_PARAM ioctl gets ignored. When running scan
once after loading the module the delivery system gets set and suddenly
my little app works, but only for the frontend/delivery type i pressed
ctrl-c on running scan, and until i reload the module.
I changed the kernel dvb_frontend.c to actually use the dvbfeparam
delivery system type but then the demod driver stb0899 pukes into my
kernel log that it finds an unknown delivery system because it makes the very
same assumption that it should use the delivery from GET_INFO and not
SET_PARAM ...
stb0899_drv.c:
1406 static int stb0899_get_info(struct dvb_frontend *fe, struct dvbfe_info *fe_info)
1407 {
1408 struct stb0899_state *state = fe->demodulator_priv;
1409
1410 dprintk(verbose, FE_DEBUG, 1, "Get Info");
1411
1412 state->delsys = fe_info->delivery;
1413 switch (state->delsys) {
Line 1412 caches informations in the frontend demod without purpose - Get info is just
that and not some state altering ioctl ...
> This would be a fix for any demod drivers using the set_params() callback.
Yep - something should be fixed - currently its a little inconsistent:
- A GET or READ call should never ever alter state - otherwise it should be named
different. Its the same with read/write, peek/poke, load/store set/get.
Just because i ask about informations concerning the DVB-S frontend does
not mean that i will not start DVB-S2 or DSS.
- If DVBFE_SET_PARAM passes a struct which contains a delivery system it
should either be honored or not even be there. On a SET call with a struct
every application writers assumption is that the values in the struct passed
actually get honored.
And this MUST be coherent for all demods.
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-02 23:36 ` Florian Lohoff
@ 2008-03-03 0:22 ` Manu Abraham
2008-03-03 8:52 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 0:22 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> Hi,
>
> This is
> why my application, which did not issue a GET_INFO but rather set the
> delivery system in the dvbfeparam, failed. The delivery in the
..
>
> - A GET or READ call should never ever alter state - otherwise it should be named
> different. Its the same with read/write, peek/poke, load/store set/get.
> Just because i ask about informations concerning the DVB-S frontend does
> not mean that i will not start DVB-S2 or DSS.
This won't work. params will contain data only after you have
successfully issued
SET_PARAMS not before. For SET_PARAMS to work, you need the delivery system
cached for the operation.
Do you see the same bug with szap too ?
(http://abraham.manu.googlepages.com/szap.c)
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 0:22 ` Manu Abraham
@ 2008-03-03 8:52 ` Florian Lohoff
2008-03-03 11:09 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 8:52 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 1431 bytes --]
On Mon, Mar 03, 2008 at 04:22:00AM +0400, Manu Abraham wrote:
> This won't work. params will contain data only after you have
> successfully issued
> SET_PARAMS not before. For SET_PARAMS to work, you need the delivery system
> cached for the operation.
As i already wrote - SET_PARAMS is _NOT_ enough. Please try yourself.
Unload/Load the module and simple issue a DVBFE_SET_PARAMS (NOT
GET_INFO) and it doesnt tune/lock at least for STB0899 and it also
complains in the dmesg with:
stb0899_search: Unsupported delivery system 0
stb0899_read_status: Unsupported delivery system 0
stb0899_search: Unsupported delivery system 0
stb0899_read_status: Unsupported delivery system 0
stb0899_search: Unsupported delivery system 0
stb0899_read_status: Unsupported delivery system 0
although i set
dvbfe_params.delivery=DVBFE_DELSYS_DVBS2;
> Do you see the same bug with szap too ?
> (http://abraham.manu.googlepages.com/szap.c)
Its not a bug in szap - its a bug in the API - There is a delivery in
the dvbfe_param and i set it correctly - and it gets ignored. Running
zap before running my program causes it to work because zap runs
an GET_INFO ioctl which _SETS_ a delivery mode.
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 8:52 ` Florian Lohoff
@ 2008-03-03 11:09 ` Manu Abraham
2008-03-03 11:26 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 11:09 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 04:22:00AM +0400, Manu Abraham wrote:
>> This won't work. params will contain data only after you have
>> successfully issued
>> SET_PARAMS not before. For SET_PARAMS to work, you need the delivery system
>> cached for the operation.
>
> As i already wrote - SET_PARAMS is _NOT_ enough. Please try yourself.
> Unload/Load the module and simple issue a DVBFE_SET_PARAMS (NOT
> GET_INFO) and it doesnt tune/lock at least for STB0899 and it also
> complains in the dmesg with:
>
> stb0899_search: Unsupported delivery system 0
> stb0899_read_status: Unsupported delivery system 0
> stb0899_search: Unsupported delivery system 0
> stb0899_read_status: Unsupported delivery system 0
> stb0899_search: Unsupported delivery system 0
> stb0899_read_status: Unsupported delivery system 0
>
> although i set
>
> dvbfe_params.delivery=DVBFE_DELSYS_DVBS2;
Yep, it isn't supposed to work that way with simply issuing SET_PARAMS.
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 11:09 ` Manu Abraham
@ 2008-03-03 11:26 ` Florian Lohoff
2008-03-03 12:03 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 11:26 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 1486 bytes --]
On Mon, Mar 03, 2008 at 03:09:23PM +0400, Manu Abraham wrote:
> >As i already wrote - SET_PARAMS is _NOT_ enough. Please try yourself.
> >Unload/Load the module and simple issue a DVBFE_SET_PARAMS (NOT
> >GET_INFO) and it doesnt tune/lock at least for STB0899 and it also
> >complains in the dmesg with:
> >
> > stb0899_search: Unsupported delivery system 0
> > stb0899_read_status: Unsupported delivery system 0
> > stb0899_search: Unsupported delivery system 0
> > stb0899_read_status: Unsupported delivery system 0
> > stb0899_search: Unsupported delivery system 0
> > stb0899_read_status: Unsupported delivery system 0
> >
> >although i set
> >
> > dvbfe_params.delivery=DVBFE_DELSYS_DVBS2;
>
> Yep, it isn't supposed to work that way with simply issuing SET_PARAMS.
Okay - So either
- remove the "delivery" in the dvbfe_params because it is unnecessary,
confusing and broken, and rename the GET_INFO call to SET_DELIVERY
or something which implies that its not a _GET_ call
or
- make SET_PARAMS the call to honor delivery in dvbfe_params and remove
the setting of the delivery of GET_INFO
I'd prefere the 2nd option because currently the usage and naming
is an incoherent mess which should better not get more adopters ..
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 11:26 ` Florian Lohoff
@ 2008-03-03 12:03 ` Manu Abraham
2008-03-03 13:21 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 12:03 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 03:09:23PM +0400, Manu Abraham wrote:
>>> As i already wrote - SET_PARAMS is _NOT_ enough. Please try yourself.
>>> Unload/Load the module and simple issue a DVBFE_SET_PARAMS (NOT
>>> GET_INFO) and it doesnt tune/lock at least for STB0899 and it also
>>> complains in the dmesg with:
>>>
>>> stb0899_search: Unsupported delivery system 0
>>> stb0899_read_status: Unsupported delivery system 0
>>> stb0899_search: Unsupported delivery system 0
>>> stb0899_read_status: Unsupported delivery system 0
>>> stb0899_search: Unsupported delivery system 0
>>> stb0899_read_status: Unsupported delivery system 0
>>>
>>> although i set
>>>
>>> dvbfe_params.delivery=DVBFE_DELSYS_DVBS2;
>> Yep, it isn't supposed to work that way with simply issuing SET_PARAMS.
>
> Okay - So either
>
> - remove the "delivery" in the dvbfe_params because it is unnecessary,
> confusing and broken, and rename the GET_INFO call to SET_DELIVERY
> or something which implies that its not a _GET_ call
As you can see, removing delivery is not an option, since GET_PARAMS
operates
on the same data structure. Removal of which will require the application to
issue an additional ioctl call.
> or
>
> - make SET_PARAMS the call to honor delivery in dvbfe_params and remove
> the setting of the delivery of GET_INFO
>
> I'd prefere the 2nd option because currently the usage and naming
> is an incoherent mess which should better not get more adopters ..
Your 2nd option won't work at all. It is completely broken when you have
to query statistics, before a SET_PARAMS.
Additionally, this was quite discussed in a long discussion a while
back. You
might like to read through those as well.
Maybe DVBFE_GET_INFO can probably be renamed to DVBFE_INFO if it really
itches so much.
HTH,
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 12:03 ` Manu Abraham
@ 2008-03-03 13:21 ` Florian Lohoff
2008-03-03 13:41 ` Manu Abraham
2008-03-03 21:13 ` Christoph Pfister
0 siblings, 2 replies; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 13:21 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 2455 bytes --]
On Mon, Mar 03, 2008 at 04:03:09PM +0400, Manu Abraham wrote:
> >- make SET_PARAMS the call to honor delivery in dvbfe_params and remove
> > the setting of the delivery of GET_INFO
> >
> >I'd prefere the 2nd option because currently the usage and naming
> >is an incoherent mess which should better not get more adopters ..
>
> Your 2nd option won't work at all. It is completely broken when you have
> to query statistics, before a SET_PARAMS.
I have no problem with beeing able to query stats - I have a problem
that a GET call changes in kernel state, and the SET calls options get
ignored where it should be the other way round.
Probably you can tell me the reason the delivery option in the
dvbfe_params gets ignored on a DVBFE_SET_PARAMS ? I dont see the
rational behind this... The option is there - correctly filled and
gets ignored or better overriden by previous ioctls - Every other
parameter for the delivery mode is in that struct.
Please tell me why the GET_INFO delsys/delivery option gets set as the next
to use delivery mode. Even if i want to have stats just dont fill them
when the delsys does not match the currently set delsys as that would
be the right thing - Querying DVB-S2 stats when tuned to DVB-S should
return nothing as there are no stats - but setting the delsys to DVB-S
is BROKEN as i asked for stats not to change the delsys.
> Additionally, this was quite discussed in a long discussion a while
> back. You might like to read through those as well.
I did partially of it ... and i found the same corners of this API to be
broken by design.
> Maybe DVBFE_GET_INFO can probably be renamed to DVBFE_INFO if it really
> itches so much.
No - its much more fundamental problem ... Options belonging
together are passed in seperate ioctls in non obvious (read: strange)
ways into the kernel (delivery system via GET_INFO and delivery options
via SET_PARAMS).
Options which are together in the same struct are not used together e.g.
delivery mode and parameters are in the same struct which get passed by
an ioctl but get partially ignored or better overridden by previous
ioctls in non obvious ways...
As i said - incoherent mess from the user api ...
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:21 ` Florian Lohoff
@ 2008-03-03 13:41 ` Manu Abraham
2008-03-03 13:44 ` Florian Lohoff
2008-03-03 13:49 ` Manu Abraham
2008-03-03 21:13 ` Christoph Pfister
1 sibling, 2 replies; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 13:41 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 04:03:09PM +0400, Manu Abraham wrote:
>>> - make SET_PARAMS the call to honor delivery in dvbfe_params and remove
>>> the setting of the delivery of GET_INFO
>>>
>>> I'd prefere the 2nd option because currently the usage and naming
>>> is an incoherent mess which should better not get more adopters ..
>> Your 2nd option won't work at all. It is completely broken when you have
>> to query statistics, before a SET_PARAMS.
>
> I have no problem with beeing able to query stats - I have a problem
You are wrong again. Please look at the code, how statistics related
operations are retrieved.
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:41 ` Manu Abraham
@ 2008-03-03 13:44 ` Florian Lohoff
2008-03-03 13:55 ` Manu Abraham
2008-03-03 13:49 ` Manu Abraham
1 sibling, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 13:44 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 783 bytes --]
On Mon, Mar 03, 2008 at 05:41:17PM +0400, Manu Abraham wrote:
> You are wrong again. Please look at the code, how statistics related
> operations are retrieved.
When i issue a DVBFE_GET_INFO i dont get stats i get informations
about the delivery system - a better name would be GET_CAPABILITY.
In the demod (e.g. STB0899) its a simply memcpy of a predefined
capabily struct - So why on earth does it set/change the in kernel
delivery system ?!?!
You are still not answering the rational behind ignoring the delivery
system in dvbfe_params/DVBFE_SET_PARAMS.
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:49 ` Manu Abraham
@ 2008-03-03 13:48 ` Florian Lohoff
2008-03-03 14:04 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 13:48 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 1166 bytes --]
On Mon, Mar 03, 2008 at 05:49:53PM +0400, Manu Abraham wrote:
> Basically you seem to get the wrong end, (it's one whole line, no corners
> to it) since you think that it all starts with a tune operation. No, a tune
> operation is not the first operation that's to be done in many cases.
A tune operation might not be the first thing to do in a GUI based
operation where the user gets presented with a little capability show
and clickable channel lists etc ...
But there are application which simple want to tune with a user
defined configuration and simply want to tune or to get an error
and let the user sort it out. I dont care about the capabilities
of a frontend or stats - i want to tune - And when i open the
frontend and issue an ioctl which passes a struct with ALL INFORMATIONS
NECESSARY TO TUNE i expect it to do exactly that - to tune and not
to bail out with an error because i didnt ask for capabilites via
GET_INFO ...
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:41 ` Manu Abraham
2008-03-03 13:44 ` Florian Lohoff
@ 2008-03-03 13:49 ` Manu Abraham
2008-03-03 13:48 ` Florian Lohoff
1 sibling, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 13:49 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Manu Abraham wrote:
> Florian Lohoff wrote:
>> On Mon, Mar 03, 2008 at 04:03:09PM +0400, Manu Abraham wrote:
>>>> - make SET_PARAMS the call to honor delivery in dvbfe_params and remove
>>>> the setting of the delivery of GET_INFO
>>>>
>>>> I'd prefere the 2nd option because currently the usage and naming
>>>> is an incoherent mess which should better not get more adopters ..
>>> Your 2nd option won't work at all. It is completely broken when you have
>>> to query statistics, before a SET_PARAMS.
>> I have no problem with beeing able to query stats - I have a problem
>
> You are wrong again. Please look at the code, how statistics related
> operations are retrieved.
Basically you seem to get the wrong end, (it's one whole line, no corners
to it) since you think that it all starts with a tune operation. No, a tune
operation is not the first operation that's to be done in many cases.
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:44 ` Florian Lohoff
@ 2008-03-03 13:55 ` Manu Abraham
2008-03-03 14:00 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 13:55 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 05:41:17PM +0400, Manu Abraham wrote:
>> You are wrong again. Please look at the code, how statistics related
>> operations are retrieved.
>
> When i issue a DVBFE_GET_INFO i dont get stats i get informations
> about the delivery system - a better name would be GET_CAPABILITY.
> In the demod (e.g. STB0899) its a simply memcpy of a predefined
> capabily struct - So why on earth does it set/change the in kernel
> delivery system ?!?!
>
> You are still not answering the rational behind ignoring the delivery
> system in dvbfe_params/DVBFE_SET_PARAMS.
I already mentioned this in my previous email. Please read the previous
mails
and or the old discussions.
From my previous email:
Your 2nd option won't work at all. It is completely broken when you have
to query statistics, before a SET_PARAMS.
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:55 ` Manu Abraham
@ 2008-03-03 14:00 ` Florian Lohoff
0 siblings, 0 replies; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 14:00 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 958 bytes --]
On Mon, Mar 03, 2008 at 05:55:48PM +0400, Manu Abraham wrote:
> I already mentioned this in my previous email. Please read the previous
> mails and or the old discussions.
Would you point the mail to me where you did - I cant find any - You
said that for GET_PARAMS you need the space to store it. I ask you to
point out why the kernel code decides to ignore it on SET_PARAMS.
> Your 2nd option won't work at all. It is completely broken when you have
> to query statistics, before a SET_PARAMS.
What statistics can i possibly ask for when i didnt set any parameters?
Why not return EAGAIN if i ask for stats which are not there - that
would be a sane way to respond to it instead of garbling the tuner state
on a GET_INFO ...
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 14:04 ` Manu Abraham
@ 2008-03-03 14:03 ` Florian Lohoff
2008-03-03 14:17 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 14:03 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 941 bytes --]
On Mon, Mar 03, 2008 at 06:04:12PM +0400, Manu Abraham wrote:
> The more important part is to first check for a signal, before
> attempting a tune.
> Lack of doing so, will result in a lot of frustration in many cases.
> Though it is completely upto oneself whether to do it or not.
You mean tune and then check if there is a SIGNAL and possibly a LOCK? I
do that yes ... But first comes the tune - On an uninitialized state of
a demod/tuner i would not expect to see any signal.
Before powering up the radio you cant know whether they play your song
on your favorit radio station.
> The whole point is: there are 2 or more paths, which need to be selected
> for any operation.
You are referring to what?
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:48 ` Florian Lohoff
@ 2008-03-03 14:04 ` Manu Abraham
2008-03-03 14:03 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 14:04 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 05:49:53PM +0400, Manu Abraham wrote:
>> Basically you seem to get the wrong end, (it's one whole line, no corners
>> to it) since you think that it all starts with a tune operation. No, a tune
>> operation is not the first operation that's to be done in many cases.
>
> A tune operation might not be the first thing to do in a GUI based
> operation where the user gets presented with a little capability show
> and clickable channel lists etc ...
The more important part is to first check for a signal, before
attempting a tune.
Lack of doing so, will result in a lot of frustration in many cases.
Though it is
completely upto oneself whether to do it or not.
The whole point is: there are 2 or more paths, which need to be selected
for any
operation.
HTH,
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 14:17 ` Manu Abraham
@ 2008-03-03 14:13 ` Florian Lohoff
2008-03-03 14:24 ` Manu Abraham
0 siblings, 1 reply; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 14:13 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 796 bytes --]
On Mon, Mar 03, 2008 at 06:17:58PM +0400, Manu Abraham wrote:
> >You mean tune and then check if there is a SIGNAL and possibly a LOCK? I
> >do that yes ... But first comes the tune - On an uninitialized state of
> >a demod/tuner i would not expect to see any signal.
>
> How do you expect to look for a signal level when using a rotor, for a
> real life example ?
In case of a rotor i expect the diseq commands to go out - tune the
frontend for the right modulation and frequency and then monitor the
signal level while turning the dish.
This needs tuning - right ?
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 14:03 ` Florian Lohoff
@ 2008-03-03 14:17 ` Manu Abraham
2008-03-03 14:13 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 14:17 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 06:04:12PM +0400, Manu Abraham wrote:
>> The more important part is to first check for a signal, before
>> attempting a tune.
>> Lack of doing so, will result in a lot of frustration in many cases.
>> Though it is completely upto oneself whether to do it or not.
>
> You mean tune and then check if there is a SIGNAL and possibly a LOCK? I
> do that yes ... But first comes the tune - On an uninitialized state of
> a demod/tuner i would not expect to see any signal.
How do you expect to look for a signal level when using a rotor, for a
real life
example ?
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 14:24 ` Manu Abraham
@ 2008-03-03 14:23 ` Florian Lohoff
0 siblings, 0 replies; 23+ messages in thread
From: Florian Lohoff @ 2008-03-03 14:23 UTC (permalink / raw)
To: Manu Abraham; +Cc: linux-dvb
[-- Attachment #1.1: Type: text/plain, Size: 1294 bytes --]
On Mon, Mar 03, 2008 at 06:24:50PM +0400, Manu Abraham wrote:
> >On Mon, Mar 03, 2008 at 06:17:58PM +0400, Manu Abraham wrote:
> >>>You mean tune and then check if there is a SIGNAL and possibly a LOCK? I
> >>>do that yes ... But first comes the tune - On an uninitialized state of
> >>>a demod/tuner i would not expect to see any signal.
> >>How do you expect to look for a signal level when using a rotor, for a
> >>real life example ?
> >
> >In case of a rotor i expect the diseq commands to go out - tune the
> >frontend for the right modulation and frequency and then monitor the
> >signal level while turning the dish.
> >
> >This needs tuning - right ?
>
> No, this is fed from the AGC1 path1 integrator and the AGC1 path2
> integrator.
Okay - you say turning the dish does not need tuning - so i issue
the DISEQ ioctls and start reading the signal level - whats the point
and what is this an argument for?
- How can this excuse ignoring the delivery in the DVBFE_SET_PARAMS?
- How can this justify setting the delivery system in DVBFE_GET_INFO ?
Flo
--
Florian Lohoff flo@rfc822.org +49-171-2280134
Those who would give up a little freedom to get a little
security shall soon have neither - Benjamin Franklin
[-- Attachment #1.2: Digital signature --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
[-- Attachment #2: Type: text/plain, Size: 150 bytes --]
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 14:13 ` Florian Lohoff
@ 2008-03-03 14:24 ` Manu Abraham
2008-03-03 14:23 ` Florian Lohoff
0 siblings, 1 reply; 23+ messages in thread
From: Manu Abraham @ 2008-03-03 14:24 UTC (permalink / raw)
To: Florian Lohoff; +Cc: linux-dvb
Florian Lohoff wrote:
> On Mon, Mar 03, 2008 at 06:17:58PM +0400, Manu Abraham wrote:
>>> You mean tune and then check if there is a SIGNAL and possibly a LOCK? I
>>> do that yes ... But first comes the tune - On an uninitialized state of
>>> a demod/tuner i would not expect to see any signal.
>> How do you expect to look for a signal level when using a rotor, for a
>> real life example ?
>
> In case of a rotor i expect the diseq commands to go out - tune the
> frontend for the right modulation and frequency and then monitor the
> signal level while turning the dish.
>
> This needs tuning - right ?
No, this is fed from the AGC1 path1 integrator and the AGC1 path2
integrator.
Manu
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 13:21 ` Florian Lohoff
2008-03-03 13:41 ` Manu Abraham
@ 2008-03-03 21:13 ` Christoph Pfister
2008-03-04 0:52 ` hermann pitton
1 sibling, 1 reply; 23+ messages in thread
From: Christoph Pfister @ 2008-03-03 21:13 UTC (permalink / raw)
To: linux-dvb; +Cc: Manu Abraham
Am Montag 03 März 2008 schrieb Florian Lohoff:
<snip>
> I have no problem with beeing able to query stats - I have a problem
> that a GET call changes in kernel state, and the SET calls options get
> ignored where it should be the other way round.
>
> Probably you can tell me the reason the delivery option in the
> dvbfe_params gets ignored on a DVBFE_SET_PARAMS ? I dont see the
> rational behind this... The option is there - correctly filled and
> gets ignored or better overriden by previous ioctls - Every other
> parameter for the delivery mode is in that struct.
>
> Please tell me why the GET_INFO delsys/delivery option gets set as the next
> to use delivery mode. Even if i want to have stats just dont fill them
> when the delsys does not match the currently set delsys as that would
> be the right thing - Querying DVB-S2 stats when tuned to DVB-S should
> return nothing as there are no stats - but setting the delsys to DVB-S
> is BROKEN as i asked for stats not to change the delsys.
>
> > Additionally, this was quite discussed in a long discussion a while
> > back. You might like to read through those as well.
>
> I did partially of it ... and i found the same corners of this API to be
> broken by design.
>
> > Maybe DVBFE_GET_INFO can probably be renamed to DVBFE_INFO if it really
> > itches so much.
>
> No - its much more fundamental problem ... Options belonging
> together are passed in seperate ioctls in non obvious (read: strange)
> ways into the kernel (delivery system via GET_INFO and delivery options
> via SET_PARAMS).
>
> Options which are together in the same struct are not used together e.g.
> delivery mode and parameters are in the same struct which get passed by
> an ioctl but get partially ignored or better overridden by previous
> ioctls in non obvious ways...
>
> As i said - incoherent mess from the user api ...
+1
> Flo
Christoph
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
* Re: [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ?
2008-03-03 21:13 ` Christoph Pfister
@ 2008-03-04 0:52 ` hermann pitton
0 siblings, 0 replies; 23+ messages in thread
From: hermann pitton @ 2008-03-04 0:52 UTC (permalink / raw)
To: Christoph Pfister; +Cc: linux-dvb, Manu Abraham
Am Montag, den 03.03.2008, 22:13 +0100 schrieb Christoph Pfister:
> Am Montag 03 März 2008 schrieb Florian Lohoff:
> <snip>
> > I have no problem with beeing able to query stats - I have a problem
> > that a GET call changes in kernel state, and the SET calls options get
> > ignored where it should be the other way round.
> >
> > Probably you can tell me the reason the delivery option in the
> > dvbfe_params gets ignored on a DVBFE_SET_PARAMS ? I dont see the
> > rational behind this... The option is there - correctly filled and
> > gets ignored or better overriden by previous ioctls - Every other
> > parameter for the delivery mode is in that struct.
> >
> > Please tell me why the GET_INFO delsys/delivery option gets set as the next
> > to use delivery mode. Even if i want to have stats just dont fill them
> > when the delsys does not match the currently set delsys as that would
> > be the right thing - Querying DVB-S2 stats when tuned to DVB-S should
> > return nothing as there are no stats - but setting the delsys to DVB-S
> > is BROKEN as i asked for stats not to change the delsys.
> >
> > > Additionally, this was quite discussed in a long discussion a while
> > > back. You might like to read through those as well.
> >
> > I did partially of it ... and i found the same corners of this API to be
> > broken by design.
> >
> > > Maybe DVBFE_GET_INFO can probably be renamed to DVBFE_INFO if it really
> > > itches so much.
> >
> > No - its much more fundamental problem ... Options belonging
> > together are passed in seperate ioctls in non obvious (read: strange)
> > ways into the kernel (delivery system via GET_INFO and delivery options
> > via SET_PARAMS).
> >
> > Options which are together in the same struct are not used together e.g.
> > delivery mode and parameters are in the same struct which get passed by
> > an ioctl but get partially ignored or better overridden by previous
> > ioctls in non obvious ways...
> >
> > As i said - incoherent mess from the user api ...
>
> +1
>
> > Flo
>
> Christoph
>
I can't let it, something totally OT ...
The "AIRBUS" claimed nearly crashed in Hamburg recently,
during EMMA, was in totally normal flight operation.
At least the pilots don't have any guilt.
The reason for it was, some might think it is not normal, that the
expense per lost passenger is restricted to some 14000 old german marks,
IIRC:)
Cheers,
Hermann
_______________________________________________
linux-dvb mailing list
linux-dvb@linuxtv.org
http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
^ permalink raw reply [flat|nested] 23+ messages in thread
end of thread, other threads:[~2008-03-04 1:01 UTC | newest]
Thread overview: 23+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-03-01 16:14 [linux-dvb] DVBFE_SET_PARAMS / delsys from fe_info ioctl ? Florian Lohoff
2008-03-02 22:43 ` Manu Abraham
2008-03-02 23:36 ` Florian Lohoff
2008-03-03 0:22 ` Manu Abraham
2008-03-03 8:52 ` Florian Lohoff
2008-03-03 11:09 ` Manu Abraham
2008-03-03 11:26 ` Florian Lohoff
2008-03-03 12:03 ` Manu Abraham
2008-03-03 13:21 ` Florian Lohoff
2008-03-03 13:41 ` Manu Abraham
2008-03-03 13:44 ` Florian Lohoff
2008-03-03 13:55 ` Manu Abraham
2008-03-03 14:00 ` Florian Lohoff
2008-03-03 13:49 ` Manu Abraham
2008-03-03 13:48 ` Florian Lohoff
2008-03-03 14:04 ` Manu Abraham
2008-03-03 14:03 ` Florian Lohoff
2008-03-03 14:17 ` Manu Abraham
2008-03-03 14:13 ` Florian Lohoff
2008-03-03 14:24 ` Manu Abraham
2008-03-03 14:23 ` Florian Lohoff
2008-03-03 21:13 ` Christoph Pfister
2008-03-04 0:52 ` hermann pitton
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox