linux-media.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* Skeleton LinuxDVB framework
@ 2012-11-01 13:35 Richard
  2012-11-01 23:15 ` Charlie X. Liu
  0 siblings, 1 reply; 6+ messages in thread
From: Richard @ 2012-11-01 13:35 UTC (permalink / raw)
  To: linux-media

Hi all,

As a newbie to the LinuxDVB Device drivers, I am wondering if there is
a framework template to get a quick start in to DVB device drivers. I
currently have a SOC chip and an manufacturers API that I would like
to make in to a LinuxDVB compliant device. (Tuners/Demods/CA/MPEG
output hardware etc)

Any information is greatly appreciated.
Richard

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: Skeleton LinuxDVB framework
  2012-11-01 13:35 Skeleton LinuxDVB framework Richard
@ 2012-11-01 23:15 ` Charlie X. Liu
  2012-11-02 12:47   ` Mauro Carvalho Chehab
  0 siblings, 1 reply; 6+ messages in thread
From: Charlie X. Liu @ 2012-11-01 23:15 UTC (permalink / raw)
  To: 'Richard', linux-media

You could check or refer to the following links, for start:

http://linuxtv.org/wiki/index.php/Main_Page
http://www.linuxtv.org/docs/dvbapi/dvbapi.html
http://linuxtv.org/downloads/v4l-dvb-apis/dvbapi.html
http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps
http://linuxtv.org/downloads/legacy/linux-dvb-api-v4/linux-dvb-api-v4-0-1.pd
f
http://elinux.org/images/1/13/Celf_linux_dvb_v4.pdf

..., etc.


Charlie X. Liu

Sensoray Company, Inc. 
( http://sensoray.com/ )


-----Original Message-----
From: linux-media-owner@vger.kernel.org
[mailto:linux-media-owner@vger.kernel.org] On Behalf Of Richard
Sent: Thursday, November 01, 2012 6:35 AM
To: linux-media@vger.kernel.org
Subject: Skeleton LinuxDVB framework

Hi all,

As a newbie to the LinuxDVB Device drivers, I am wondering if there is a
framework template to get a quick start in to DVB device drivers. I
currently have a SOC chip and an manufacturers API that I would like to make
in to a LinuxDVB compliant device. (Tuners/Demods/CA/MPEG output hardware
etc)

Any information is greatly appreciated.
Richard
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org More majordomo info at
http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Skeleton LinuxDVB framework
  2012-11-01 23:15 ` Charlie X. Liu
@ 2012-11-02 12:47   ` Mauro Carvalho Chehab
  2012-11-02 17:22     ` Charlie X. Liu
  2012-11-11  9:25     ` Richard
  0 siblings, 2 replies; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2012-11-02 12:47 UTC (permalink / raw)
  To: Charlie X. Liu; +Cc: 'Richard', linux-media

Em Thu, 1 Nov 2012 16:15:41 -0700
"Charlie X. Liu" <charlie@sensoray.com> escreveu:

> You could check or refer to the following links, for start:
> 
> http://linuxtv.org/wiki/index.php/Main_Page
> http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps


Be careful with the docs below:
> http://www.linuxtv.org/docs/dvbapi/dvbapi.html
> http://linuxtv.org/downloads/legacy/linux-dvb-api-v4/linux-dvb-api-v4-0-1.pdf
> http://elinux.org/images/1/13/Celf_linux_dvb_v4.pdf

As DVB version 3 or below is outdated, and v4 was never finished/merged.

The DVBv5 (currently, on version 5.8) is the one you should use:

> http://linuxtv.org/downloads/v4l-dvb-apis/dvbapi.html

> -----Original Message-----
> From: linux-media-owner@vger.kernel.org
> [mailto:linux-media-owner@vger.kernel.org] On Behalf Of Richard
> Sent: Thursday, November 01, 2012 6:35 AM
> To: linux-media@vger.kernel.org
> Subject: Skeleton LinuxDVB framework
> 
> Hi all,
> 
> As a newbie to the LinuxDVB Device drivers, I am wondering if there is a
> framework template to get a quick start in to DVB device drivers. I
> currently have a SOC chip and an manufacturers API that I would like to make
> in to a LinuxDVB compliant device. (Tuners/Demods/CA/MPEG output hardware
> etc)

It is probably easier to get one driver of each type as an example and
change it to fill your needs.

> 
> Any information is greatly appreciated.
> Richard
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@vger.kernel.org More majordomo info at
> http://vger.kernel.org/majordomo-info.html
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html



Cheers,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

* RE: Skeleton LinuxDVB framework
  2012-11-02 12:47   ` Mauro Carvalho Chehab
@ 2012-11-02 17:22     ` Charlie X. Liu
  2012-11-11  9:25     ` Richard
  1 sibling, 0 replies; 6+ messages in thread
From: Charlie X. Liu @ 2012-11-02 17:22 UTC (permalink / raw)
  To: 'Mauro Carvalho Chehab'; +Cc: 'Richard', linux-media

Thanks Mauro, for pointing out and clarifying.		-- Charlie


-----Original Message-----
From: linux-media-owner@vger.kernel.org
[mailto:linux-media-owner@vger.kernel.org] On Behalf Of Mauro Carvalho
Chehab
Sent: Friday, November 02, 2012 5:48 AM
To: Charlie X. Liu
Cc: 'Richard'; linux-media@vger.kernel.org
Subject: Re: Skeleton LinuxDVB framework

Em Thu, 1 Nov 2012 16:15:41 -0700
"Charlie X. Liu" <charlie@sensoray.com> escreveu:

> You could check or refer to the following links, for start:
> 
> http://linuxtv.org/wiki/index.php/Main_Page
> http://www.linuxtv.org/wiki/index.php/LinuxTV_dvb-apps


Be careful with the docs below:

> http://www.linuxtv.org/docs/dvbapi/dvbapi.html
> http://linuxtv.org/downloads/legacy/linux-dvb-api-v4/linux-dvb-api-v4-
> 0-1.pdf http://elinux.org/images/1/13/Celf_linux_dvb_v4.pdf

As DVB version 3 or below is outdated, and v4 was never finished/merged.

The DVBv5 (currently, on version 5.8) is the one you should use:

> http://linuxtv.org/downloads/v4l-dvb-apis/dvbapi.html

> -----Original Message-----
> From: linux-media-owner@vger.kernel.org 
> [mailto:linux-media-owner@vger.kernel.org] On Behalf Of Richard
> Sent: Thursday, November 01, 2012 6:35 AM
> To: linux-media@vger.kernel.org
> Subject: Skeleton LinuxDVB framework
> 
> Hi all,
> 
> As a newbie to the LinuxDVB Device drivers, I am wondering if there is 
> a framework template to get a quick start in to DVB device drivers. I 
> currently have a SOC chip and an manufacturers API that I would like 
> to make in to a LinuxDVB compliant device. (Tuners/Demods/CA/MPEG 
> output hardware
> etc)

It is probably easier to get one driver of each type as an example and
change it to fill your needs.

> 
> Any information is greatly appreciated.
> Richard
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" 
> in the body of a message to majordomo@vger.kernel.org More majordomo 
> info at http://vger.kernel.org/majordomo-info.html
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-media" 
> in the body of a message to majordomo@vger.kernel.org More majordomo 
> info at  http://vger.kernel.org/majordomo-info.html



Cheers,
Mauro
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majordomo@vger.kernel.org More majordomo info at
http://vger.kernel.org/majordomo-info.html


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Skeleton LinuxDVB framework
  2012-11-02 12:47   ` Mauro Carvalho Chehab
  2012-11-02 17:22     ` Charlie X. Liu
@ 2012-11-11  9:25     ` Richard
  2012-11-12 11:34       ` Mauro Carvalho Chehab
  1 sibling, 1 reply; 6+ messages in thread
From: Richard @ 2012-11-11  9:25 UTC (permalink / raw)
  To: Mauro Carvalho Chehab; +Cc: linux-media

On 2 November 2012 12:47, Mauro Carvalho Chehab <mchehab@redhat.com> wrote:

>
> As DVB version 3 or below is outdated, and v4 was never finished/merged.
>
> The DVBv5 (currently, on version 5.8) is the one you should use:
>
>> http://linuxtv.org/downloads/v4l-dvb-apis/dvbapi.html
>
>> -----Original Message-----
>> Subject: Skeleton LinuxDVB framework
>>
>> Hi all,
>>
>> As a newbie to the LinuxDVB Device drivers, I am wondering if there is a
>> framework template to get a quick start in to DVB device drivers. I
>> currently have a SOC chip and an manufacturers API that I would like to make
>> in to a LinuxDVB compliant device. (Tuners/Demods/CA/MPEG output hardware
>> etc)
>
> It is probably easier to get one driver of each type as an example and
> change it to fill your needs.
>
>>
>> Any information is greatly appreciated.
>> Richard

> Cheers,
> Mauro

Hi Mauro (and others),

The documentation shows userspace applications quite clearly, and they
are very easy - its the device driver that I would like to understand
and implement on a SoC. The 'Copy someone elses' idea will get me to
an end, but I have to convince my team of engineers/architects that
the LinuxDVB is the future; and currently I cannot find any
documentation on the .fops, calling conventions, execution order (what
is the dependency order of devices) and such.  I would like to promote
the understanding of the driver, and not blindly hack someone else's
creations. (Hacking code causes maintenance problems later on)
I am currently using a proprietary API that was developed originally
for NeucleusOS that works, and now would like to move to a Linux
standard type system. (Moving from a Working API to an unknown API is
a risk)

Are there any architecture/API documentation on how the driver is
implemented, even pseudo-code would be useful. (Call is 'The Anatomy
of the DVB driver' if you will)

Best Regards,
Richard

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Skeleton LinuxDVB framework
  2012-11-11  9:25     ` Richard
@ 2012-11-12 11:34       ` Mauro Carvalho Chehab
  0 siblings, 0 replies; 6+ messages in thread
From: Mauro Carvalho Chehab @ 2012-11-12 11:34 UTC (permalink / raw)
  To: Richard; +Cc: linux-media, Antti Palosaari

Hi Richard,

Em 11-11-2012 07:25, Richard escreveu:
> Hi Mauro (and others),
>
> The documentation shows userspace applications quite clearly, and they
> are very easy - its the device driver that I would like to understand
> and implement on a SoC. The 'Copy someone elses' idea will get me to
> an end, but I have to convince my team of engineers/architects that
> the LinuxDVB is the future; and currently I cannot find any
> documentation on the .fops, calling conventions, execution order (what
> is the dependency order of devices) and such.  I would like to promote
> the understanding of the driver, and not blindly hack someone else's
> creations. (Hacking code causes maintenance problems later on)
> I am currently using a proprietary API that was developed originally
> for NeucleusOS that works, and now would like to move to a Linux
> standard type system. (Moving from a Working API to an unknown API is
> a risk)
>
> Are there any architecture/API documentation on how the driver is
> implemented, even pseudo-code would be useful. (Call is 'The Anatomy
> of the DVB driver' if you will)

I see. AFAIKT, you won't find any such documentation for the current
API. The thing is that some userspace developers believe that the better
documentation is the open sourced code, and that they also prefer to
code than to write documentation.

There is, however, some recent description for the dvb-usb-v2 API,
sent to the mailing list (Antti: it makes sense to put the very latest
version under Documentation/dvb).

So, until very recently, we were still fighting to synchronize the
userspace API with the code, as there used to have lots of discrepancy
there. The V4L2 API is a little ahead, in terms of documentation, as
we started to document the internal API a few years ago (at
Documentation/video4linux/v4l2-framework.txt). Also, a lwn.net article
covered several aspects of it.

Yet, there aren't many places where you need to take a look to see how
the DVB core works:

$ ls -la drivers/media/dvb-core/*.[ch]
-rw-rw-r-- 1 v4l v4l  8791 Out  6 09:14 drivers/media/dvb-core/demux.h
-rw-rw-r-- 1 v4l v4l 30946 Out 29 09:46 drivers/media/dvb-core/dmxdev.c
-rw-rw-r-- 1 v4l v4l  2592 Out 25 16:12 drivers/media/dvb-core/dmxdev.h
-rw-rw-r-- 1 v4l v4l 45886 Out  6 09:14 drivers/media/dvb-core/dvb_ca_en50221.c
-rw-rw-r-- 1 v4l v4l  4082 Out  6 09:14 drivers/media/dvb-core/dvb_ca_en50221.h
-rw-rw-r-- 1 v4l v4l 32288 Out 27 16:15 drivers/media/dvb-core/dvb_demux.c
-rw-rw-r-- 1 v4l v4l  3811 Out  6 09:14 drivers/media/dvb-core/dvb_demux.h
-rw-rw-r-- 1 v4l v4l 11848 Out  6 09:14 drivers/media/dvb-core/dvbdev.c
-rw-rw-r-- 1 v4l v4l  4089 Out  6 09:14 drivers/media/dvb-core/dvbdev.h
-rw-rw-r-- 1 v4l v4l 12922 Out  6 09:14 drivers/media/dvb-core/dvb_filter.c
-rw-rw-r-- 1 v4l v4l  6064 Out  6 09:14 drivers/media/dvb-core/dvb_filter.h
-rw-rw-r-- 1 v4l v4l 71891 Out 29 09:46 drivers/media/dvb-core/dvb_frontend.c
-rw-rw-r-- 1 v4l v4l 12634 Out 17 09:58 drivers/media/dvb-core/dvb_frontend.h
-rw-rw-r-- 1 v4l v4l  5423 Out  6 09:14 drivers/media/dvb-core/dvb_math.c
-rw-rw-r-- 1 v4l v4l  1974 Out  6 09:14 drivers/media/dvb-core/dvb_math.h
-rw-rw-r-- 1 v4l v4l 42937 Out 27 16:14 drivers/media/dvb-core/dvb_net.c
-rw-rw-r-- 1 v4l v4l  1686 Out 27 16:14 drivers/media/dvb-core/dvb_net.h
-rw-rw-r-- 1 v4l v4l  7225 Out  6 09:14 drivers/media/dvb-core/dvb_ringbuffer.c
-rw-rw-r-- 1 v4l v4l  6340 Out  6 09:14 drivers/media/dvb-core/dvb_ringbuffer.h
-rw-rw-r-- 1 v4l v4l 15385 Out  6 09:14 drivers/media/dvb-core/dvb-usb-ids.h

The DVB core is typically a way better any proprietary DVB stack. The
maturity of the code is warranted by having probably the largest developers
community inspecting it and fixing bugs.

For example, as the code is part of the upstream Kernel, the team of Kernel
janitors are always looking into the code and fixing issues there. Also,
when some internal Linux API got changed or fixed, the one that does such
changes also apply the fixes at the DVB stack, making it properly integrated
into the Kernel.

As you likely know, the way Linux development works is that interested
people submit us patches with the things they're working. Others will review
the submission, asking for corrections, when needed. When everything is ok,
I merge the stuff and send it upstream. That applies to documentation too.

So, if you're willing to work on writing some documentation for the DVB
stack, feel free to submit us documentation patches. We can then review
and eventually fix it if we found anything wrong or imprecisely described.

Regards,
Mauro

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2012-11-12 11:35 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2012-11-01 13:35 Skeleton LinuxDVB framework Richard
2012-11-01 23:15 ` Charlie X. Liu
2012-11-02 12:47   ` Mauro Carvalho Chehab
2012-11-02 17:22     ` Charlie X. Liu
2012-11-11  9:25     ` Richard
2012-11-12 11:34       ` Mauro Carvalho Chehab

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).