File:  [DVB] / dvb-kernel / README
Revision 1.3: download - view: text, annotated - select for diffs
Sun Dec 29 22:15:53 2002 UTC (21 years, 5 months ago) by hunold
Branches: MAIN
CVS tags: HEAD
Major cleanup: the goal is to get rid of the budget card <=> saa7146.o <=> videodev.o dependency,
so we can later split up the av7110 driver into a av7110 and budget card driver.

I tested this on 2.4.18-3 (original RedHat 7.3 kernel) and 2.5.53.

Changes in detail:

saa7146:
- fixed the unitialised timer warnings
- split saa7146.o into saa7146.o and saa7146_vv.o:
  all videodev (ie. v4l) related stuff is now encapsulated in saa7146_vv.o.
  the extension (ie. mxb or dvb-ttpci) now has to make sure to register the v4l
  devices via helper functions provided by saa7146_vv

mxb:
- changes to make the driver compile with the new saa7146 and saa7146_vv parts
- fix the vbi bypass issue for MXBs with saa7146, rev. 1 card

av7110:
- changes to make the driver compile with the new saa7146 and saa7146_vv parts
- some changes related to the upcoming av7110 <=> budget splitup, but they are
  commented out
- changed the saa7146 PAL values to experimental values that look good to me, but
  kept the old values as a comment. where are the original values from? there is
  a big black border on most channels on the left side which annoyed me...
- changed from video/generic_usercopy() to dvb_usercopy() and put this into the
  source code, not into compat.c
- moved the crc_32* stuff from compat.c to the source file where it is used
- now compat.[ch] was removed completely, all references were deleted from
  all other files.

other:
- updated the README and TODO files
- changed "makelinks" to remove alps_bsru6 stuff from kernel when making the symlinks
- fixed the build files in "build-2.4"
- fixed all other files needed for 2.5.x kernel build

Instructions for building the "new" driver under 2.5.x:
-------------------------------------------------------

(This won't work with *2.4.x*, so don't even try...)

You need a kernel >= 2.5.53.

0) Some changes are already disucussed with Gerd Knorr, but have
not been applied to the main kernel tree.

Because of this, you need to apply the following patches to your
kernel tree before configuring and building it:

- 00_knorr_v4l1_compat.patch	: adds the v4l1-compat module to the kernel
- 01_video-buf.patch		: moves video-buf to another location

1) Call "./makelinks <your-kernel-directory>. This will copy and link the
driver files to your kernel.

2) Next, use "make menuconfig" or whatever and select the av7110 driver.
If you have problems with modules and 2.5.x you can also compile the driver
statically into the kernel.

Build and install the new kernel as usual.

3) For your convenience, a script called "driver.av7110" is available
to load and unload the driver easily. (Of course this is only valid if you
compiled the driver as a module...)

Use "./driver.av7110 start" to start the driver, "./driver.av7110 stop" to
stop and unload it. ("./driver.av7110 restart" unloads the driver and loads 
the driver with all debugging options enabled)

4) Try your favourite programs, the behaviour should be exactly the same.
Good luck!

If you have problems or questions:

1) Look at the TODO file. If the problem is mentionend there,
it will be fixed asap.

2) Ask on the mailing list or mail me at <michael@mihu.de>

Michael Hunold.

LinuxTV legacy CVS <linuxtv.org/cvs>