freebsd-nq/sys/dev
Ryan Stone e9309eac19 Allocate PCI I/O memory spaces for VFs
When creating VFs, we must size each SR-IOV BAR on the PF and
allocate a configuous I/O memory window large enough for every VF.
However, the window only needs to be aligned to a boundary equal
to the size of the window for a single VF.

When a VF attempts to allocate an I/O memory resource, we must
intercept the request in the pci driver and pass it off to the
SR-IOV code, which will allocate the correct window from the
pre-allocated memory space for the PF.

Inform the pci driver about the size and address of the BARs on
the VF when the VF is created.  This is required by pciconf -b and
bhyve.

Differential Revision:	https://reviews.freebsd.org/D78
Reviewed by:		jhb
MFC after: 		1 month
Sponsored by:		Sandvine Inc.
2015-03-01 00:40:26 +00:00
..
aac
aacraid
acpi_support
acpica Implement interface to create SR-IOV Virtual Functions 2015-03-01 00:40:09 +00:00
adb
adlink
advansys Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
ae
age
agp Remove break after return. 2015-01-23 15:14:30 +00:00
aha Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
ahb Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
ahci For some uniformity move ahci_ch_init() call under the lock. 2015-02-26 12:51:05 +00:00
aic Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
aic7xxx
alc Correct device description message. 2015-01-30 01:13:07 +00:00
ale
alpm
altera Do not configure Altera PIO device on ARM startup. 2015-01-04 23:14:04 +00:00
amdpm
amdsbwd
amdsmb
amdtemp
amr
an In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
arcmsr Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
asmc
ata Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets. 2014-11-26 04:23:21 +00:00
ath Move the lock destruction/creation to earlier in the process - if 2015-02-14 18:14:45 +00:00
atkbdc Quirk based support of Chromebook keyboard found in Acer C720 2015-02-14 22:12:17 +00:00
auxio
bce Correct a typo. 2015-02-24 01:00:46 +00:00
beri o Switch to use non-mergeable RX buffers to avoid mbuf adjustment needs 2015-01-05 16:43:22 +00:00
bfe
bge In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
bktr
bm Mechanically convert to if_inc_counter(). 2014-09-18 21:05:59 +00:00
buslogic Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
bvm
bwi
bwn
bxe Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
cadence
cardbus On my Lenovo T400, a Atheros 2413 has a problem powering up 2015-02-18 05:53:04 +00:00
cas
ce In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
cesa
cfe
cfi
ciss Remove compat shims for FreeBSD versions older than 6 (really early 5). 2015-01-06 15:48:20 +00:00
cm In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
cmx
coretemp
cp In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
cpuctl Increase allowed size of the microcode blob to 32KB. Some Intel CPU's 2014-12-20 16:40:49 +00:00
cpufreq
cs In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
ct Lock the scsi_low code and the drivers which use it along with other 2014-11-20 20:50:05 +00:00
ctau In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
cx Remove break after return. 2015-01-23 15:14:30 +00:00
cxgb Provide a set of inline functions to manage simple mbuf(9) queues, based 2015-02-19 01:19:42 +00:00
cxgbe cxgbe(4): allow tx hardware checksumming on the netmap interface. 2015-02-24 21:31:13 +00:00
cy
dc Remove break after return. 2015-01-23 15:14:30 +00:00
dcons Garbage collect dragonfly and legacy FreeBSD system support from dcons(4). 2015-01-21 19:53:52 +00:00
de
digi
dpms
dpt Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
drm Adjust printf format specifiers for dev_t and ino_t in kernel. 2014-12-17 07:27:19 +00:00
drm2 After r278004 was committed, Bruce Evans noted that the casts were 2015-02-09 07:56:50 +00:00
dwc o Correct the condition in reset procedure 2015-02-13 11:00:13 +00:00
e1000 Migrate using CPU_ZERO() + CPU_SET() -> CPU_SETOF(). 2015-02-25 21:44:53 +00:00
ed Fix typo 2015-02-04 16:19:31 +00:00
eisa
en To ease changes to underlying mbuf structure and the mbuf allocator, reduce 2015-01-05 09:58:32 +00:00
ep
esp
et
etherswitch Add another register definition for the AR8327. 2015-02-28 23:59:29 +00:00
ex In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
exca
fatm To ease changes to underlying mbuf structure and the mbuf allocator, reduce 2015-01-05 09:58:32 +00:00
fb Forward the FBIO_BLANK IOCTL to framebuffer clients. Bump the FreeBSD 2015-02-16 11:49:48 +00:00
fdc
fdt Allow creating subclass of FDT simplebus 2015-02-27 20:11:02 +00:00
fe Silence a coverity warning about ignoring a return value. We do, but 2015-02-03 18:59:52 +00:00
ffec Add busdma sync ops before reading and after modifying the descriptor rings. 2014-11-24 16:12:11 +00:00
filemon
firewire Fix remote DMA based firewire debugging when targeting 2015-01-21 20:08:24 +00:00
flash
fxp Add Intel vendor ID to the device table to make it more uniform so 2014-12-24 03:49:33 +00:00
gem
glxiic Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
glxsb
gpio Add ofw_gpiobus_parse_gpios(), a new public function, to parse the gpios 2015-02-28 21:01:01 +00:00
gxemul
hatm
hifn In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
hme
hpt27xx Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
hptiop
hptmv
hptnr Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
hptrr Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
hwpmc The cpu_id macro was renamed in r278529, catch up with this new name. 2015-02-11 10:37:55 +00:00
hyperv Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
ic This should have been GC'd 6 years ago when ar(4) was removed. 2015-02-17 05:07:38 +00:00
ichsmb Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets. 2014-11-26 04:23:21 +00:00
ichwd Add bunch of PCI IDs of Intel Wildcat Point (9 Series) chipsets. 2014-11-26 04:23:21 +00:00
ida A dma tag alignment should be 1 (not 0) when a device can dma at any address. 2014-11-06 18:14:12 +00:00
ie In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
if_ndis
iicbus Add a driver for the Maxim DS3231 a low-cost, extremely accurate (+-2PPM) 2015-02-28 19:02:44 +00:00
iir Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
intpm
io
ipmi Use direct hardware access for internal requests for KCS and SMIC. In 2015-02-06 16:45:10 +00:00
ips - Use the existing driver lock in cdevsw methods and remove D_NEEDGIANT. 2014-11-13 22:06:57 +00:00
ipw
isci Fix tunable and sysctl handling of the fail_on_task_timeout knob. 2014-12-24 07:04:04 +00:00
iscsi Extend ICL to add receive offload methods. For software ICL backend 2015-02-08 19:15:14 +00:00
iscsi_initiator To ease changes to underlying mbuf structure and the mbuf allocator, reduce 2015-01-05 09:58:32 +00:00
ismt
isp Fix SCSI status byte reporting on 4Gb and 8Gb Qlogic boards. 2015-01-21 20:32:36 +00:00
ispfw
iwi
iwn Remove a private copy of ieee80211_add_ssid(). 2014-12-19 01:41:51 +00:00
ixgb
ixgbe Pad RX copy alignment calculation to avoid illegal memory accesses 2015-02-28 14:57:57 +00:00
ixl Migrate using CPU_ZERO() + CPU_SET() -> CPU_SETOF(). 2015-02-25 21:44:53 +00:00
jme
joy There never was a PC Card joystick attachment that worked. Kill the 2014-11-22 20:31:20 +00:00
kbd
kbdmux
ksyms
le In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
led
lge
lmc Remove compat code for pre-FreeBSD 7 systems. 2015-02-17 05:10:41 +00:00
malo Fix compilation with GCC in the PAE case. 2015-02-10 21:33:32 +00:00
mbox
mc146818
mca
mcd Add locking to mcd(4) and mark MPSAFE. 2014-11-18 21:51:01 +00:00
md
mem Remove Giant from /dev/mem and /dev/kmem. It is definitely not needed 2015-01-24 12:51:15 +00:00
mfi
mge
mii Typo: ivalid -> invalid. 2015-01-21 09:01:48 +00:00
mk48txx
mlx
mly Add locking to mly(4) and mark MPSAFE. 2014-11-18 21:55:50 +00:00
mmc MMC: Signal HC capability to (e)MMC. 2015-02-27 15:14:25 +00:00
mn In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
mpr Add FreeBSD stable/10 version checks for the availability of the 2015-02-26 22:22:06 +00:00
mps Add FreeBSD stable/10 version checks for the availability of the 2015-02-26 22:22:06 +00:00
mpt Squelch a (bogus) used before init warning when building with gcc. 2014-11-23 21:37:33 +00:00
mrsas Use struct thread directly instead of d_thread_t. This driver is not 2015-01-06 15:41:23 +00:00
mse
msk
mvs Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
mwl Fix compilation with GCC in the PAE case. 2015-02-10 21:33:32 +00:00
mxge Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
my In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
nand
ncr
ncv Lock the scsi_low code and the drivers which use it along with other 2014-11-20 20:50:05 +00:00
netfpga10g/nf10bmac
netmap Add native netmap support to ixl. 2015-02-24 06:20:50 +00:00
nfe
nfsmb
nge Receive filter configuration is done in nge_rxfilter(). Remove 2015-01-12 07:43:19 +00:00
nmdm
nsp Lock the scsi_low code and the drivers which use it along with other 2014-11-20 20:50:05 +00:00
ntb
null Add missing privilege check when setting the dump device. Before that change it 2014-11-11 04:48:09 +00:00
nvd
nvme
nvram
nvram2env
nxge
oce srandom has no influence on read_random, at least not this late... 2015-02-13 19:44:04 +00:00
ofw Adda function to iterate over the cpu nodes in the OFW or FDT data. This 2015-02-19 16:34:48 +00:00
patm To ease changes to underlying mbuf structure and the mbuf allocator, reduce 2015-01-05 09:58:32 +00:00
pbio
pccard Remove unused PCMCIA_CARD* macros. 2014-12-03 00:47:05 +00:00
pccbb On my Lenovo T400, a Atheros 2413 has a problem powering up 2015-02-18 05:53:04 +00:00
pcf
pci Allocate PCI I/O memory spaces for VFs 2015-03-01 00:40:26 +00:00
pcn In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
pdq In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
powermac_nvram
ppbus
ppc
proto
pst Cleanups to pst(4): 2014-11-18 21:58:57 +00:00
pty
puc puc(4): Add an entry for the Feasso PCI FPP-02 2S1P card. 2015-01-02 22:45:55 +00:00
qlxgb
qlxgbe Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
qlxge Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
quicc
ral Add preliminary support for the Ralink RT5390 and RT5392 chipsets. 2015-02-11 05:25:23 +00:00
random - fortuna.c: catch up with r278927 and fix a buffer overflow by using the 2015-02-18 08:21:51 +00:00
rc
re
rl
rndtest
rp Use the callout(9) API instead of timeout(9). To do this more cleanly, 2014-11-11 18:15:05 +00:00
rt
safe In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
sbni In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
scc
scd Add locking to scd(4) and mark MPSAFE. 2014-11-18 22:02:37 +00:00
sdhci Detect, report and use 8-bit bus if is available. 2015-02-27 15:47:30 +00:00
sec
sf
sfxge Unbreak 'make depend' with sfxge by removing debugging code activated in the 2015-02-28 21:50:04 +00:00
sge
si Fix build of si(4) and enable it in LINT on amd64 and i386. 2014-08-20 16:07:17 +00:00
siba
siis Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
sio
sis Enable receive filter in sis_rxfilter(). 2015-01-12 07:37:06 +00:00
sk
smbus
smc o Correct the calculation how many pages we need 2015-02-13 11:13:08 +00:00
sn In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
snc In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
snp
sound Revert r274918 and make a better solution. Poll the synchronisation 2015-02-10 12:08:52 +00:00
speaker
spibus Add copyright statement I should have had on these files in 2006, 2015-02-18 14:33:33 +00:00
ste
stg Lock the scsi_low code and the drivers which use it along with other 2014-11-20 20:50:05 +00:00
stge
streams Remove the no-at variants of the kern_xx() syscall helpers. E.g., we 2014-11-13 18:01:51 +00:00
sym Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
syscons hook userland threads suspend + resume into acpi suspend code 2015-01-27 17:33:18 +00:00
tdfx
terasic Merge from CheriBSD: 2014-11-21 21:34:19 +00:00
ti In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
tl In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
tpm
trm Prevent overflow issues in timeout processing 2014-11-21 21:01:24 +00:00
tsec
twa
twe
tws Use struct thread * directly instead of d_thread_t. This driver is not 2015-01-05 19:49:20 +00:00
tx
txp
uart Enable 'receive timeout' interrupt allowing us to not 2015-02-24 15:35:26 +00:00
ubsec
usb Add ugen keyword to USB pnpinfo. Remove extra space from existing pnpinfo. 2015-02-25 08:35:00 +00:00
utopia
vge
viapm
viawd
videomode Import videomode code from NetBSD which is needed by USB display link drivers. 2015-02-15 11:37:40 +00:00
virtio Rework vtblk dump handling of in flight requests 2015-01-27 05:34:46 +00:00
vkbd
vmware/vmxnet3 Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
vr
vt vt: move suspend/resume event handlers registration outside of mutex scope 2015-02-16 13:02:00 +00:00
vte
vx In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
vxge Start process of removing the use of the deprecated "M_FLOWID" flag 2014-12-01 11:45:24 +00:00
watchdog Add a missing include of an options header. 2015-02-28 22:37:48 +00:00
wb In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
wbwd
wds Add locking to wds(4) and mark MPSAFE. 2014-11-18 22:12:51 +00:00
wi Retire old, transition code for managing the FreeBSD 5 -> 6 migration. 2014-11-22 18:40:14 +00:00
wl Various fixes for wl(4): 2014-11-20 20:09:18 +00:00
wpi More fixes to wpi(4), again not by me! Woo! 2015-02-14 17:45:53 +00:00
wtap
xe In order to reduce use of M_EXT outside of the mbuf allocator and 2015-01-06 12:59:37 +00:00
xen netback: disable GSO 2015-02-28 15:21:06 +00:00
xl Mechanically convert to if_inc_counter(). 2014-09-18 20:35:22 +00:00