search for: pci_iov_enable

Displaying 20 results from an estimated 27 matches for "pci_iov_enable".

2008 Sep 27
1
[PATCH 6/6 v3] PCI: document the change
...ver doesn't want to create new entries +under /sys/bus/pci/devices/BB:DD.F/iov/N/. + +To unregister SR-IOV service, Physical Function device driver needs to call: + void pci_iov_unregister(struct pci_dev *dev) + +To enable SR-IOV, Physical Function device driver needs to call: + int pci_iov_enable(struct pci_dev *dev, int numvfs) + +To disable SR-IOV, Physical Function device driver needs to call: + void pci_iov_disable(struct pci_dev *dev) + +Note: above two functions sleeps 1 second waiting on hardware transaction +completion according to SR-IOV specification. + +To read or write VFs...
2008 Sep 27
1
[PATCH 6/6 v3] PCI: document the change
...ver doesn't want to create new entries +under /sys/bus/pci/devices/BB:DD.F/iov/N/. + +To unregister SR-IOV service, Physical Function device driver needs to call: + void pci_iov_unregister(struct pci_dev *dev) + +To enable SR-IOV, Physical Function device driver needs to call: + int pci_iov_enable(struct pci_dev *dev, int numvfs) + +To disable SR-IOV, Physical Function device driver needs to call: + void pci_iov_disable(struct pci_dev *dev) + +Note: above two functions sleeps 1 second waiting on hardware transaction +completion according to SR-IOV specification. + +To read or write VFs...
2008 Sep 27
0
[PATCH 4/9] dom0 PCI: support SR-IOV capability
..._bus_device(tmp); +} + +static int iov_enable(struct pci_iov *iov) +{ + int rc; + int i, j; + u16 ctrl; + + if (!iov->notify) + return -ENODEV; + + if (iov->is_enabled) + return 0; + + iov->notify(iov->dev, iov->numvfs | PCI_IOV_ENABLE); + pci_read_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, &ctrl); + ctrl |= (PCI_IOV_CTRL_VFE | PCI_IOV_CTRL_MSE); + pci_write_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, ctrl); + ssleep(1); + + for (i = 0; i < iov->numvfs; i++) { +...
2008 Aug 12
1
SR-IOV: patches are available for Linux kernel [4/4]
...d as hot-plugged PCI devices in the kernel, +so they should be able to work in the same way as real PCI devices. +NOTE: Virtual Function device driver must be loaded to make it work. + + +3. Developer Guide + +3.1 SR-IOV APIs + +To enable SR-IOV, Physical Function device driver needs to call: + int pci_iov_enable(struct pci_dev *dev, int nvfs, + int (*cb)(struct pci_dev *, int, int)) +NOTE: this function sleeps 2 seconds waiting on hardware transaction +completion according to SR-IOV specification. + +To disable SR-IOV, Physical Function device driver needs to call: + void pci_iov_disable(struct pci_dev...
2008 Aug 12
1
SR-IOV: patches are available for Linux kernel [4/4]
...d as hot-plugged PCI devices in the kernel, +so they should be able to work in the same way as real PCI devices. +NOTE: Virtual Function device driver must be loaded to make it work. + + +3. Developer Guide + +3.1 SR-IOV APIs + +To enable SR-IOV, Physical Function device driver needs to call: + int pci_iov_enable(struct pci_dev *dev, int nvfs, + int (*cb)(struct pci_dev *, int, int)) +NOTE: this function sleeps 2 seconds waiting on hardware transaction +completion according to SR-IOV specification. + +To disable SR-IOV, Physical Function device driver needs to call: + void pci_iov_disable(struct pci_dev...
2008 Aug 12
1
SR-IOV: patches are available for Linux kernel [4/4]
...d as hot-plugged PCI devices in the kernel, +so they should be able to work in the same way as real PCI devices. +NOTE: Virtual Function device driver must be loaded to make it work. + + +3. Developer Guide + +3.1 SR-IOV APIs + +To enable SR-IOV, Physical Function device driver needs to call: + int pci_iov_enable(struct pci_dev *dev, int nvfs, + int (*cb)(struct pci_dev *, int, int)) +NOTE: this function sleeps 2 seconds waiting on hardware transaction +completion according to SR-IOV specification. + +To disable SR-IOV, Physical Function device driver needs to call: + void pci_iov_disable(struct pci_dev...
2008 Oct 14
8
[PATCH 0/8 v4] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. [PATCH 1/8 v4] PCI: define PCI resource names in a 'enum' [PATCH 2/8 v4] PCI: export __pci_read_base
2008 Oct 14
8
[PATCH 0/8 v4] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. [PATCH 1/8 v4] PCI: define PCI resource names in a 'enum' [PATCH 2/8 v4] PCI: export __pci_read_base
2008 Aug 12
0
SR-IOV: patches are available for Linux kernel [3/4]
.../ +int pci_iov_max_virtfn(struct pci_dev *dev) +{ + u16 reg; + int pos; + + pos = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_IOV); + if (!pos) + return -ENODEV; + + pci_read_config_word(dev, pos + PCI_IOV_INITIAL_VF, &reg); + + return reg; +} +EXPORT_SYMBOL_GPL(pci_iov_max_virtfn); + +/** + * pci_iov_enable - enable device's SR-IOV capability + * @dev: PCI device + * @nvfs: number of Virtual Functions that are available + * @cb: callback used to notify Physical Function driver + * + * Returns 0 on success, and negative on failure. + * + * This function initializes SR-IOV capability. Number of avai...
2008 Aug 12
0
SR-IOV: patches are available for Linux kernel [3/4]
.../ +int pci_iov_max_virtfn(struct pci_dev *dev) +{ + u16 reg; + int pos; + + pos = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_IOV); + if (!pos) + return -ENODEV; + + pci_read_config_word(dev, pos + PCI_IOV_INITIAL_VF, &reg); + + return reg; +} +EXPORT_SYMBOL_GPL(pci_iov_max_virtfn); + +/** + * pci_iov_enable - enable device's SR-IOV capability + * @dev: PCI device + * @nvfs: number of Virtual Functions that are available + * @cb: callback used to notify Physical Function driver + * + * Returns 0 on success, and negative on failure. + * + * This function initializes SR-IOV capability. Number of avai...
2008 Aug 12
0
SR-IOV: patches are available for Linux kernel [3/4]
.../ +int pci_iov_max_virtfn(struct pci_dev *dev) +{ + u16 reg; + int pos; + + pos = pci_find_ext_capability(dev, PCI_EXT_CAP_ID_IOV); + if (!pos) + return -ENODEV; + + pci_read_config_word(dev, pos + PCI_IOV_INITIAL_VF, &reg); + + return reg; +} +EXPORT_SYMBOL_GPL(pci_iov_max_virtfn); + +/** + * pci_iov_enable - enable device's SR-IOV capability + * @dev: PCI device + * @nvfs: number of Virtual Functions that are available + * @cb: callback used to notify Physical Function driver + * + * Returns 0 on success, and negative on failure. + * + * This function initializes SR-IOV capability. Number of avai...
2008 Sep 27
3
[PATCH 4/6 v3] PCI: support SR-IOV capability
..._bus_device(tmp); +} + +static int iov_enable(struct pci_iov *iov) +{ + int rc; + int i, j; + u16 ctrl; + + if (!iov->notify) + return -ENODEV; + + if (iov->is_enabled) + return 0; + + iov->notify(iov->dev, iov->numvfs | PCI_IOV_ENABLE); + pci_read_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, &ctrl); + ctrl |= (PCI_IOV_CTRL_VFE | PCI_IOV_CTRL_MSE); + pci_write_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, ctrl); + ssleep(1); + + for (i = 0; i < iov->numvfs; i++) { +...
2008 Sep 27
3
[PATCH 4/6 v3] PCI: support SR-IOV capability
..._bus_device(tmp); +} + +static int iov_enable(struct pci_iov *iov) +{ + int rc; + int i, j; + u16 ctrl; + + if (!iov->notify) + return -ENODEV; + + if (iov->is_enabled) + return 0; + + iov->notify(iov->dev, iov->numvfs | PCI_IOV_ENABLE); + pci_read_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, &ctrl); + ctrl |= (PCI_IOV_CTRL_VFE | PCI_IOV_CTRL_MSE); + pci_write_config_word(iov->dev, iov->cap + PCI_IOV_CTRL, ctrl); + ssleep(1); + + for (i = 0; i < iov->numvfs; i++) { +...
2008 Oct 21
16
[PATCH 0/15 v5] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. Major changes between v4 -> v5: 1, remove interfaces for PF driver to create sysfs entries (Matthew
2008 Oct 21
16
[PATCH 0/15 v5] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. Major changes between v4 -> v5: 1, remove interfaces for PF driver to create sysfs entries (Matthew
2008 Oct 22
20
[PATCH 0/16 v6] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. Changes from v5 to v6: 1, update ABI document to include SR-IOV sysfs entries (Greg KH) 2, fix two coding
2008 Oct 22
20
[PATCH 0/16 v6] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. Changes from v5 to v6: 1, update ABI document to include SR-IOV sysfs entries (Greg KH) 2, fix two coding
2008 Oct 22
20
[PATCH 0/16 v6] PCI: Linux kernel SR-IOV support
Greetings, Following patches are intended to support SR-IOV capability in the Linux kernel. With these patches, people can turn a PCI device with the capability into multiple ones from software perspective, which will benefit KVM and achieve other purposes such as QoS, security, and etc. Changes from v5 to v6: 1, update ABI document to include SR-IOV sysfs entries (Greg KH) 2, fix two coding
2008 Sep 01
2
[PATCH 3/4 v2] PCI: support SR-IOV capability
...ci_dev *dev, int resno, + enum pci_bar_type *type) +{ + if (resno < PCI_IOV_RESOURCES || resno > PCI_IOV_RESOURCES_END) + return 0; + + BUG_ON(!dev->iov); + + *type = pci_bar_unknown; + return dev->iov->cap + PCI_IOV_BAR_0 + + 4 * (resno - PCI_IOV_RESOURCES); +} + +/** + * pci_iov_enable - enable device's SR-IOV capability + * @dev: the PCI device + * @cb: callback used to notify Physical Function driver + * + * Returns 0 on success, or negative on failure. + */ +int pci_iov_enable(struct pci_dev *dev, + int (*cb)(struct pci_dev *, int, int, char *)) +{ + int i; + int rc; +...
2008 Sep 01
2
[PATCH 3/4 v2] PCI: support SR-IOV capability
...ci_dev *dev, int resno, + enum pci_bar_type *type) +{ + if (resno < PCI_IOV_RESOURCES || resno > PCI_IOV_RESOURCES_END) + return 0; + + BUG_ON(!dev->iov); + + *type = pci_bar_unknown; + return dev->iov->cap + PCI_IOV_BAR_0 + + 4 * (resno - PCI_IOV_RESOURCES); +} + +/** + * pci_iov_enable - enable device's SR-IOV capability + * @dev: the PCI device + * @cb: callback used to notify Physical Function driver + * + * Returns 0 on success, or negative on failure. + */ +int pci_iov_enable(struct pci_dev *dev, + int (*cb)(struct pci_dev *, int, int, char *)) +{ + int i; + int rc; +...