[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-users] PCI passthrough partial success
I'm trying to use PCI passthrough of a DVB-T tuner from a fedora8 dom0, to a centOS5.2 domU for a mythtv-backend. On the dom0 I have the following packages installed kernel-xen.x86_64 2.6.21.7-3.fc8 libvirt.x86_64 0.4.3-1.fc8 libvirt-python.x86_64 0.4.3-1.fc8 python-virtinst.noarch 0.300.2-4.fc8 virt-manager.x86_64 0.5.3-2.fc8 virt-viewer.x86_64 0.0.2-2.fc8 xen.x86_64 3.1.2-2.fc8 xen-libs.x86_64 3.1.2-2.fc8 On the domU I have the following kernel installed kernel-xen.x86_64 2.6.18.92.1.6.el5.centos.plusAdditionally I had to manually compile the saa7134_dvb.ko module for the digital section of the card as the centosplus kernel only had the saa7134.ko module for the analogue section of the card. I tried adding a pciback.hide entry to grub.conf for the dom0, but this wasn't recognised, presumably because pciback is compiled as a module on fedora8 dom0 kernel? I realise I can add entries to modprobe.conf to ensure no dom0 drivers bind to my device, but for now I'm using the following script to get dom0 to relinquish the card and make it available for the domU. rmmod saa7134 modprobe pciback SLOT=0000:08:01.0 echo -n $SLOT > /sys/bus/pci/drivers/pciback/new_slot echo -n $SLOT > /sys/bus/pci/drivers/pciback/bind I then create my domU with this config file memory = 1024 name = "mythbe" vif = [ 'mac=00:16:3E:76:E8:92, bridge=eth0' ] disk = [ 'phy:/dev/vgr1/lvmythroot,xvda,w', 'phy:/dev/vgr5/lvmythdata,xvdb,w' ] pci = ['08:01.0'] bootloader = "/usr/bin/pygrub" vcpus = 1 on_reboot = 'restart' on_crash = 'restart' I see a few PCI related messages on the console and/or dmesg PCI: Fatal: No PCI config space access function found PCI: setting up Xen PCI frontend stub PCI: System does not support PCI PCI: System does not support PCI pcifront pci-0: Installing PCI frontend pcifront pci-0: Creating PCI Frontend Bus 0000:00 pci_hotplug: PCI Hot Plug PCI Core version: 0.5 ohci_hcd: 2005 April 22 USB 1.1 'Open' Host Controller (OHCI) Driver (PCI) PCI: Enabling device 0000:00:00.0 (0000 -> 0002) The DVB-T card is visble in the domU # lspci -v00:00.0 Multimedia controller: Philips Semiconductors SAA7130 Video Broadcast Decoder (rev 01) Subsystem: Compro Technology, Inc. Videomate DVB-T200 Flags: bus master, medium devsel, latency 64, IRQ 17 Memory at febffc00 (32-bit, non-prefetchable) [size=1K] Capabilities: [40] Power Management version 1I assume it's normal that the bus/device/function numbers have been changed between dom0 and domU? Also the driver modules are being loaded # lsmod | grep saa saa7134_dvb 48004 0 dvb_pll 48965 1 saa7134_dvb mt352 40133 1 saa7134_dvb video_buf_dvb 40133 1 saa7134_dvb nxt200x 46661 1 saa7134_dvb tda1004x 48581 1 saa7134_dvb saa7134 159017 1 saa7134_dvb video_buf 59717 3 saa7134_dvb,video_buf_dvb,saa7134 compat_ioctl32 41793 1 saa7134 ir_kbd_i2c 42961 1 saa7134i2c_core 56129 7 saa7134_dvb,dvb_pll,mt352,nxt200x,tda1004x,saa7134,ir_kbd_i2c ir_common 63173 2 saa7134,ir_kbd_i2c videodev 58049 1 saa7134 v4l1_compat 44613 2 saa7134,videodev v4l2_common 57153 3 saa7134,compat_ioctl32,videodev However I see an error in dmesg too # dmesg|grep -i saa saa7130/34: v4l2 driver version 0.2.14 loadedsaa7130[0]: found at 0000:00:00.0, rev: 1, irq: 17, latency: 64, mmio: 0xfebffc00 saa7130[0]: subsystem: 185b:c901, board: Compro Videomate DVB-T200 [card=71,autodetected] saa7130[0]: can't ioremap() MMIO memory saa7134: probe of 0000:00:00.0 failed with error -5Am I right in thinking pciback.permissive is now removed? Certainly modinfo is unaware of it. Any suggestions for how to stop the ioremap() call from failing and preventing the driver from loading properly? Thanks. _______________________________________________ Xen-users mailing list Xen-users@xxxxxxxxxxxxxxxxxxx http://lists.xensource.com/xen-users
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |