|
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1, v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2, v21.11-rc1 |
|
| #
295968d1 |
| 22-Oct-2021 |
Ferruh Yigit <[email protected]> |
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to
ethdev: add namespace
Add 'RTE_ETH' namespace to all enums & macros in a backward compatible way. The macros for backward compatibility can be removed in next LTS. Also updated some struct names to have 'rte_eth' prefix.
All internal components switched to using new names.
Syntax fixed on lines that this patch touches.
Signed-off-by: Ferruh Yigit <[email protected]> Acked-by: Tyler Retzlaff <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Jerin Jacob <[email protected]> Acked-by: Wisam Jaddo <[email protected]> Acked-by: Rosen Xu <[email protected]> Acked-by: Chenbo Xia <[email protected]> Acked-by: Hemant Agrawal <[email protected]> Acked-by: Somnath Kotur <[email protected]>
show more ...
|
| #
7483341a |
| 06-Oct-2021 |
Xueming Li <[email protected]> |
ethdev: change queue release callback
Currently, most ethdev callback API use queue ID as parameter, but Rx and Tx queue release callback use queue object which is used by Rx and Tx burst data plane
ethdev: change queue release callback
Currently, most ethdev callback API use queue ID as parameter, but Rx and Tx queue release callback use queue object which is used by Rx and Tx burst data plane callback.
To align with other eth device queue configuration callbacks: - queue release callbacks are changed to use queue ID - all drivers are adapted
Signed-off-by: Xueming Li <[email protected]> Reviewed-by: Andrew Rybchenko <[email protected]> Acked-by: Ajit Khaparde <[email protected]> Acked-by: Somnath Kotur <[email protected]> Acked-by: Ferruh Yigit <[email protected]>
show more ...
|
|
Revision tags: v21.08, v21.08-rc4, v21.08-rc3, v21.08-rc2, v21.08-rc1, v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2, v21.05-rc1 |
|
| #
924e6b76 |
| 25-Feb-2021 |
Thomas Monjalon <[email protected]> |
drivers: replace page size definitions with function
The page size is often retrieved from the macro PAGE_SIZE. If PAGE_SIZE is not defined, it is either using hard coded default, or getting the sys
drivers: replace page size definitions with function
The page size is often retrieved from the macro PAGE_SIZE. If PAGE_SIZE is not defined, it is either using hard coded default, or getting the system value from the UNIX-only function sysconf().
Such definitions are replaced with the generic function rte_mem_page_size() defined for each supported OS.
Removing PAGE_SIZE definitions will fix dlb drivers for musl libc, because #ifdef checks were missing, causing redefinition errors.
Signed-off-by: Thomas Monjalon <[email protected]> Acked-by: Andrew Boyer <[email protected]> Acked-by: Andrew Rybchenko <[email protected]> Acked-by: David Marchand <[email protected]> Acked-by: Timothy McDaniel <[email protected]>
show more ...
|
| #
656bfc9a |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: fix completion type in lif init
The completion type was wrong. Don't check the completion if the wait timed out.
Fixes: 669c8de67c88 ("net/ionic: support basic LIF") Cc: [email protected]
net/ionic: fix completion type in lif init
The completion type was wrong. Don't check the completion if the wait timed out.
Fixes: 669c8de67c88 ("net/ionic: support basic LIF") Cc: [email protected]
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
e19eea1e |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: store Tx fragment limit in queue
A future patch will allow Tx scatter/gather to be disabled. Store the value in the queue so it can be changed at runtime based on the configuration.
Sign
net/ionic: store Tx fragment limit in queue
A future patch will allow Tx scatter/gather to be disabled. Store the value in the queue so it can be changed at runtime based on the configuration.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
8ec5ad7f |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: use socket id passed in for Rx and Tx queues
Pipe the value from the queue setup routines through to ionic_qcq_alloc().
Signed-off-by: Andrew Boyer <[email protected]>
|
| #
be39f75c |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: split up queue-completion queue structure
Create a unique Q-CQ struct for adminq, notifyq, rxq, and txq to reduce the size of each object.
Minimize the size of each field to squeeze into
net/ionic: split up queue-completion queue structure
Create a unique Q-CQ struct for adminq, notifyq, rxq, and txq to reduce the size of each object.
Minimize the size of each field to squeeze into as few cachelines as possible.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
4ad56b7a |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: cut down queue structure
This will conserve resources.
Rename ionic_qcq_alloc() arg from 'base' to 'type_name' for clarity.
Signed-off-by: Andrew Boyer <[email protected]>
|
| #
aeb70a00 |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: remove unused interrupt free function
This will conserve resources.
Signed-off-by: Andrew Boyer <[email protected]>
|
| #
c6a9a6fb |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: remove unused field from queue structure
This will conserve resources.
Signed-off-by: Andrew Boyer <[email protected]>
|
| #
750aebd5 |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: consolidate adminq code
The adminq is the only caller of ionic_q_service(), so absorb it into ionic_adminq_service(). Move all of the adminq code together into ionic_main.c. Staticize a f
net/ionic: consolidate adminq code
The adminq is the only caller of ionic_q_service(), so absorb it into ionic_adminq_service(). Move all of the adminq code together into ionic_main.c. Staticize a few things.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
2aed9865 |
| 16-Feb-2021 |
Andrew Boyer <[email protected]> |
net/ionic: cut down completion queue structure
Add Q_NEXT_TO_POST() and Q_NEXT_TO_SRVC() macros. Use a precomputed size mask.
This will conserve resources.
Signed-off-by: Andrew Boyer <aboyer@pens
net/ionic: cut down completion queue structure
Add Q_NEXT_TO_POST() and Q_NEXT_TO_SRVC() macros. Use a precomputed size mask.
This will conserve resources.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
|
Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2 |
|
| #
56117636 |
| 29-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: clean up Tx queue version support
The ionic PMD only supports Tx queue version 1 or greater. Version 1 introduced a new SGL format with support for more fragments per descriptor.
Add rel
net/ionic: clean up Tx queue version support
The ionic PMD only supports Tx queue version 1 or greater. Version 1 introduced a new SGL format with support for more fragments per descriptor.
Add release notes and an explanation to the docs.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
76276d71 |
| 29-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: use existing array size macro
Using the RTE_DIM() macro makes the code clearer.
Signed-off-by: Andrew Boyer <[email protected]>
|
|
Revision tags: v21.02-rc1 |
|
| #
c5d15850 |
| 18-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: query firmware for supported queue versions
This allows the PMD to better support FW changes.
Signed-off-by: Andrew Boyer <[email protected]> Signed-off-by: Shannon Nelson <snelson@pens
net/ionic: query firmware for supported queue versions
This allows the PMD to better support FW changes.
Signed-off-by: Andrew Boyer <[email protected]> Signed-off-by: Shannon Nelson <[email protected]>
show more ...
|
| #
09f806e9 |
| 18-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: observe endianness in firmware commands
The IONIC firmware is little-endian.
Signed-off-by: Andrew Boyer <[email protected]>
|
| #
4c8f8d57 |
| 18-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: strip out unneeded interrupt code
Only the NotifyQ uses an interrupt, so simplify the other queues.
Simplify ionic_dev_cmd_adminq_init() and ionic_cq_init(). Move ionic_intr_alloc() into
net/ionic: strip out unneeded interrupt code
Only the NotifyQ uses an interrupt, so simplify the other queues.
Simplify ionic_dev_cmd_adminq_init() and ionic_cq_init(). Move ionic_intr_alloc() into ionic_notify_qcq_alloc(). Create ionic_lif_notifyq_deinit(). Simplify ionic_lif_qcq_deinit(). Remove unneeded flags and defines.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
df96fd0d |
| 29-Jan-2021 |
Bruce Richardson <[email protected]> |
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by:
ethdev: make driver-only headers private
The rte_ethdev_driver.h, rte_ethdev_vdev.h and rte_ethdev_pci.h files are for drivers only and should be a private to DPDK and not installed.
Signed-off-by: Bruce Richardson <[email protected]> Reviewed-by: Maxime Coquelin <[email protected]> Acked-by: Thomas Monjalon <[email protected]> Acked-by: Steven Webster <[email protected]>
show more ...
|
| #
9c3cc2fc |
| 11-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: do not add station MAC filter on init
The address is not needed in the firmware. This reduces the startup time a bit.
Signed-off-by: Andrew Boyer <[email protected]> Signed-off-by: Neel
net/ionic: do not add station MAC filter on init
The address is not needed in the firmware. This reduces the startup time a bit.
Signed-off-by: Andrew Boyer <[email protected]> Signed-off-by: Neel Patel <[email protected]>
show more ...
|
| #
b5d9a4f0 |
| 11-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: combine queue init and enable commands
Adding F_ENA to the q_init command has the same effect as q_enable. This reduces the startup time a bit.
Signed-off-by: Andrew Boyer <aboyer@pensan
net/ionic: combine queue init and enable commands
Adding F_ENA to the q_init command has the same effect as q_enable. This reduces the startup time a bit.
Signed-off-by: Andrew Boyer <[email protected]> Signed-off-by: Neel Patel <[email protected]>
show more ...
|
| #
18a44465 |
| 11-Jan-2021 |
Andrew Boyer <[email protected]> |
net/ionic: revise configuration flag handling
Configuration flags come to the driver in dev_configure(). From there, the driver calls ionic_lif_configure() to update the lif->feature bitfield, and t
net/ionic: revise configuration flag handling
Configuration flags come to the driver in dev_configure(). From there, the driver calls ionic_lif_configure() to update the lif->feature bitfield, and then programs the port.
Features like VLAN_RX_FILTER and RX_HASH cannot be disabled in the device, so do nothing in response to requests to disable them. (The device config would ideally show them enabled by default, but some DTS tests fail if RSS_HASH is set but RSS is not.)
Move features from the per-queue to per-port lists. IONIC does not really support per-queue configuration: the stack disallows disabling a queue feature if it is enabled on the port, while the device disallows enabling a queue feature if it is disabled on the port. Thus all configuration is per-port.
Move the guts of ionic_vlan_offload_set() into a new function, ionic_lif_configure_vlan_offload(), so it can be called by ionic_lif_configure().
Move the check for DEV_RX_OFFLOAD_SCATTER from rx_queue_setup() up into ionic_lif_configure().
Warn if rx_drop_en is not set.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
a0a99f21 |
| 16-Dec-2020 |
Andrew Boyer <[email protected]> |
net/ionic: stop queues when LIF is stopped
Otherwise they cannot be restarted, because the FW will reject INIT or ENA commands on queues which are already running.
Signed-off-by: Andrew Boyer <aboy
net/ionic: stop queues when LIF is stopped
Otherwise they cannot be restarted, because the FW will reject INIT or ENA commands on queues which are already running.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
be63459e |
| 16-Dec-2020 |
Andrew Boyer <[email protected]> |
net/ionic: improve link state handling
Add UP and FW_RESET state flags. Update the stack info when the link state changes. Convert set_link_up/set_link_down to lif_start/lif_stop. Condition reported
net/ionic: improve link state handling
Add UP and FW_RESET state flags. Update the stack info when the link state changes. Convert set_link_up/set_link_down to lif_start/lif_stop. Condition reported link state on UP flag.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
175e4e7e |
| 16-Dec-2020 |
Andrew Boyer <[email protected]> |
net/ionic: complete release on close
ionic_dev_close() is responsible for destroying the ethdev, lif, and adapter. eth_ionic_dev_remove() calls ionic_dev_close().
Remove-on-close is now required be
net/ionic: complete release on close
ionic_dev_close() is responsible for destroying the ethdev, lif, and adapter. eth_ionic_dev_remove() calls ionic_dev_close().
Remove-on-close is now required behavior for a PMD. Remove the UNMAINTAINED flag.
Signed-off-by: Andrew Boyer <[email protected]>
show more ...
|
| #
00b65da5 |
| 16-Dec-2020 |
Andrew Boyer <[email protected]> |
net/ionic: remove multi-LIF support
This feature is unused, so remove it.
There is exactly one adapter / lif / ethdev per port.
Signed-off-by: Andrew Boyer <[email protected]>
|