WARNING - OLD ARCHIVES

This is an archived copy of the Xen.org mailing list, which we have preserved to ensure that existing links to archives are not broken. The live archive, which contains the latest emails, can be found at http://lists.xen.org/
   
 
 
Xen 
 
Home Products Support Community News
 
   
 

xen-devel

[Xen-devel] [RFC][PATCH 4/6] HVM PCI Passthrough (non-IOMMU)

To: <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: [Xen-devel] [RFC][PATCH 4/6] HVM PCI Passthrough (non-IOMMU)
From: "Guy Zana" <guy@xxxxxxxxxxxx>
Date: Thu, 31 May 2007 19:06:21 -0400
Delivery-date: Thu, 31 May 2007 16:07:44 -0700
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: Acej2E1juVhMSFpbRnuzdID01/diyQ==
Thread-topic: [RFC][PATCH 4/6] HVM PCI Passthrough (non-IOMMU)
int.patch:

    - Supports only level-triggered interrupts. Edge interrupts support
will be 
      added shortly (should be fairly simple)
    - Change polarity trick: in order to reflect the external device's
assertion
      state, the ioapic pin gets its polarity changed whenever an
interrupt
      occur. So an interrupt is generated when the _external_ line is
asserted 
      (then, polarity change is done) and another interrupt when the
_external_ 
      line is deassered (as a result from the polarity change), this
continues 
      repeatedly. 
    - It is implemented by introducing a new hw_interrupt_type, which is
exactly 
      the same as the ioapic_level_type hw_interrupt_type with its end()

      callback replaced (see io_apic.c for more details).
    - State machine:
      Whenever an interrupt occur (both for an assertion or
deassertion):
          1. Ack & Mask the interrupt
          2. Assert/Deassert virtual line of NativeDom (Interrupt
action).
          3. Change pin's polarity
          4. EOI & Unmask

Signed-off-by: Guy Zana <guy@xxxxxxxxxxxx>

Attachment: int.patch
Description: int.patch

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel
<Prev in Thread] Current Thread [Next in Thread>