Mailing List archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[linux-dvb] Re: driver question (after reading some specs)



Patrick,

As Wolfgang says, this might be too big a project for you right now, but I'd
also like to encourage you to continue.

I don't really think I understand your questions but take a look at an
existing usb driver here:

http://linuxtv.org/cgi-bin/cvsweb.cgi/dvb-kernel/linux/drivers/media/dvb/ttu
sb-budget/dvb-ttusb-budget.c?rev=1.27&content-type=text/plain

The data is taken from the USB transport stream and pushed into the kernel
demux via the following functions:

ttusb_iso_irq() -> ttusb_process_frame() -> ttusb_process_muxpack() ->
dvb_dmx_swfilter_packets()

... where dvb_dmx_swfilter_packets is pushing the actual full 188 byte
transport packets into the kernel demuxer.

Make sense?

This driver looks like a sensible framework for any USB dvb driver. It
demonstrates the usb and dev adapter registration and callback mechanisms,
the userspace<->kernel ioctls for controlling/tuning the device, the
creation of USB requests to the device, the reception of frames from the
device (ttusb_iso_irq) and the four functions above show how the data is
processed/buffered prior to it finally being pushed into the kernel for
generic demuxing.

As a first step, you should try and emulate the basic features of this
driver.

Does this help?

Steve


-----Original Message-----
From: linux-dvb-bounce@linuxtv.org
[mailto:linux-dvb-bounce@linuxtv.org]On Behalf Of Wolfgang Thiel
Sent: 05 June 2004 09:31
To: Patrick Boettcher
Cc: linux-dvb@linuxtv.org
Subject: [linux-dvb] Re: driver question (after reading some specs)


On Sat, Jun 05, 2004 at 02:51:19PM +0200, Patrick Boettcher wrote:
> On Sat, 5 Jun 2004, Steve Toth wrote:
> > The existing TT usb driver should give you a good enough framework for
what
> > happens when your driver has received the data, and needs to feed the
DVB
> > api.
>
> to eat those "Bratwurst"s, and so are my fingers.
>
> > Have you looked at this?
>
> Yes, I had a look, but what I wanted to know is what does the dvb driver
> (demux) api need? A literal explaination (or a pointer to one) is what
> I need to come along, I suppose.
>
I'm afraid you will have to look at and understand the other drivers'
code.

> I hope my questions aren't too stupid, if so, please tell me.
>
Perhaps, your goal is far off from what you actually can do, ATM?

No offence meant. I wouldn't even try to write a driver for an unknown
card myself: too much time needed to understand the more-or-less un-
documented API.
But really: looking at the code of other drivers should explain a lot.

Best regards, Wolfgang





Home | Main Index | Thread Index