LinuxQuestions.org
Share your knowledge at the LQ Wiki.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Debian
User Name
Password
Debian This forum is for the discussion of Debian Linux.

Notices


Reply
  Search this Thread
Old 04-13-2008, 10:25 AM   #1
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Rep: Reputation: 47
mythtv: ivtv modules on debian?


I'm running debian lenny, uname 2.6.24.2, and I'm confused about what I need to do for ivtv modules.

the debian installer wiki (for etch, but same principles, I assume) says this:

Quote:
Then run (NOTE: The following command is one line long. The `uname -r` part is placing your specific linux kernel version, so you may run into trouble if you have compiled your own kernel, in which case you should run 'apt-cache search ivtv' and find the correct modules for your system. You will also need to keep an eye on the 'linux-source-2.6.18' package, and be sure that you are getting the correct version. This can be verified by running the 'uname -r' command and noting the version displayed.)

Code:
apt-get install ivtv-utils ivtv-modules-`uname -r` linux-source-2.6.18 linux-headers-`uname -r` module-assistant
I never understood all this "kernel headers" stuff. I made my own kernel, so I already have the headers and the source from that, right? Or do I just have the source, and no headers?

To complicate things, the debian packages for ivtv-modules are all in stable and are all 2.6-<arch>, not ivtv-modules-`uname -r` like in the command. So could I just install those and they would work?

I also looked in the kernel menu to try to install the modules that way, following this outline from gentoo:

Quote:
Newer Kernels (>=2.6.22)
  • Loadable module support -> Automatic kernel module loading (CONFIG_KMOD)
  • Device Drivers -> Multimedia Devices -> Video For Linux (CONFIG_VIDEO_DEV)
  • Device Drivers -> I2C support (CONFIG_I2C)
  • Device Drivers -> Multimedia Devices -> Enable Video For Linux API 1 (DEPRECATED) (CONFIG_VIDEO_V4L1)
  • Device Drivers -> Multimedia Devices -> Video capture adapters -> Conexant cx23416/cx23415 MPEG encoder/decoder support (CONFIG_VIDEO_IVTV) <- This is the option that builds the ivtv driver
but there is no cx23416/15 module in my options, only cx88-something. Did something happen between 2.6.22 and 2.6.24 that made them remove cx23416? I didn't see anything in the change logs, but I might have missed it. It's just really confusing.

Should I just downgrade to 2.6.18 and then use the debian command to make sure I get the right headers and everything? Or is there a way to install what I need for 2.6.24.2? I'm not running this specific version for any particular reason, i just had to redo the kernel recently for some network drivers, and I figured I might as well use a recent one.

Last edited by slackhack; 04-14-2008 at 07:27 AM.
 
Old 04-14-2008, 01:12 PM   #2
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
I don't have a newer kernel, but for all my module needs, I use module-assistant. Follow step one and two. Then at step three do m-a a-i ivtv. If there's no appropriate binary module that will work, it should compile it for you.

And you're right, you shouldn't need kernel headers or source since you already have source for your running kernel. Many people install Debian without the source or headers for their current kernel so compiling stuff fails. You really only need the headers, but if you have the full source, that's redundant. That's why that line is usually there.

And installing the package ivtv-modules-`uname -r` will fail because there is no module built for your running kernel (2.6.24). So I would just install module-assistant and ivtv-utils.

Last edited by pljvaldez; 04-14-2008 at 01:19 PM.
 
Old 04-14-2008, 02:53 PM   #3
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
Quote:
Originally Posted by pljvaldez View Post
I don't have a newer kernel, but for all my module needs, I use module-assistant. Follow step one and two. Then at step three do m-a a-i ivtv. If there's no appropriate binary module that will work, it should compile it for you.

And you're right, you shouldn't need kernel headers or source since you already have source for your running kernel. Many people install Debian without the source or headers for their current kernel so compiling stuff fails. You really only need the headers, but if you have the full source, that's redundant. That's why that line is usually there.

And installing the package ivtv-modules-`uname -r` will fail because there is no module built for your running kernel (2.6.24). So I would just install module-assistant and ivtv-utils.
thanks! I had already installed module-assistant and ivtv-utils from that command, but I didn't know what they did yet - I thought using those came later.

Module built, gui setup works over ssh, now I just have to get the card. (I'm assuming at least that's why modprobe says module not found ).

====================================================

Btw, for future ref, if anyone else is having a problem, when I first ran the command it failed with this:

Code:
make[3]: Entering directory `/usr/src/linux-2.6.24.2'                      ▒     
     │   CC [M]  /usr/src/modules/ivtv/driver/ivtvfb.o                            ▒     
     │ In file included from /usr/src/modules/ivtv/driver/ivtvfb.c:50:            ▒     
     │ /usr/src/modules/ivtv/driver/ivtv-driver.h:68:24: error: media/ivtv.h:     ▒     
     │ No such file or directory                                                  ▒     
     │ make[4]: *** [/usr/src/modules/ivtv/driver/ivtvfb.o] Error 1               ▒     
     │ make[3]: *** [_module_/usr/src/modules/ivtv/driver] Error 2                ▒     
     │ make[3]: Leaving directory `/usr/src/linux-2.6.24.2'                       ▒     
     │ make[2]: *** [all] Error 2                                                 ▒     
     │ make[2]: Leaving directory `/usr/src/modules/ivtv/driver'                  ▒     
     │ make[1]: *** [binary-modules] Error 2                                      ▒     
     │ make[1]: Leaving directory `/usr/src/modules/ivtv'                         ▒     
     │ make: *** [kdist_build] Error 2
a kluge fix I tried is simply to provide what it's complaining about, in this case media/ivtv.h with:

touch /usr/src/linux/include/media/ivtv.h
 
Old 04-15-2008, 07:28 AM   #4
jtshaw
Senior Member
 
Registered: Nov 2000
Location: Seattle, WA USA
Distribution: Ubuntu @ Home, RHEL @ Work
Posts: 3,892
Blog Entries: 1

Rep: Reputation: 67
Moved at the posters request.
 
Old 04-15-2008, 09:35 AM   #5
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
Quote:
Originally Posted by jtshaw View Post
Moved at the posters request.
well, the request was before pljvaldez helped out. I think it's still probably better in debian, though, since the fix is debian specific. thanks.

Although if I can't get the module to load once I have the card, you might have to move it back. (j/k)

Last edited by slackhack; 04-15-2008 at 09:37 AM.
 
Old 04-23-2008, 03:05 PM   #6
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
As I suspected, the module isn't loading:

Code:
root@moe:~ # uname -r
2.6.24.2

root@moe:# module-assistant auto-install ivtv

Updated infos about 1 packages
Getting source for kernel version: 2.6.24.2
Kernel headers available in /lib/modules/2.6.24.2/source
apt-get install build-essential
Reading package lists... Done
Building dependency tree
Reading state information... Done
build-essential is already the newest version.
0 upgraded, 0 newly installed, 0 to remove and 15 not upgraded.

Done!
unpack
Extracting the package tarball, /usr/src/ivtv.tar.bz2, please wait...
Target package file /usr/src/ivtv-modules-2.6.24.2_1.0.3-2_i386.deb
already exists, not
rebuilding!
(however, you could use the -f switch to ignore it)
dpkg -Ei /usr/src/ivtv-modules-2.6.24.2_1.0.3-2_i386.deb
Version 1.0.3-2 of ivtv-modules-2.6.24.2 already installed, skipping.
the firmware is downloaded and installed in /lib/firmware:

Code:
root@moe:~ # ls /lib/firmware/
firmware.tar.gz        v4l-cx2341x-dec.fw    v4l-pvrusb2-24xxx-01.fw
license-end-user.txt   v4l-cx2341x-enc.fw    v4l-pvrusb2-29xxx-01.fw
license-oemihvisv.txt  v4l-cx2341x-init.mpg
store                  v4l-cx25840.fw

root@moe:~ # modprobe ivtv
FATAL: Module ivtv not found.
what am I doing wrong?
 
Old 04-23-2008, 03:40 PM   #7
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
Is there anything in dmesg or syslog that points to the problem? What card are you trying to use (and is it detected okay with lspci)?

I also vaguely remember needing to put something in /etc/modprobe.conf (I think). I'm not at home, but I'll check my box later this evening.

Also, can you manually check to see if the module is in /lib/modules/2.6.24.2/?

Oh, and I'm not sure you're supposed to have all of those firmwares installed, but maybe just the ones you need for your specific card. Maybe that's causing some grief?

Last edited by pljvaldez; 04-23-2008 at 03:45 PM.
 
Old 04-23-2008, 04:46 PM   #8
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
it's a pvr-150:

Code:
jeff@moe:~ $ lspci -v
00:0b.0 Multimedia video controller: Internext Compression Inc iTVC16 (CX23416) MPEG-2 Encoder (rev 01)
	Subsystem: Hauppauge computer works Inc. WinTV PVR 150
	Flags: bus master, medium devsel, latency 32, IRQ 5
	Memory at e4000000 (32-bit, prefetchable) [size=64M]
	Capabilities: [44] Power Management version 2
i'm not seeing anything weird in either dmesg or syslog. I pasted them here if you want to take a look, maybe I'm missing something:

http://pastecode.com/?show=m6858cd7f


>> i was moving those fw in and out of the "store" directory in case it made a difference, but it didn't seem to matter. maybe it will once the driver loads, but it doesn't seem to be what's preventing it from loading.


>> edit2: actually, there's nothing related to ivtv in /lib/modules/<version> or any of its subdirectories. :?: the modules seem to be in /usr/src/modules/ivtv/driver:

ivtv-driver1.h ivtvfb.h ivtv-svnversion.h ivtv-version.h media
ivtv-driver2.h ivtv-mailbox.h ivtv-svnversion.h.tmp Kbuild
ivtvfb.c ivtv-svnrelease.h ivtv-udma.h Makefile

there's also i2c-drivers there, but /lib/modules/2.6.24.2/kernel/drivers has its own i2c. what should I do at this point? I tried moving the entire ivtv directory to /lib/modules/2.6.24.2/kernel/drivers, but it still didn't modprobe.

>> edit3: what's this? some frame buffer module? /lib/modules/2.6.24.2/kernel/drivers/media/video/ivtv/ivtvfb.ko?

I don't think that's the main driver, is it?

>> edit4: i tried modprobing that one, got this error:

FATAL: Error inserting ivtvfb (/lib/modules/2.6.24.2/kernel/drivers/media/video/ivtv/ivtvfb.ko): Unknown symbol in module, or unknown parameter (see dmesg)

dmesg:
ivtvfb: Unknown symbol ivtv_vapi_result
ivtvfb: Unknown symbol ivtv_cards_active
ivtvfb: Unknown symbol ivtv_debug
ivtvfb: Unknown symbol ivtv_udma_alloc
ivtvfb: Unknown symbol ivtv_udma_unmap
ivtvfb: Unknown symbol ivtv_vapi
ivtvfb: Unknown symbol ivtv_udma_prepare
ivtvfb: Unknown symbol ivtv_cards
ivtvfb: Unknown symbol ivtv_udma_setup
ivtvfb: Unknown symbol ivtv_vapi_result
ivtvfb: Unknown symbol ivtv_cards_active
ivtvfb: Unknown symbol ivtv_debug
ivtvfb: Unknown symbol ivtv_udma_alloc
ivtvfb: Unknown symbol ivtv_udma_unmap
ivtvfb: Unknown symbol ivtv_vapi
ivtvfb: Unknown symbol ivtv_udma_prepare
ivtvfb: Unknown symbol ivtv_cards
ivtvfb: Unknown symbol ivtv_udma_setup

is my kernel perhaps configured wrong?

Last edited by slackhack; 04-23-2008 at 06:07 PM.
 
Old 04-23-2008, 06:07 PM   #9
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
Well, I think the driver should be a *.o file (ivtv.o???), which I didn't see in that directory listing. I'll check when I get home for what I did since I also have a PVR-150.

I did blunder across this, which implies that ivtv is built into kernels after 2.6.22. My machine is Etch (2.6.18) so maybe I won't be of any help.

Can you post the output of lsmod?

Oh yeah, and did you run depmod -a before trying to load the module.

Last edited by pljvaldez; 04-23-2008 at 06:12 PM.
 
Old 04-23-2008, 06:18 PM   #10
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
Quote:
Originally Posted by pljvaldez View Post
Well, I think the driver should be a *.o file (ivtv.o???), which I didn't see in that directory listing. I'll check when I get home for what I did since I also have a PVR-150.

I did blunder across this, which implies that ivtv is built into kernels after 2.6.22. My machine is Etch (2.6.18) so maybe I won't be of any help.

Can you post the output of lsmod?
Code:
root@moe: # lsmod
Module                  Size  Used by
ppdev                   7556  0 
lp                      7876  0 
nfs                   116076  0 
af_packet              15620  2 
i2c_algo_bit            5508  0 
w83627hf               19732  0 
hwmon_vid               2688  1 w83627hf
parport_pc             21028  1 
parport                19648  3 ppdev,lp,parport_pc
8139too                20864  0 
i2c_viapro              7188  0 
floppy                 49732  0 
rtc                     9244  0 
unix                   21552  44
I keep seeing that about >= 2.6.22 kernels, too, but I don't really get what it means. If it's available in the kernel, then why is there a need to do any of this other stuff (aside from the firmware)?

Anyway, I selected the module when rebuilding the kernel a few times, and that doesn't seem to provide any module. So I'm not sure I understand that they're talking about, like when this wiki says, "Please note: Debian GNU/Linux 4.0 comes with IVTV version 0.8.2. If for some odd reason you need newer IVTV drivers...

0.8.2?? all the recent ones I've seen everywhere are 0.2.x.

But I will happily downgrade to any kernel version necessary to get this to work. like I said, I'm only using this one b/c it was the most recent when I compiled recently for a new network card.

>yes, ran depmod -a
doesn't seem like it would help if there's no .ko module though, would it? do I need to do anything after the module-assistant auto-install?

Last edited by slackhack; 04-23-2008 at 06:20 PM.
 
Old 04-23-2008, 06:44 PM   #11
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
The latest from the IVTV homepage is 0.10.6 for kernels 2.6.18 - 2.6.21.

Did you make sure your kernel configuration had the options compiled in that were listed in link from my previous post? Specifically "Conexant cx23416/cx23415 MPEG encoder/decoder support (CONFIG_VIDEO_IVTV)"
 
Old 04-23-2008, 07:20 PM   #12
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
Quote:
Originally Posted by pljvaldez View Post
The latest from the IVTV homepage is 0.10.6 for kernels 2.6.18 - 2.6.21.

Did you make sure your kernel configuration had the options compiled in that were listed in link from my previous post? Specifically "Conexant cx23416/cx23415 MPEG encoder/decoder support (CONFIG_VIDEO_IVTV)"
the problem is, that doesn't exist. neither do some of the other ones. the closest to the cx2341x is something called "cx88-blackbird." It's in the menu as:

<M> Blackbird MPEG encoder support (cx2388x + cx23416)

so I'm assuming that's it. but the "help" page lists the module as cx88-blackbird. there is no video_ivtv that I can see. I tried modprobing cx88-blackbird after building the module, and it just gives a "no such device" error. wtf??

BT848 is there, but there is no WM8775 (Wolfson Microelectronics WM8775 (CONFIG_VIDEO_WM8775) in the wiki).

there's also no Conexant CX2584x audio/video decoders (CONFIG_VIDEO_CX25840), which the wiki says is also needed for pvr-150 cards.

so it's really hard to tell what to do or what's going on when the doc for this project is so bad. worst i've ever seen for any linux project, in fact. the wiki you provided is actually the best one, it's just that the kernel modules don't seem to be there.

Anyway, rants aside, here is every single option in multimedia. i've selected <M> for all of them just to expose anything nested. Maybe someone can tell me what I'm missing, because I don't see ivtv (aside from the blackbird module), the cx25840 or WM8775 in any of it:

Code:
  │ │    --- Video capture adapters                                               │ │  
  │ │    [ ]   Enable advanced debug functionality                                │ │  
  │ │[*]   Autoselect pertinent encoders/decoders and other helper chips      │ │  
  │ │    <M>   Virtual Video Driver                                               │ │  
  │ │    <M>   BT848 Video For Linux                                              │ │  
  │ │    <M>     SAA6588 Radio Chip RDS decoder support on BT848 cards            │ │  
  │ │    <M>   Quickcam BW Video For Linux                                        │ │  
  │ │    <M>   CPiA Video For Linux                                               │ │  
  │ │    <M>     CPiA USB Lowlevel Support       

  │ │    <M>   CPiA2 Video For Linux                                              │ │
  │ │    <M>   SAA5246A, SAA5281 Teletext processor                               │ │
  │ │    <M>   SAA5249 Teletext processor                                         │ │
  │ │    <M>   SAB3036 tuner                                                      │ │
  │ │    <M>   Zoran ZR36057/36067 Video For Linux                                │ │
  │ │    <M>     Iomega Buz support                                               │ │
  │ │    <M>     Pinnacle/Miro DC10(+) support                                    │ │
  │ │    <M>     Pinnacle/Miro DC30(+) support                                    │ │
  │ │    <M>     Linux Media Labs LML33 support                                   │ │
  │ │    <M>     Linux Media Labs LML33R10 support                                │ │
  │ │    <M>   Philips SAA7134 support                                            │ │
  │ │    <M>   Siemens-Nixdorf 'Multimedia eXtension Board'                       │ │
  │ │    <M>   Philips-Semiconductors 'dpc7146 demonstration board'               │ │
  │ │    <M>   Hexium HV-PCI6 and Orion frame grabber                             │ │
  │ │    <M>   Hexium Gemini frame grabber                                        │ │
  │ │    <M>   Conexant 2388x (bt878 successor) support                           │ │
  │ │    <M>     Blackbird MPEG encoder support (cx2388x + cx23416)               │ │
  │ │    <M>   Marvell 88ALP01 (Cafe) CMOS Camera Controller support
I didn't have BT848 before (none of the other 3 wikis even mention it ), so I'm trying again with that. but since I don't have the other ones the other wiki says are needed, I'm not too optimistic. i did find 1.0.3, so i'll just go through the wiki without the Wolfson, etc. and see if works anyway.

Last edited by slackhack; 04-23-2008 at 07:29 PM.
 
Old 04-23-2008, 07:32 PM   #13
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
I'll get back to you when I get home in a couple hours. I'm not sure I'm doing much good other than leading you on a wild goose chase.
 
Old 04-23-2008, 07:52 PM   #14
slackhack
Senior Member
 
Registered: Jun 2004
Distribution: Arch, Debian, Slack
Posts: 1,016

Original Poster
Rep: Reputation: 47
okay, thanks. I really appreciate it. I'm obviously ivtv challenged!

Fwiw, like I said I think the wiki you posted is the best one. I just don't get where the modules are.

Code:
root@moe:/usr/src/linux # cat .config |grep -i ivtv

root@moe:/usr/src/linux # cat .config |grep -i WM8775   

root@moe:/usr/src/linux # cat .config |grep -i blackbird
CONFIG_VIDEO_CX88_BLACKBIRD=m
that's 2.6.22, btw. I checked that one specifically, just in case they changed something in later kernels and took out the modules. but it doesn't seem to be there, either.

Last edited by slackhack; 04-23-2008 at 07:55 PM.
 
Old 04-23-2008, 08:56 PM   #15
pljvaldez
LQ Guru
 
Registered: Dec 2005
Location: Somewhere on the String
Distribution: Debian Wheezy (x86)
Posts: 6,094

Rep: Reputation: 281Reputation: 281Reputation: 281
Okay, looking at my modules it looks like they reside in the /lib/modules/2.6.18-6-686/contrib/ivtv/ directory.

Here is ls /lib/firmware
Code:
v4l-cx2341x-dec.fw
v4l-cx2341x-enc.fw
v4l-cx25840.fw
v4l-pvrusb2-24xxx-01.fw
v4l-pvrusb2-29xxx-01.fw
You might see what all is installed if you do a dpkg --get-selections |grep -i ivtv. Also, I found all my ivtv related stuff with locate ivtv. I'm a bit at a loss for where to go from here...
 
  


Reply

Tags
ivtv, mythtv



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Debian ivtv guide sureshot324 Linux - Software 1 08-19-2007 06:33 AM
mythtv no ivtv-firmware-audio tshontikidis Fedora 1 11-02-2005 08:31 AM
can't get ivtv to work w/ my pvr-150 using jarod's mythtv howto. thewhippingboy Linux - Software 1 07-27-2005 08:11 AM
Nvidia and ivtv modules have to be loaded manually. Fail on boot Pcghost Debian 2 03-16-2005 09:00 AM
Error building MythTV installing ivtv Perrin7 Linux - Newbie 1 10-01-2004 09:13 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Debian

All times are GMT -5. The time now is 01:36 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration