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

[Xen-users] PCI MMIO?


  • To: xen-users@xxxxxxxxxxxxxxxxxxx
  • From: "Stephen Donnelly" <sfdonnelly@xxxxxxxxx>
  • Date: Fri, 16 Mar 2007 09:40:59 +1300
  • Delivery-date: Thu, 15 Mar 2007 13:40:06 -0700
  • Domainkey-signature: a=rsa-sha1; c=nofws; d=gmail.com; s=beta; h=received:message-id:date:from:to:subject:mime-version:content-type; b=Ck2iCnk248JW6xTGfpNxn+KdQBXo4tc8orVwkgQFyp/oA1X/0INa+Jlg4L9NOVwCLgzZrx8KbtDFReyFaRhrSZpFvT3HVcvxuJ1K/gRFz2qhfB6HjuMEpQMESCZSmCbpzmMzI8Ghqv/ZjCxCNGs9ry3hkr/1zg+nPpD6nZctXtU=
  • List-id: Xen user discussion <xen-users.lists.xensource.com>

Not sure if this should go to users or devel, but I'll try here first.

I understood that in a Driver Domain that has access to a (PCI) device, 'native' drivers can be used, but I am having some problems with memory mapped IO from user space.

I have a PCI device that has a 64kB mmio range at PCI_BAR_0. This space contains the registers for the device. The Linux driver provides a char device that allows read/write/seek, and mmap for this space. In Linux you can use either read/write/seek to access the space, or memory map it via mmap and access it directly. When using the driver in dom0 under Xen 3.0.4, the read/write/seek method works fine but the mmap does not. None of the related functions return errors, but the mmap does not appear to access the correct memory. Is there anything I am missing?

The mmap is performed by a remap_pfn_range() by the driver, and mmap() in the user space code.

I am running Ubuntu 6.10 AMD64 Server and I built Xen 3.0.4 from source, including the 2.6.16.33-xen kernel. The driver is running in dom0, no other domains are present.

Thanks,
Stephen.

_______________________________________________
Xen-users mailing list
Xen-users@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-users

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.