<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
  <meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Darron Broad schreef:
<blockquote cite="mid:18991.1226167267@kewl.org" type="cite">
  <pre wrap="">In message <a class="moz-txt-link-rfc2396E" href="mailto:4915C608.9000709@verbraak.org">&lt;4915C608.9000709@verbraak.org&gt;</a>, Michel Verbraak wrote:

LO

  </pre>
  <blockquote type="cite">
    <pre wrap="">I'm trying to modify one of my applications to use the new S2API. With 
this application I control my dvb-t and dvb-s/s2 receivers.

I'm using szap-s2 as an example but I run into a problem that the ioctl 
FE_SET_PROPERTY always returns -1 and variable errno is set to 14.

My question is. How do I determine which of the commands in the command 
queue given to FE_SET_PROPERTY is producing this error. I did not try 
yet to devide my command queue up into one command queue per command.
    </pre>
  </blockquote>
  <pre wrap=""><!---->
The only commands as such as CLEAR and TUNE, the rest are tuning
parameters. The way this works is that the TUNE command informs
the kernel to retune using the parameters specified. This occurs
outside of the IOCTL call itself and you don't directly know
if a paramater was wrong, it just doesn't work.

The error you have:
  </pre>
  <blockquote type="cite">
    <pre wrap="">grep 14 /usr/include/asm-generic/errno-base.h
    </pre>
  </blockquote>
  <pre wrap=""><!---->#define EFAULT          14      /* Bad address */

Suggests a problem in your code...

  </pre>
  <blockquote type="cite">
    <pre wrap="">Regards,

Michel.

Part of source code for dvb-s/s2:

#ifdef S2API
int TDVBDevice::SetProperty(struct dtv_property *cmdseq)
    </pre>
  </blockquote>
  <pre wrap=""><!---->
This should something like SetProperties(struct dtv_properties cmdseq[])
and then call ioctl(fefd, FE_SET_PROPERTY, cmdseq)
This sends of your args at the same time.

  </pre>
  <blockquote type="cite">
    <pre wrap="">     if (SetProperty(&amp;p[0]) == 0)
    </pre>
  </blockquote>
  <pre wrap=""><!---->
That needs to be more like:
        SetProperties(&amp;cmdseq)

I hope that helps.

cya!

--

 // /
{:)==={ Darron Broad <a class="moz-txt-link-rfc2396E" href="mailto:darron@kewl.org">&lt;darron@kewl.org&gt;</a>
 \\ \ 

  </pre>
</blockquote>
<br>
Darron,<br>
<br>
You were right. The error I had to solve was to change
SetProperty(&amp;p[0]) into SetProperty(&amp;cmdseq).<br>
<br>
I have been coding all day and missed this one.<br>
<br>
Thanks,<br>
<br>
Michel.<br>
</body>
</html>