Add structures for VF-specific adapter parameters.

While here, mark which parameters are PF-specific and which are
VF-specific.

Sponsored by:	Chelsio Communications
Differential Revision:	https://reviews.freebsd.org/D7508
This commit is contained in:
John Baldwin 2016-08-19 17:49:49 +00:00
parent a5c3c5b14f
commit 577422fc53
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=304479

View File

@ -280,12 +280,52 @@ struct chip_params {
u16 mps_tcam_size;
};
/* VF-only parameters. */
/*
* Global Receive Side Scaling (RSS) parameters in host-native format.
*/
struct rss_params {
unsigned int mode; /* RSS mode */
union {
struct {
u_int synmapen:1; /* SYN Map Enable */
u_int syn4tupenipv6:1; /* enable hashing 4-tuple IPv6 SYNs */
u_int syn2tupenipv6:1; /* enable hashing 2-tuple IPv6 SYNs */
u_int syn4tupenipv4:1; /* enable hashing 4-tuple IPv4 SYNs */
u_int syn2tupenipv4:1; /* enable hashing 2-tuple IPv4 SYNs */
u_int ofdmapen:1; /* Offload Map Enable */
u_int tnlmapen:1; /* Tunnel Map Enable */
u_int tnlalllookup:1; /* Tunnel All Lookup */
u_int hashtoeplitz:1; /* use Toeplitz hash */
} basicvirtual;
} u;
};
/*
* Maximum resources provisioned for a PCI VF.
*/
struct vf_resources {
unsigned int nvi; /* N virtual interfaces */
unsigned int neq; /* N egress Qs */
unsigned int nethctrl; /* N egress ETH or CTRL Qs */
unsigned int niqflint; /* N ingress Qs/w free list(s) & intr */
unsigned int niq; /* N ingress Qs */
unsigned int tc; /* PCI-E traffic class */
unsigned int pmask; /* port access rights mask */
unsigned int nexactf; /* N exact MPS filters */
unsigned int r_caps; /* read capabilities */
unsigned int wx_caps; /* write/execute capabilities */
};
struct adapter_params {
struct sge_params sge;
struct tp_params tp;
struct tp_params tp; /* PF-only */
struct vpd_params vpd;
struct pci_params pci;
struct devlog_params devlog;
struct devlog_params devlog; /* PF-only */
struct rss_params rss; /* VF-only */
struct vf_resources vfres; /* VF-only */
unsigned int sf_size; /* serial flash size in bytes */
unsigned int sf_nsec; /* # of flash sectors */