/freebsd/share/man/man9/ |
H A D | pci_iov_schema.9 | 39 .Nd PCI SR-IOV config schema interface 68 The PCI Single-Root I/O Virtualization 69 .Pq SR-IOV 71 structure that describes the device-specific configuration parameters that a PF 72 driver will accept when SR-IOV is enabled on the PF device. 83 Configuration parameter names are case-insensitive. 87 name as a configuration parameter used by the SR-IOV infrastructure. 90 for documentation of all configuration parameters used by the SR-IOV 102 Required parameters must be specified by the user when SR-IOV is enabled. 103 If the user does not specify a required parameter, the SR-IOV infrastructure [all …]
|
H A D | PCI_IOV_UNINIT.9 | 31 .Nd disable SR-IOV on a PF device 40 method is called by the PCI Single-Root I/O Virtualization (SR-IOV) 41 infrastructure when the user requests that SR-IOV be disabled on a Physical 43 When this method is called, the PF driver must release any SR-IOV-related 44 resources that it has allocated and disable any device-specific SR-IOV
|
H A D | PCI_IOV_INIT.9 | 31 .Nd enable SR-IOV on a PF device 42 method is called by the PCI Single-Root I/O Virtualization (SR-IOV) 43 infrastructure when the user requests that SR-IOV be enabled on a Physical 50 If the driver requested device-specific PF configuration parameters via a PF 73 If this method returns an error then the SR-IOV configuration will be aborted
|
H A D | pci.9 | 223 function is used to modify the value of a register in the PCI-express 242 function is used to read the value of a register in the PCI-express 255 to a register in the PCI-express capability register set of device 288 .Bd -literal -offset indent 359 function is used to locate the first instance of a PCI-express 375 PCI-express device, 380 function is used to locate the next instance of a PCI-express 434 function walks up the PCI device hierarchy to locate the PCI-express root 449 .Bl -hang -width ".Dv PCI_ID_RID" 454 This is needed by some interrupt controllers to route MSI and MSI-X interrupts. [all …]
|
H A D | PCI_IOV_ADD_VF.9 | 42 method is called by the PCI Single-Root I/O Virtualization 43 .Pq SR-IOV 65 If the driver requested device-specific configuration parameters via a VF schema 100 but the rest of the VF devices will be created and SR-IOV will be enabled on
|
/freebsd/sys/dev/pci/ |
H A D | pci_iov.c | 1 /*- 2 * Copyright (c) 2013-2015 Sandvine Inc. 37 #include <sys/iov.h> 63 static MALLOC_DEFINE(M_SRIOV, "sr_iov", "PCI SR-IOV allocations"); 69 .d_name = "iov", 77 * SR-IOV device. 1MB ought to be enough for anyone, but leave this 82 &pci_iov_max_config, 0, "Maximum allowed size of SR-IOV configuration."); 85 pci_read_config((d)->cfg.dev, (d)->cfg.iov->iov_pos + r, w) 88 pci_write_config((d)->cfg.dev, (d)->cfg.iov->iov_pos + r, v, w) 119 struct pcicfg_iov *iov; in pci_iov_attach_method() local [all …]
|
H A D | pcivar.h | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 42 /* Config registers for PCI-PCI and PCI-Cardbus bridges. */ 100 /* Interesting values for PCI MSI-X */ 108 u_int mte_vector; /* 1-based index into msix_vectors array. */ 115 uint8_t msix_location; /* Offset of MSI-X capability registers. */ 135 uint8_t ht_slave; /* Non-zero if device is an HT slave. */ 141 /* Interesting values for PCI-express */ 143 uint8_t pcie_location; /* Offset of PCI-e capability registers. */ 157 uint8_t pcix_location; /* Offset of PCI-X capability registers. */ [all …]
|
/freebsd/usr.sbin/iovctl/ |
H A D | iovctl.8 | 31 .Nd "PCI SR-IOV configuration utility" 35 .Fl f Ar config-file 39 .Op Fl f Ar config-file | Fl d Ar device 43 .Op Fl f Ar config-file | Fl d Ar device 47 utility creates or destroys PCI Single-Root I/O Virtualization 48 .Pq SR-IOV 64 .Pa /dev/iov/ . 67 .Bl -tag -width indent 69 Enable SR-IOV on the specified PF device and create VF children. 78 .Pa /dev/iov/ . [all …]
|
H A D | iovctl.c | 1 /*- 2 * Copyright (c) 2013-2015 Sandvine Inc. 28 #include <sys/iov.h> 89 * Call the ioctl that activates SR-IOV and creates the VFs. 102 printf("Would enable SR-IOV on device '%s'.\n", dev_name); in config_iov() 112 err(1, "Failed to configure SR-IOV"); in config_iov() 138 copied = snprintf(dev, size, "/dev/iov/%s", dev_name); in open_device() 156 warnx("Usage: iovctl -C -f <config file> [-n]"); in usage() 157 warnx(" iovctl -D [-d <PF device> | -f <config file>] [-n]"); in usage() 158 warnx(" iovctl -S [-d <PF device> | -f <config file>]"); in usage() [all …]
|
/freebsd/sys/compat/linux/ |
H A D | linux_ptrace.c | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 7 * Cambridge Computer Laboratory under DARPA/AFRL contract (FA8750-10-C-0237) 129 saved_retval = td->td_retval[0]; in linux_ptrace_status() 131 td->td_retval[0] = saved_retval; in linux_ptrace_status() 137 pem = pem_find(td->td_proc); in linux_ptrace_status() 141 if ((pem->ptrace_flags & LINUX_PTRACE_O_TRACESYSGOOD) && in linux_ptrace_status() 144 if ((pem->ptrace_flags & LINUX_PTRACE_O_TRACESYSGOOD) && in linux_ptrace_status() 151 if ((pem->ptrace_flags & LINUX_PTRACE_O_TRACEEXIT) && in linux_ptrace_status() 166 error = copyout(td->td_retval, data, sizeof(l_int)); in linux_ptrace_peek() [all …]
|
/freebsd/sys/sys/ |
H A D | iov.h | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 4 * Copyright (c) 2013-2015 Sandvine Inc. 37 #define VF_PREFIX "VF-" 43 #define IOV_CONFIG_NAME "IOV" 53 * configurations, the SR-IOV infrastructure dynamically queries the PF 60 * 1) All keys are case-insensitive. 68 * 1) There must be a top-level key with the name PF_CONFIG_NAME. The value 72 * 2) There must be a top-level key with the name VF_SCHEMA_NAME. The value 86 * parameters that are applied by the SR-IOV infrastructure. [all …]
|
/freebsd/sys/dev/cxgbe/firmware/ |
H A D | t5fw_cfg_fpga.txt | 3 # Copyright (C) 2010-2013 Chelsio Communications. All rights reserved. 6 # THIS FILE WILL RESULT IN A NON-FUNCTIONAL T4 ADAPTER AND MAY RESULT 9 # This file provides the default, power-on configuration for 4-port T4-based 22 # 2. Ingress Queues with Free Lists: 1024. PCI-E SR-IOV Virtual Functions 24 # 3. Egress Queues: 128K. PCI-E SR-IOV Virtual Functions must use a 26 # 4. MSI-X Vectors: 1088. A complication here is that the PCI-E SR-IOV 28 # same umber of MSI-X Vectors as the base Physical Function. 30 # not, their MSI-X "needs" are counted by the PCI-E implementation. 32 # Functions (PF0-3) must have the same number of configured TotalVFs in 33 # their SR-IOV Capabilities. [all …]
|
H A D | t4fw_cfg_uwire.txt | 3 # Copyright (C) 2010-2017 Chelsio Communications. All rights reserved. 6 # THIS FILE WILL RESULT IN A NON-FUNCTIONAL T4 ADAPTER AND MAY RESULT 9 # This file provides the default, power-on configuration for 4-port T4-based 22 # 2. Ingress Queues with Free Lists: 1024. PCI-E SR-IOV Virtual Functions 24 # 3. Egress Queues: 128K. PCI-E SR-IOV Virtual Functions must use a 26 # 4. MSI-X Vectors: 1088. A complication here is that the PCI-E SR-IOV 28 # same umber of MSI-X Vectors as the base Physical Function. 30 # not, their MSI-X "needs" are counted by the PCI-E implementation. 32 # Functions (PF0-3) must have the same number of configured TotalVFs in 33 # their SR-IOV Capabilities. [all …]
|
/freebsd/sys/dev/ixl/ |
H A D | ixl_pf_iov.h | 3 Copyright (c) 2013-2018, Intel Corporation 47 * These three are DEVMETHODs required for SR-IOV PF support in iflib. 55 * SR-IOV mode is active.
|
/freebsd/sys/kern/ |
H A D | sys_process.c | 1 /*- 2 * SPDX-License-Identifier: BSD-4-Clause 72 #define PROC_ASSERT_TRACEREQ(p) MPASS(((p)->p_flag2 & P2_PTRACEREQ) != 0) 78 * Get the current user-visible register set from the process 86 * Depending on the architecture this may have fix-up work to do, 103 PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); in proc_read_regs() 110 PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); in proc_write_regs() 117 PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); in proc_read_dbregs() 124 PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); in proc_write_dbregs() 135 PROC_LOCK_ASSERT(td->td_proc, MA_OWNED); in proc_read_fpregs() [all …]
|
/freebsd/sys/dev/qat/qat_common/ |
H A D | adf_isr.c | 1 /* SPDX-License-Identifier: BSD-3-Clause */ 2 /* Copyright(c) 2007-2022 Intel Corporation */ 32 struct adf_accel_pci *info_pci_dev = &accel_dev->accel_pci_dev; in adf_enable_msix() 33 struct adf_hw_device_data *hw_data = accel_dev->hw_device; in adf_enable_msix() 40 if (hw_data->set_msix_rttable) in adf_enable_msix() 41 hw_data->set_msix_rttable(accel_dev); in adf_enable_msix() 43 /* If SR-IOV is disabled, add entries for each bank */ in adf_enable_msix() 44 if (!accel_dev->u1.pf.vf_info) { in adf_enable_msix() 45 msix_num_entries += hw_data->num_banks; in adf_enable_msix() 49 num_vectors = hw_data->num_banks + 1; in adf_enable_msix() [all …]
|
/freebsd/sys/dev/ixgbe/ |
H A D | if_sriov.c | 3 Copyright (c) 2001-2017, Intel Corporation 41 MALLOC_DEFINE(M_IXGBE_SRIOV, "ix_sriov", "ix SR-IOV allocations"); 62 pci_iov_schema_add_unicast_mac(vf_schema, "mac-addr", 0, NULL); in ixgbe_define_iov_schemas() 63 pci_iov_schema_add_bool(vf_schema, "mac-anti-spoof", in ixgbe_define_iov_schemas() 65 pci_iov_schema_add_bool(vf_schema, "allow-set-mac", in ixgbe_define_iov_schemas() 67 pci_iov_schema_add_bool(vf_schema, "allow-promisc", in ixgbe_define_iov_schemas() 72 "Error %d setting up SR-IOV\n", *error); in ixgbe_define_iov_schemas() 85 for (i = 0; i < sc->num_rx_queues; i++) { in ixgbe_align_all_queue_indices() 86 index = ixgbe_vf_que_index(sc->iov_mode, sc->pool, i); in ixgbe_align_all_queue_indices() 87 sc->rx_queues[i].rxr.me = index; in ixgbe_align_all_queue_indices() [all …]
|
/freebsd/sys/dev/vnic/ |
H A D | nic_main.c | 32 * ---------------------- 36 * - PR223573 multicast rx filter 37 * - PR223575 non-promiscuous mode (driver currently forces promisc) 89 /* Structure to be used by the SR-IOV for VF configuration schemas */ 116 /* MSI-X */ 138 /* PCI SR-IOV interface */ 196 nic->dev = dev; in nicpf_attach() 208 nic->node = nic_get_node_id(nic->reg_base); in nicpf_attach() 211 nic->flags &= ~NIC_TNS_ENABLED; in nicpf_attach() 218 nic->rss_ind_tbl_size = NIC_MAX_RSS_IDR_TBL_SIZE; in nicpf_attach() [all …]
|
/freebsd/sys/dev/hyperv/netvsc/ |
H A D | if_hnvar.h | 1 /*- 2 * Copyright (c) 2016-2017 Microsoft Corp. 37 #define HN_MTU_MAX (65535 - ETHER_ADDR_LEN) 73 if_t hn_rxvf_ifp; /* SR-IOV VF for RX */ 79 uint8_t *hn_rxbuf; /* shadow sc->hn_rxbuf */ 189 * Device-specific softc structure 204 if_t hn_vf_ifp; /* SR-IOV VF */ 306 (sc)->hn_flags |= HN_FLAG_NO_SLEEPING; \ 311 (sc)->hn_flags &= ~HN_FLAG_NO_SLEEPING; \ 315 (((sc)->hn_flags & HN_FLAG_NO_SLEEPING) == 0)
|
/freebsd/sys/contrib/device-tree/Bindings/net/ |
H A D | fsl,enetc.yaml | 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 3 --- 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 12 (SR-IOV), advanced QoS with 8 traffic classes and 4 drop resilience levels, 16 - Frank Li <Frank.Li@nxp.com> 17 - Vladimir Oltean <vladimir.oltean@nxp.com> 18 - Wei Fang <wei.fang@nxp.com> 19 - Claudiu Manoil <claudiu.manoil@nxp.com> 24 - enum: 25 - pci1957,e100 [all …]
|
/freebsd/share/man/man4/ |
H A D | pci.4 | 35 .Bd -ragged -offset indent 40 .Pq SR-IOV : 41 .Bd -ragged -offset indent 45 To compile in support for native PCI-express HotPlug: 46 .Bd -ragged -offset indent 91 or a BAR read access could have function-specific side-effects. 113 driver also includes support for PCI-PCI bridges, 114 various platform-specific Host-PCI bridges, 126 .Bl -tag -width 012345678901234 147 .Bl -tag -width match_buf_len [all …]
|
/freebsd/sys/compat/freebsd32/ |
H A D | freebsd32_misc.c | 1 /*- 2 * SPDX-License-Identifier: BSD-2-Clause 136 FEATURE_ADD("compat_freebsd32", "Compatible with 32-bit FreeBSD"); in register_compat32_feature() 138 "Compatible with 32-bit FreeBSD (legacy feature name)"); in register_compat32_feature() 231 if (uap->rusage != NULL) in freebsd32_wait4() 235 error = kern_wait(td, uap->pid, &status, uap->options, rup); in freebsd32_wait4() 238 if (uap->status != NULL) in freebsd32_wait4() 239 error = copyout(&status, uap->status, sizeof(status)); in freebsd32_wait4() 240 if (uap->rusage != NULL && error == 0) { in freebsd32_wait4() 242 error = copyout(&ru32, uap->rusage, sizeof(ru32)); in freebsd32_wait4() [all …]
|
/freebsd/sys/dev/cxgbe/ |
H A D | t4_iov.c | 1 /*- 2 * Copyright (c) 2015-2016 Chelsio Communications, Inc. 34 #include <sys/iov.h> 65 {0x4000, "Chelsio T440-dbg"}, 66 {0x4001, "Chelsio T420-CR"}, 67 {0x4002, "Chelsio T422-CR"}, 68 {0x4003, "Chelsio T440-CR"}, 69 {0x4004, "Chelsio T420-BCH"}, 70 {0x4005, "Chelsio T440-BCH"}, 71 {0x4006, "Chelsio T440-CH"}, [all …]
|
/freebsd/contrib/ofed/libcxgb4/ |
H A D | t4_pci_id_tbl.h | 4 * Copyright (c) 2003-2014 Chelsio Communications, Inc. All rights reserved. 16 * - Redistributions of source code must retain the above 20 * - Redistributions in binary form must reproduce the above 43 * -- Used to start the definition of the PCI ID Table. 46 * -- The PCI Function Number to use in the PCI Device ID Table. "0" 47 * -- for drivers attaching to PF0-3, "4" for drivers attaching to PF4, 48 * -- "8" for drivers attaching to SR-IOV Virtual Functions, etc. 51 * -- If defined, create a PCI Device ID Table with both 52 * -- CH_PCI_DEVICE_ID_FUNCTION and CH_PCI_DEVICE_ID_FUNCTION2 populated. 55 * -- Used for the individual PCI Device ID entries. Note that we will [all …]
|
/freebsd/sys/dev/qlnx/qlnxe/ |
H A D | ecore_iov_api.h | 2 * Copyright (c) 2017-2018 Cavium, Inc. 39 #define IS_VF(p_dev) ((p_dev)->b_is_vf) 40 #define IS_PF(p_dev) (!((p_dev)->b_is_vf)) 42 #define IS_PF_SRIOV(p_hwfn) (!!((p_hwfn)->p_dev->p_iov_info)) 46 #define IS_PF_SRIOV_ALLOC(p_hwfn) (!!((p_hwfn)->pf_iov_info)) 49 /* @@@ TBD MichalK - what should this number be*/ 65 /*PF to VF STATUS is part of vfpf-channel API 81 /* These defines are used by the hw-channel; should never change order */ 108 /* TODO - remove this limitation */ 112 * and which queue_base to use for Tx queues on a per-queue basis. [all …]
|