[linux-dvb] DVB-S2 API vs. HVR4000: When?

Manu Abraham abraham.manu at gmail.com
Fri Nov 2 17:41:34 CET 2007


Steven Toth wrote:
> Manu Abraham wrote:
>> Steven Toth wrote:
>>  
>>> Manu Abraham wrote:
>>>    
>>>> Steven Toth wrote:
>>>>
>>>>  
>>>>      
>>>>> The design goals for me are:
>>>>>
>>>>> 1) We stop trying to predict what the API will need in 5 years, and
>>>>> focus on building a very simplistic ioctl API for getting and setting
>>>>> generic frontend properties, it should be basic enough to deal with
>>>>> any
>>>>> new modulation type (or advanced tuner) that we know of today.
>>>>>
>>>>> 2) We change the tuning mechanism from being (mostly) atomic
>>>>> (SET_FRONTEND) to a looser command/sequence definition. (Thereby
>>>>> stepping away from fixed structs that define the ABI). With two new
>>>>> ioctls (get_property/set_property) and a simple property struct which
>>>>> specifies how generic types are passed to/from the kernel.
>>>>>
>>>>> 3) A userland library _may_ offer a number of helper functions to
>>>>> simplify in terms of applications development, turning this:
>>>>>
>>>>>             
>>>> [..]
>>>>
>>>>  
>>>>      
>>>>> command.id = END_TRANSACTION
>>>>> ioctl(SET_PROPERTY, &command);
>>>>>
>>>>> Into a more human readable form like this:
>>>>>
>>>>> int tune_8vsb(frequency);
>>>>>
>>>>>             
>>>> Even before you thought even, we (myself and adq) have had an
>>>> implementation to do this, in kernel it was called "mti" and the
>>>> userspace interface called "libdvbapi". The sample implementation was
>>>> with the stv0299 and the ttpci card. This was more than 18 months
>>>> back. The reason for that cause was another specific
>>>> demodulator.
>>>>
>>>> You can read through the archives, on the same, tuning algorithms and
>>>> so on. In that scenario, we additionally had the tuning algorithm
>>>> in userspace too, simplifying many other things.
>>>>
>>>>
>>>>         
>>> Interesting, I'll dig back and read. Why didn't it gain any traction?
>>>
>>>     
>>
>> It was done around 70%, but then the STB0899 got a higher priority.
>>
>> Markus's userspace approach is also similar, not much different, small
>> differences. ;-)
>>
>> When so much is done, then i would say better it is to move all frontends
>> to userspace as well. but mti/libdvbapi had the best of both the
>> worlds, It was to be working with both in kernel and userspace
>> drivers, quite flexible.
>>
>> The whole thing started of with a small thing, an idea from Johannes
>> about a "simple user space tuning".
>>
>> I had even pointed it to Greg KH when he introduced UIO and eventually
>> it was on LWN as well. probably if you Google you might find the same.
>> Greg was happy to see such things which were completely different.
>>
>> It wasn't that it didn't gain any traction, Ralph at that time advised
>> me to pay more attention to DVB-S2/STB0899.
>>
>>
>>   
> Hmm. This is quite possibly the biggest 'crack in the floor / stuff fell
> through' story that I've heard of in quite a while.
> 

If you have had crack, then you will see cracks everywhere . :)

> I don't understand Ralph's involvement in your Linux projects, and why
> the alternative direction mattered to him.
> 

If you see the initial proposal, there were so many people involved, Ralph too,
he used to hang out on IRC along with us. Please see the original post when 
the STB0899 driver was made public.

There were reasons why it mattered to him. He was also involved in an
STB0899 based project, which he can disclose if he is interested.

Manu



More information about the linux-dvb mailing list