NOVA User-Level Environment  Version testbox/changed-memory-timing-317-g320d8b5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
pcidirect.cc File Reference

Directly-assigned PCI device. More...

#include "nul/motherboard.h"
#include "host/hostpci.h"
#include "host/hostvf.h"
#include "model/pci.h"

Classes

class  DirectPciDevice
 Directly assign a host PCI device to the guest. More...
struct  DirectPciDevice::MsiXTableEntry

Functions

 PARAM_HANDLER (dpci,"dpci:class,subclass,instance,bdf,assign=1,irqs=1 - makes the specified hostdevice directly accessible to the guest.","Example: Use 'dpci:2,,0,0x21' to attach the first network controller to 00:04.1.","If class or subclass is ommited it is not compared. If the instance is ommited the last instance is used.","If bdf is zero the very same bdf as in the host is used, if it is ommited a free bdf is used.","If assign is zero, the BDF is not assigned via the IOMMU and can not do DMA.","If irq is zero, IRQs are disabled.")
 PARAM_HANDLER (vfpci,"vfpci:parent_id,parent_no,vf_no,guest_bdf - directly assign a given virtual function to the guest.","If no guest_bdf is given, a free one is used.")

Detailed Description

Directly-assigned PCI device.

Copyright (C) 2007-2010, Bernhard Kauer bk@vm.nosp@m.mon..nosp@m.org Economic rights: Technische Universitaet Dresden (Germany)

This file is part of Vancouver.

Vancouver is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License version 2 as published by the Free Software Foundation.

Vancouver is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License version 2 for more details.

Function Documentation

PARAM_HANDLER ( dpci  ,
"dpci:class  ,
subclass  ,
instance  ,
bdf  ,
assign  = 1,
irqs  = 1 - makes the specified hostdevice directly accessible to the guest.", "Example: Use 'dpci:2,
,
0x21'to attach the first network controller to 00:04.1."  ,
"If class or subclass is ommited it is not compared. If the instance is ommited the last instance is used."  ,
"If bdf is zero the very same bdf as in the host is  used,
if it is ommited a free bdf is used."  ,
"If assign is  zero,
the BDF is not assigned via the IOMMU and can not do DMA."  ,
"If irq is  zero,
IRQs are disabled."   
)
PARAM_HANDLER ( vfpci  ,
"vfpci:parent_id  ,
parent_no  ,
vf_no  ,
guest_bdf-directly assign a given virtual function to the guest."  ,
"If no guest_bdf is  given,
a free one is used."   
)