The most recent ivtv ebuilds ivtv-0.2.0_rc3-r2 and ivtv-0.2.0_rc3-r3 don't install the ivtv-fb.ko module into the lib/modules/???/extra directory. It was working okay in ivtv-0.2.0_rc3. This prevents running X on the framebuffer of the PVR-350. Reproducible: Always Steps to Reproduce: 1. emerge ivtv 2. 3. Expected Results: Installed the module in the correct directory so that modprobe ivtv-fb doesn't fail.
The ebuild requires that CONFIG_FB be set to build the FB driver. Make sure it's set and report back... Need more info like what kernel, compiler, etc. You know... a standard bug report... emerge info.
Created attachment 53020 [details] emerge info Here is my emerge info
Created attachment 53021 [details] Kernel configuration Here is the kernel config. Framebuffer support is enabled and the ebuild appears to detect that correctly from the screen output during the build.
Solved: emerge -eD system && emerge -eD system && emerge -eD world && emerge -eD world
Spoke too soon, I had masked >0.2.0-rc3 before rebuilding the system and forgot. I have reconfirmed that ivtv-0.2.0-rc3 installs ivtv-fb.ko and ivtv-0.2.0-rc3-r3 does not.
I was playing around with the ebuild file a bit. Try adding the following line just before the linux-mod_src_install line (line 81): die "${MODULE_NAMES}" then try to emerge ivtv. When it dies, ivtv-fb does not appear in the list of modules, so it appears the change to MODULE_NAMES to add ivtv-fb does not propagate down to the point when the modules are actually installed.
I received the following error after adding that line. >>> Install ivtv-0.2.0_rc3-r3 into /var/tmp/portage/ivtv-0.2.0_rc3-r3/image/ category media-tv !!! ERROR: media-tv/ivtv-0.2.0_rc3-r3 failed. !!! Function src_install, Line 81, Exitcode 0 !!! ivtv(extra:/var/tmp/portage/ivtv-0.2.0_rc3-r3/work/ivtv-0.2.0-rc3g/driver) msp3400(extra:/var/tmp/portage/ivtv-0.2.0_rc3-r3/work/ivtv-0.2.0-rc3g/driver) saa7115(extra:/var/tmp/portage/ivtv-0.2.0_rc3-r3/work/ivtv-0.2.0-rc3g/driver) tveeprom(extra:/var/tmp/portage/ivtv-0.2.0_rc3-r3/work/ivtv-0.2.0-rc3g/driver) saa7127(extra:/var/tmp/portage/ivtv-0.2.0_rc3-r3/work/ivtv-0.2.0-rc3g/driver)
Same problem for me. No ivtv-fb.ko.
Furthermore, I can get Xorg to start because it fails to find an ivtvdev module/driver as mentioned in this forum thread: http://forums.gentoo.org/viewtopic-p-2200798.html#2200798 I began with ivtv-0.2.0_rc3-r3, but it did not provide an ivtv-fb.ko kernel module. Same for 0.2.0_rc3-r2. I am now using 0.2.0_rc3, and it builds the ivtv-fb.ko module. But X won't start because it can't find ivtvdev (from /var/log/Xorg.log): (EE) Failed to load module "ivtv" (module does not exist, 0) (EE) No drivers available. My xorg.conf Device section had this: Section "Device" Identifier "ivtv" Driver "ivtvdev" Option "ivtvdev" "/dev/fb0" BusID "PCI:2:9:0" EndSection I'm trying to use the TV-out of my PVR-350.
That should read "(EE) Failed to load module "ivtv" (module does not exist, 0)". I was tinkering trying to get it to work and forgot to change it back to what I originally had.
I built everything from Chris' latest tarball, 0.2.0_rc3i.tgz, and I installed the binary X driver according to the instructions from README.X11 in the utils directory. Still no go. From my Xorg.0.log file: bukowski utils # grep IVTVDEV /var/log/Xorg.0.log (II) IVTVDEV: driver for framebuffer: PVR-350 (II) IVTVDEV(0): using default device (**) IVTVDEV(0): Depth 24, (**) framebuffer bpp 32 (==) IVTVDEV(0): RGB weight 888 (==) IVTVDEV(0): Default visual is TrueColor (==) IVTVDEV(0): Using gamma correction (1.0, 1.0, 1.0) (II) IVTVDEV(0): Hardware: iTVC15 TV out (vidmem: 2025k) (II) IVTVDEV(0): Checking Modes against framebuffer device... (II) IVTVDEV(0): mode "720x480" ok (II) IVTVDEV(0): Checking Modes against monitor... (--) IVTVDEV(0): Virtual size is 720x480 (pitch 720) (**) IVTVDEV(0): Built-in mode "current": 34.6 MHz, 37.2 kHz, 73.9 Hz (II) IVTVDEV(0): Modeline "current" 34.56 720 752 840 928 480 484 488 504 -hsync -vsync -csync (==) IVTVDEV(0): DPI set to (75, 75) (**) IVTVDEV(0): Using "Shadow Framebuffer" (EE) IVTVDEV(0): FBIOBLANK: Invalid argument (EE) IVTVDEV(0): FBIOPAN_DISPLAY: Invalid argument (==) IVTVDEV(0): Backing store disabled (EE) IVTVDEV(0): FBIOBLANK: Invalid argument (EE) IVTVDEV(0): FBIOBLANK: Invalid argument Not sure what those error lines mean if anything.
I have a working install of ivtv-0.2.0_rc3i. Changed the line: Option "ivtvdev" "/dev/fb0" To this: Option "fbdev" "/dev/fb0" I still see scores of these errors in my Xorg.0.log: (EE) IVTVDEV(0): FBIOBLANK: Invalid argument Doesn't seem to hurt anything. I installed the X driver from the tarball by going into the utils directory and issuing this per the README.X11: install -c -m 0444 ivtvdev_drv_o /usr/X11R6/lib/modules/drivers/ivtvdev_drv.o I had to move the kernel modules around, including ivtv-fb.ko. It wants to put them in /lib/modules/<kernel version>/build. I moved them to /lib/modules/<kernel version>/extra as the ebuilds traditionally have. So this will work if someone who knows more about ebuilds wants to fix it.
I believe that the logic in the following if check is "backwards" in the ebuild for ivtv if grep '^CONFIG_FB=' ${ROOT}${KV_DIR}/.config then MODULE_NAMES="${MODULE_NAMES} ivtv-fb(extra:${S}/driver)" fi When run outside of emerge, the grep returns '0' if true mike@speedy driver $ grep '^CONFIG_FB=' /usr/src/linux/.config; echo $? CONFIG_FB=y 0
Upon further inspection, I think there is a scope problem with the MODULE_NAMES variable. The changes to add ivtv-fb in src_unpack() don't make it to the src_install() function. I'm not fluent enough in ebuild to know how to fix it, though :(
Hello? Any word on this?
Created attachment 55777 [details] Workaround for a problem Moving the "MODULE_NAMES" definition into src_unpack() section as in attachment, just before testing on CONFIG_FB, seems to solve the problem. The mail problem seems to be that global private variables from some reason are not propagated with their value beyond src_unpack().
Created attachment 56029 [details] Another way to do it In fact, after some head-on-wall/table hitting, I beleive that a better solution would be moving MODULE_NAMES to pkg_setup() block, as in attachment. This seems more portage-PC(as in politically correct)-way, cleener and, at least, working - MODULE_NAMES is propagates through all the rest of ebuild. 'get_version' function is needed to update ${ROOT} and ${KV_DIR} values that are reset for some reason after adding pkg_setup() to ebuild.
The pirmary download web site for ivtv-0.2.0-rc3g.tgz has a truncated (invalid) copy of the file which will not even unzip. The new version on the web site ivtv-0.2.0-rc3i.tgz is complete, but has no ebuild available for it yet. So as a result ALL GENTOO installations of IVTV are broken
fixed in cvs