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

[Xen-devel] SATA pass-through woes


  • To: xen-devel <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: Patrick Colp <pjcolp@xxxxxxxxx>
  • Date: Fri, 4 Mar 2011 18:38:38 -0800
  • Delivery-date: Fri, 04 Mar 2011 18:39:30 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>

I'm trying to pass my SATA controller through to a domain and have run
into a weird situation. I have two machines with the same general
class of hardware (Intel PIIX) and the pass-through works on one
machine but not the other. On the non-working system, the SATA
controller makes port reads, but they don't return the correct values.
For example, when running it in dom0, when polling the bmdma status
register, it returns 0x60 and when polling the command status register
, it returns 0x50. However, when passing it through, the bmdma
register returns 0x0 and the command register returns 0xff (the error
register also returns 0xff, shedding no additional light on the
situation).

This is the hardware on the working system:

00:1f.2 IDE interface: Intel Corporation N10/ICH7 Family SATA IDE
Controller (rev 01) (prog-if 8f [Master SecP SecO PriP PriO])
        Subsystem: Intel Corporation Device 544e
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin B routed to IRQ 19
        Region 0: I/O ports at 20c8 [size=8]
        Region 1: I/O ports at 20ec [size=4]
        Region 2: I/O ports at 20c0 [size=8]
        Region 3: I/O ports at 20e8 [size=4]
        Region 4: I/O ports at 20a0 [size=16]
        Region 5: Memory at d02c4000 (32-bit, non-prefetchable) [size=1K]
        Capabilities: [70] Power Management version 2
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot+,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Kernel driver in use: ata_piix


This is the hardware on the non-working system:

00:1f.2 IDE interface: Intel Corporation 82801JI (ICH10 Family) 4 port
SATA IDE Controller #1 (prog-if 8f [Master SecP SecO PriP PriO])
        Subsystem: Dell Device 0293
        Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B- DisINTx-
        Status: Cap+ 66MHz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR- INTx-
        Latency: 0
        Interrupt: pin C routed to IRQ 20
        Region 0: I/O ports at fe00 [size=8]
        Region 1: I/O ports at fe10 [size=4]
        Region 2: I/O ports at fe20 [size=8]
        Region 3: I/O ports at fe30 [size=4]
        Region 4: I/O ports at fec0 [size=16]
        Region 5: I/O ports at ecc0 [size=16]
        Capabilities: [70] Power Management version 3
                Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA 
PME(D0-,D1-,D2-,D3hot-,D3cold-)
                Status: D0 PME-Enable- DSel=0 DScale=0 PME-
        Capabilities: [b0] PCIe advanced features <?>
        Kernel driver in use: ata_piix


Does anybody have any thoughts about what might be going on here?


Patrick

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


 


Rackspace

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