![]() |
L4Re Operating System Framework
Interface and Usage Documentation
|
A Pci host bridge. More...
#include <vbus_pci>
Public Member Functions | |
| int | cfg_read (l4_uint32_t bus, l4_uint32_t devfn, l4_uint32_t reg, l4_uint32_t *value, l4_uint32_t width) const |
| Read from the vPCI configuration space using the PCI root bridge. | |
| int | cfg_write (l4_uint32_t bus, l4_uint32_t devfn, l4_uint32_t reg, l4_uint32_t value, l4_uint32_t width) const |
| Write to the vPCI configuration space using the PCI root bridge. | |
| int | irq_enable (l4_uint32_t bus, l4_uint32_t devfn, int pin, unsigned char *trigger, unsigned char *polarity) const |
| Enable PCI interrupt for a specific device using the PCI root bridge. | |
| Public Member Functions inherited from L4vbus::Device | |
| Device () | |
| Construct a new vbus device using the NULL device L4VBUS_NULL. | |
| Device (L4::Cap< Vbus > bus, l4vbus_device_handle_t dev) | |
| Construct a new vbus device using a device handle. | |
| L4::Cap< Vbus > | bus_cap () const |
| Access the Vbus capability of the underlying virtual bus. | |
| l4vbus_device_handle_t | dev_handle () const |
| Access the device handle of this device. | |
| int | device_by_hid (Device *child, char const *hid, int depth=L4VBUS_MAX_DEPTH, l4vbus_device_t *devinfo=0) const |
| Find a device by the hardware interface identifier (HID). | |
| int | next_device (Device *child, int depth=L4VBUS_MAX_DEPTH, l4vbus_device_t *devinfo=0) const |
| Find next child following child. | |
| int | device (l4vbus_device_t *devinfo) const |
| Obtain detailed information about a Vbus device. | |
| int | get_resource (unsigned res_idx, l4vbus_resource_t *res) const |
| Obtain the resource description of an individual device resource. | |
| int | is_compatible (char const *cid) const |
| Check if the given device has a compatibility ID (CID) or HID that matches cid. | |
| bool | operator== (Device const &o) const |
| Test if two devices are the same Vbus device. | |
| bool | operator!= (Device const &o) const |
| Test if two Vbus devices are not the same. | |
| Public Member Functions inherited from L4vbus::Pm< Device > | |
| int | pm_suspend () const |
| Suspend the device. | |
| int | pm_resume () const |
| Resume the device. | |
Additional Inherited Members | |
| Protected Attributes inherited from L4vbus::Device | |
| L4::Cap< Vbus > | _bus |
| The Vbus capability where this device is located on. | |
| l4vbus_device_handle_t | _dev |
| The device handle for this device. | |
|
inline |
Read from the vPCI configuration space using the PCI root bridge.
| bus | Bus number | |
| devfn | Device id (upper 16bit) and function (lower 16bit) | |
| reg | Register in configuration space to read | |
| [out] | value | Value that has been read |
| width | Width to read in bits (e.g. 8, 16, 32) |
Definition at line 39 of file vbus_pci.
References L4vbus::Device::_dev, L4vbus::Device::bus_cap(), and l4vbus_pci_cfg_read().
|
inline |
Write to the vPCI configuration space using the PCI root bridge.
| bus | Bus number |
| devfn | Device id (upper 16bit) and function (lower 16bit) |
| reg | Register in configuration space to write |
| value | Value to write |
| width | Width to write in bits (e.g. 8, 16, 32) |
Definition at line 58 of file vbus_pci.
References L4vbus::Device::_dev, L4vbus::Device::bus_cap(), and l4vbus_pci_cfg_write().
|
inline |
Enable PCI interrupt for a specific device using the PCI root bridge.
| bus | Bus number | |
| devfn | Device id (upper 16bit) and function (lower 16bit) | |
| pin | Interrupt pin (normally as reported in configuration register INTR) | |
| [out] | trigger | False if interrupt is level-triggered |
| [out] | polarity | True if interrupt is of low polarity |
Definition at line 79 of file vbus_pci.
References L4vbus::Device::_dev, L4vbus::Device::bus_cap(), and l4vbus_pci_irq_enable().