A quick addendum to this:
I've tried with both PVOPS (2.6.31.13 and 2.6.32.26) and 2.6.18
kernels. For 2.6.18, the SATA driver doesn't work, so I use the PIIXn
regular ATA IDE driver (in the BIOS I have the SATA set to export the
device in IDE mode rather than AHCI, as I don't think I can pass AHCI
devices through).
The issue is the same in both (constantly reading in 0xff from the
status port and SRST failing and eventually giving up).
Patrick
On 4 March 2011 18:38, Patrick Colp <pjcolp@xxxxxxxxx> wrote:
> 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
|