From mboxrd@z Thu Jan 1 00:00:00 1970 From: Andy Burns Subject: Re: MMIO ioremap() error with PCI passthrough Date: Tue, 01 Jul 2008 09:58:39 +0100 Message-ID: <4869F1BF.2030705@adslpipe.co.uk> References: Mime-Version: 1.0 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: xen-devel@lists.xensource.com List-Id: xen-devel@lists.xenproject.org On 01/07/2008 09:30, Keir Fraser wrote: > What does lspci say the resource areas are for this device? Are you asking for anything more than "lspci -vvv" output? When the card is loaded in dom0 (before I unload the drivers and assign the slot to pciback) I see this 08:01.0 Multimedia controller: Philips Semiconductors SAA7130 Video Broadcast Decoder (rev 01) Subsystem: Compro Technology, Inc. Videomate DVB-T200 Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx- Status: Cap+ 66MHz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort- SERR- TAbort- SERR- It looks like fec00000 is past the end of the device's mmio region. Well 0xFEBFFC00 + 1K = 0xFEC00000, is this some sort of off-by-one error, where it should only extend to 0xFEBFFFFF? Is it worth me attempting a change in the driver code from dev->lmmio = ioremap(pci_resource_start(pci_dev,0), 0x1000); to dev->lmmio = ioremap(pci_resource_start(pci_dev,0), 0xFFF);