[linux-dvb] basic steps for a new driver?
Chun Chung Lo
cclo at astri.org
Thu Nov 9 13:13:09 CET 2006
I have recently ported (or you can say built a new) a DVB-T driver for my company's STB projects. Firstly, I also confused where should I get start.
But since I know the actual hardware configuration of my system, and finally I found that there already exists codes for my hardware configuration. Of course, lots of modifications is made finally (since my driver is dedicated to the specific applications developed internally).
Also, the driver codes, if for some new hardwares, may not exists in the release which can be downloaded from http://linuxtv.org (at least I cannot find, correct me if I am wrong), so be careful. These new hardware support may exists in the pre-release linux kernel (http://www.kernel.org)
Lo Chun Chung
ECE-DHT at ASTRI.
From: linux-dvb-bounces at linuxtv.org [mailto:linux-dvb-bounces at linuxtv.org] On Behalf Of Patrick Boettcher
Sent: Thursday, 09 November, 2006 7:50 PM
To: José Oliver Segura
Cc: linux-dvb at linuxtv.org
Subject: Re: [linux-dvb] basic steps for a new driver?
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?
On Thu, 9 Nov 2006, José Oliver Segura wrote:
> 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
> 5. Compile, insmod, cross my fingers...
> Is that more or less OK? If so, any hint will be welcome
> * 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.
> linux-dvb mailing list
> linux-dvb at linuxtv.org
This message (including any attachments) is for the named addressee(s)'s use only. It may contain
sensitive, confidential, private proprietary or legally privileged information intended for a
specific individual and purpose, and is protected by law. If you are not the intended recipient,
please immediately delete it and all copies of it from your system, destroy any hard copies of it
and notify the sender. Any use, disclosure, copying, or distribution of this message and/or any
attachments is strictly prohibited.
More information about the linux-dvb