[linux-dvb] basic steps for a new driver?

Patrick Boettcher patrick.boettcher at desy.de
Thu Nov 9 12:50:04 CET 2006


Hi Jose,

The first thing you should consider, before starting a new driver, is to 
identify the used hardware components. There is a big chance, that the 
device is already partially or even completely supported by existing 
drivers and supporting it is just added USB IDs.

Have you opened the box? Can you send the Windows Driver .inf-file? Can 
you do "strings <windows-driver>.sys" and send the output?

regards,
Patrick.

On Thu, 9 Nov 2006, José Oliver Segura wrote:
>      Hi,
> 
>      as nobody answered my email regarding the LiveView TV Walker,
> I'll assume that nobody is interested in it :) Well, I'm am, so I am
> looking for basic steps to develop support for it.
> 
>       I've been looking around the dbv wiki (a lot, believe me), but
> I'v not found any quick-tutorial/basic steps for
> developing/adapting/extending a driver (sorry if that information is
> there, but I've not found it).
> 
>       But, from the information in different pages, I've figured out
> a general approach I'm trying to take in the next days (please, any
> help will  be welcome):
> 
>       1. Get the device working on Windows (it already works)
>       2. Get *lots* of USB-sniffing info for the device
>       3. Analyze *lots* of that information in order to detect and identify:
>               3.1 Control commands send from the windows driver to the device
>               3.2 Responses from the device to the driver
>       4. Try to create a new driver from an existing one, replacing the
>       device-specific messages/behaviour with the one outlined by the
>       usb-sniff
>       analysis
>       5. Compile, insmod, cross my fingers...
> 
>       Is that more or less OK? If so, any hint will be welcome regarding:
> 
>       * The best approach for USB snoop traces generation/analysis.
> Maybe think about possible actions in the windows interface and try to
> get a separated snoop trace of each one of them? (ex. plug-unplug the
> device [don't know if it's possible], scan channels, select a channel,
> ask for the EPG, ask for teletext). That is: for each "action": start
> snooping, perform the action in the windows interface, stop snooping,
> keep log file and analyse it later (I know it's a rough assumption,
> but I guess it should be easier to locate that information in a file
> that reflects "only" one specific action that in a big big file with
> lots of action mixed up together)
> 
>       * What do you think is the best driver to take as a
> basis/template? (emXXX?)
> 
>       * Firmware... uh? I've been that in order to work with some
> devices, it is needed to download some firmware to them. How can I
> know if I need to do it with my device or not? (snooping usb also?)
> 
>       I know this message could contain some "dumb" assumptions /
> questions, but *really*, i'ts been a long time since my last kernel
> development (a dummy device driver, kind of "/proc" filesystem):
> **eleven** years ago (yes, the time from boot/root floppies ;) ), so
> forgive me for any imprecission/assumption/stupid question in the
> whole mail.
> 
>       Best,
>       Jose
> 
> _______________________________________________
> linux-dvb mailing list
> linux-dvb at linuxtv.org
> http://www.linuxtv.org/cgi-bin/mailman/listinfo/linux-dvb
> 


More information about the linux-dvb mailing list