Mailing List archive

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

[linux-dvb] Experience building DVS dvb-kernel on 2.4.18 for budget Nova-T



Hi,

After my machine suddenly started crashing with my old DVB driver and my
Nova-T, I decided to install the most current new dvb-kernel driver.

I pulled it from the CVS - yesterday's version (2003-01-26).

Here is my experience:

1) 2.4.18 kernel doesn't export get_user_pages

  I just modified and rebuilt my kernel with this symbol exported.

2) Had some problems with GPLONLY symbols in saa7146*.c and video-buf.c

  I don't really understand this stuff properly - I just replaced the
  EXPORT_SYMBOL_GPL with a regular EXPORT_SYMBOL

3) "unlikely" was unknown in video-buf.c

  Probably because my gcc is version 2.95.3.  I just defined
  unlikely with "#define unlikely(x) (x)"

4) in compat.[hc], vmalloc_to_page included for all kernels <2.5.0.

  My kernel, at least, does have this exported.  Perhaps that's not
  standard.  In any event, I changed the compat.c and compat.h to
  only include it for versions <2.4.18

5) In video-buf.c, BUG_ON wasn't defined

  This was only introduced in 2.4.20.  There is a define for it in
  saa7146.h, but video-buf.c doesn't #include that.
  I changed video-buf.c to include saa7146.h


With this lot adjusted, the driver built and showed signs of working.
My problem then was that dvbstream would capture a few seconds of video
and then data would stop.  In the syslog, the fidbirqs would stop too.
This seemed to correspond to a call to budget_diseqc_ioctl - which was
odd because I didn't see in dvbstream where such an ioctl was called.

This led me to:

6) In budget-core.c, diseqc ioctl handler is included

  This code:

        if(budget->card->type == BUDGET_TT)
                dvb_add_frontend_ioctls (budget->dvb_adapter, budget_diseqc_ioctl, NULL, budget);

  Don't see how this is relevant for a NOVA-T.  And, strangely, the
  budget_diseqc_ioctl seems to get called when dvbstream is running, and
  appeared to be causing trouble.  I #ifdeffed it out.

Later, I saw on the linux-dvb list that this going-dumb behaviour can also
be avoided by using "options dvb-core dvb_shutdown_timeout=0" in
modules.conf.


The driver seems to be working OK now - though it does appear to exhibit
more picture glitches than the old one - but this I haven't properly
investigated.


Thanks, hope this feedback is helpful.
Steve



-- 
Info:
To unsubscribe send a mail to listar@linuxtv.org with "unsubscribe linux-dvb" as subject.



Home | Main Index | Thread Index