Difference between revisions of "XV on PVR-350"

From MythTV Official Wiki
Jump to: navigation, search
(Compiling the X driver on Gentoo with Modular X.Org (6.9/7.0))
(Compiling the X driver on Gentoo with Modular X.Org (6.9/7.0))
Line 44: Line 44:
 
# Build the digest for the ebuild<br><code>ebuild xf86-video-ivtvdev-0.10.6.ebuild digest</code><br>
 
# Build the digest for the ebuild<br><code>ebuild xf86-video-ivtvdev-0.10.6.ebuild digest</code><br>
 
# Add the package to package.keywords<br><code>echo "x11-drivers/xf86-video-ivtvdev ~x86" >> /etc/portage/package.keywords</code><br>
 
# Add the package to package.keywords<br><code>echo "x11-drivers/xf86-video-ivtvdev ~x86" >> /etc/portage/package.keywords</code><br>
 +
# Add "ivtvdev" to VIDEO_CARDS in make.conf
 +
# Add video_cards_ivtvdev to USE in make.conf
 
# Emerge the package<br><code>emerge xf86-video-ivtvdev</code>
 
# Emerge the package<br><code>emerge xf86-video-ivtvdev</code>
  

Revision as of 21:04, 29 March 2006

This How-To outlines how to get the xv extension working on the TV-Out of the Hauppauge PVR-350 in various distributions of linux.

Configuring x.org (all distributions)

This section describes the changes you will need to make to your XF86Config / xorg.conf file in order to enable the X driver.

  • Edit your XF86Config (or x.org) file to contain the following. Replace with your own fbdev and BusID as appropriate (see below):
Section "Device"
        Identifier "Hauppauge PVR 350 iTVC15 Framebuffer"
        Driver "ivtvdev"
        Option  "fbdev" "/dev/fb2"
        BusID  "PCI:0:10:0"
End Section
  • Get your appropriate BusID from lspci (available from the pcitools package):

lspci |grep video

  • Get the appropriate fb device from /proc/fb:

cat /proc/fb

Compiling the X driver on a RedHat Compatible System

I also needed the x driver to get xine to play nice with the PVR-350. These steps worked to compile it on a CentOS 4.2 (RedHat Enterprise) x86_64 System:

  • Download and extract xdriver source. Here I'll use the home directory (~).
  • Install xorg-x11 source RPM, for me xorg-x11-6.8.2-1.EL.13.20.src.rpm
  • cd /usr/src/redhat/SPECS/
  • rpmbuild -bc xorg-x11.spec -- This took a good half hour on my 2.8Ghz P4-521. This patches and compiles but does not install the source. I wonder if 'rpmbuild -bp' would be enough for this to work?
  • cd ~/ivtv_xdriver_0.10.6/xc/programs/Xserver/hw/xfree86/drivers/ivtv
  • xmkmf /usr/src/redhat/BUILD/xorg-x11-6.8.2/xc
  • make
  • cp ivtvdev_drv.o /usr/X11R6/lib64/modules/drivers. On an i386 system the destination for the copy should be /usr/X11R6/lib/modules/drivers.
  • Edit /etc/X11/xorg.conf (see above edits to XF86Config).
  • Restart X

The xdriver source compiled without any patches or fixes. Check /var/log/Xorg.0.log after restarting X to see that the driver is loading. My log file stated that the driver is compiled for 4.3.99.902 while I clearly have 6.8.2 installed. Odd, but it still works.

--Kbocek 21:51, 27 March 2006 (UTC)

Compiling the X driver on Gentoo with Modular X.Org (6.9/7.0)

Since Modular Xorg has drivers in separate packages, porting the xdriver to one of these packages was just a matter of hijacking the fbdev package and changing which files it compiled.

  1. Put the tar.bz2 file in /usr/portage/distfiles
    cp xf86-video-ivtvdev-0.10.6.tar.bz2 /usr/portage/distfiles
  2. Put the .ebuild in your portage overlay under x11-drivers/xf86-video-ivtv
    mkdir -p /usr/local/portage/x11-drivers/xf86-video-ivtvdev/
    cp xf86-video-ivtvdev-0.10.6.ebuild /usr/local/portage/x11-drivers/xf86-video-ivtvdev/
  3. Build the digest for the ebuild
    ebuild xf86-video-ivtvdev-0.10.6.ebuild digest
  4. Add the package to package.keywords
    echo "x11-drivers/xf86-video-ivtvdev ~x86" >> /etc/portage/package.keywords
  5. Add "ivtvdev" to VIDEO_CARDS in make.conf
  6. Add video_cards_ivtvdev to USE in make.conf
  7. Emerge the package
    emerge xf86-video-ivtvdev

Notice: these are copies of the source code obtained from ivtvdriver.org, modified for the package structure of modular xorg.

  • ivtvdev_drv.so Binary Driver (no guarantees on if this will work with your specific distribution, you're better off compiling)

--JeffSimpson 20:41, 29 March 2006 (UTC)

Compiling the X driver on Gentoo with X.Org 6.8.X

NOTICE: These instructions are outdated and may no longer work.

This section focuses on installing the X Driver (with XVideo extensions) in Gentoo under x.org 6.8.X. This assumes that you have tvout working on the Hauppauge PVR-350, or at least some parts of MythTV already working.

  • Upgrade to the newest release of Ivtv, at this time, ivtv-0.3.8.
ACCEPT_KEYWORDS=~x86 emerge ivtv
  • Upgrade/Install x.org. I used version 6.8.2-r5, but any new-ish release should be ok
  • Download the XDriver from here: http://dl.ivtvdriver.org/xdriver/
  • Unzip the archive into the source directory for X, in the

xc/programs/Xserver/hw/xfree86/drivers/ivtv directory

  • Edit xc/config/cf/xorg.cf and look for #define XF86[[Card Drivers]]. Add "ivtv" somewhere in that list.
  • Run a make clean and make install in that directory to install the ivtv driver.
  • Edit your XF86Config file to contain the following. Replace with your own fbdev and BusID as appropriate (see below):
Section "Device"
        Identifier "Hauppauge PVR 350 iTVC15 Framebuffer"
        Driver "ivtvdev"
        Option  "fbdev" "/dev/fb2"
        BusID  "PCI:0:10:0"
[[End Section]]
  • Get your appropriate BusID from lspci (available from the pcitools package):
lspci |grep video
  • Get the appropriate fb device from /proc/fb:
cat /proc/fb
  • attachment:XF86Config_relevant_parts
Start X!

In order to facilitate, I created a patch and custom ebuild to download/install xdriver and patch the xorg.cf file.

  • attachment:ivtv.xorg.cf.patch (now missing)
  • attachment:xorg-x11-6.8.2-r5.ebuild (now missing)

--JeffSimpson 20:52, 29 March 2006 (UTC)