History log of /dpdk/drivers/net/mana/mana.h (Results 1 – 25 of 28)
Revision Date Author Comments
# 2b843cac 13-Dec-2023 David Marchand <david.marchand@redhat.com>

drivers: use per line logging in helpers

Use RTE_LOG(_DP)?_LINE(_PREFIX)? in existing macros that append a \n.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Chengwen Feng <fen

drivers: use per line logging in helpers

Use RTE_LOG(_DP)?_LINE(_PREFIX)? in existing macros that append a \n.

Signed-off-by: David Marchand <david.marchand@redhat.com>
Acked-by: Chengwen Feng <fengchengwen@huawei.com>
Acked-by: Andrew Rybchenko <andrew.rybchenko@oktetlabs.ru>
Acked-by: Thomas Monjalon <thomas@monjalon.net>

show more ...


# f8a4217d 13-Mar-2024 Wei Hu <weh@microsoft.com>

net/mana: support VLAN tagging

For Tx path, use LONG_PACKET_FORMAT if VLAN tag is present.
For Rx, extract VLAN id from oob, put into mbuf and set the VLAN flags
in mbuf.

Signed-off-by: Wei Hu <weh

net/mana: support VLAN tagging

For Tx path, use LONG_PACKET_FORMAT if VLAN tag is present.
For Rx, extract VLAN id from oob, put into mbuf and set the VLAN flags
in mbuf.

Signed-off-by: Wei Hu <weh@microsoft.com>
Acked-by: Long Li <longli@microsoft.com>

show more ...


# 0c7bc26b 09-Feb-2024 Long Li <longli@microsoft.com>

net/mana: handle MR cache expansion failure

On MR cache expansion failure, the request should fail as there is no
path to get a new MR into the tree. Attempting to insert a new MR to the
cache tree

net/mana: handle MR cache expansion failure

On MR cache expansion failure, the request should fail as there is no
path to get a new MR into the tree. Attempting to insert a new MR to the
cache tree will result in memory violation.

Fixes: 0f5db3c68ba7 ("net/mana: implement memory registration")
Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 7d79530e 20-Jan-2024 Long Li <longli@microsoft.com>

net/mana: rename function that returns memory region

The function name mana_find_pmd_mr() is misleading as there might be
allocations to get a MR. Change function name to mana_alloc_pmd_mr().

Signe

net/mana: rename function that returns memory region

The function name mana_find_pmd_mr() is misleading as there might be
allocations to get a MR. Change function name to mana_alloc_pmd_mr().

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 3178e37c 18-Dec-2023 David Marchand <david.marchand@redhat.com>

drivers: use dedicated logtypes

When a driver dedicated logtype exists, use it instead of the generic
PMD logtype.

This has been done partially automatically with:

$ for file in $(git grep -l RTE_

drivers: use dedicated logtypes

When a driver dedicated logtype exists, use it instead of the generic
PMD logtype.

This has been done partially automatically with:

$ for file in $(git grep -l RTE_LOG.*PMD.*fmt drivers/'**.h' \
:^drivers/common/cnxk/roc_platform.h)
do
tail=${file#drivers/*/*/}
dir=${file%%$tail}
! git grep -q RTE_LOGTYPE_ $dir || \
{ echo $dir already done; continue; }
git grep -hE '^extern int .*log.*;$' $file | \
sed -ne 's/^extern int \([^ ;]*\);$/\1/p' | \
while read logtype
do
git grep -q 'RTE_LOG_REGISTER\(_DEFAULT\|\)('$logtype',' || \
[ "$logtype" != "${logtype%%driver}" ] || \
{ echo Skipped $logtype; continue; }
abbrev=$(echo $logtype | sed -e 's/_logtype//' | tr '[a-z]' '[A-Z]')
sed -i -e 's/^\(extern int '$logtype'.*\)$/\1\n#define RTE_LOGTYPE_' \
$abbrev' '$logtype'/' $file
sed -i -e 's/\(RTE_LOG.*, \)PMD,/\1'$abbrev',/' $file
break
done
done

Then a manual update for:
- common/cpt,
- common/dpaax,
- common/idpf,
- mempool/dpaa,
- net/bnxt,
- net/octeon_ep,
- raw/ifpga,
- vdpa/ifc,

Signed-off-by: David Marchand <david.marchand@redhat.com>
Reviewed-by: Stephen Hemminger <stephen@networkplumber.org>
Reviewed-by: Maxime Coquelin <maxime.coquelin@redhat.com>

show more ...


# ee15bf9d 13-Oct-2023 Long Li <longli@microsoft.com>

net/mana: add missing new line to data path logs

Add a missing "\n" to DP logs. This makes the logs correctly formatted.

Fixes: e2d3a3c060c4 ("net/mana: use datapath logging")
Cc: stable@dpdk.org

net/mana: add missing new line to data path logs

Add a missing "\n" to DP logs. This makes the logs correctly formatted.

Fixes: e2d3a3c060c4 ("net/mana: use datapath logging")
Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 84497839 25-Jul-2023 Long Li <longli@microsoft.com>

net/mana: support MTU update

Add support for updating MTU for MANA. MTU is updated in kernel through
socket interface.

Signed-off-by: Long Li <longli@microsoft.com>


# 26c6bdf3 21-Sep-2023 Wei Hu <weh@microsoft.com>

net/mana: add 32-bit short doorbell

Add 32-bit short doorbell support.
Ring short doorbell when running in 32-bit applications.

Both 32-bit and 64-bit doorbells are supported by mana hardware on
sa

net/mana: add 32-bit short doorbell

Add 32-bit short doorbell support.
Ring short doorbell when running in 32-bit applications.

Both 32-bit and 64-bit doorbells are supported by mana hardware on
same platform. 32-bit applications cannot use 64-bit doorbells.
64-bit applications can use 32-bit doorbells, however the performance
would greatly suffer and it is not recommended.

Cc: stable@dpdk.org

Signed-off-by: Wei Hu <weh@microsoft.com>
Acked-by: Long Li <longli@microsoft.com>

show more ...


# 304ad326 10-Jul-2023 Long Li <longli@microsoft.com>

net/mana: fix WQE count for ringing RQ doorbell

The hardware specification specifies that WQE_COUNT should set to 0 for
the Receive Queue. Although currently the hardware doesn't enforce the
check,

net/mana: fix WQE count for ringing RQ doorbell

The hardware specification specifies that WQE_COUNT should set to 0 for
the Receive Queue. Although currently the hardware doesn't enforce the
check, in the future releases it may check on this value.

Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 3409e0f1 06-May-2023 Long Li <longli@microsoft.com>

net/mana: implement Rx CQE coalescing

With RX coalescing, one CQE entry can be used to indicate up to 4
packets on the receive queue. This saves processing time and PCI
bandwidth over the CQ.

Signe

net/mana: implement Rx CQE coalescing

With RX coalescing, one CQE entry can be used to indicate up to 4
packets on the receive queue. This saves processing time and PCI
bandwidth over the CQ.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# cce2c9df 06-May-2023 Long Li <longli@microsoft.com>

net/mana: suppress Tx CQE generation whenever possible

When sending TX packets, we don't need a completion for every packet
sent.
If packets are sent in a series, the completion of the last packet c

net/mana: suppress Tx CQE generation whenever possible

When sending TX packets, we don't need a completion for every packet
sent.
If packets are sent in a series, the completion of the last packet can
be used to indicate completion of all prior packets.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 31124619 17-Mar-2023 Long Li <longli@microsoft.com>

net/mana: optimize completion queue by batch processing

We can poll completion queues in a batch to speed up completion processing.
Also, the completion data doesn't need to be copied out of the har

net/mana: optimize completion queue by batch processing

We can poll completion queues in a batch to speed up completion processing.
Also, the completion data doesn't need to be copied out of the hardware
queue and they can be passed as pointers to be consumed by the RX/TX code.

Fixes: 517ed6e2d590 ("net/mana: add basic driver with build environment")
Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# b5dfcaec 17-Mar-2023 Long Li <longli@microsoft.com>

net/mana: avoid unnecessary assignments in data path

Unnecessary assignments involve memset and waste CPU cycles.
Removing them to reduce CPU usage.

Fixes: 517ed6e2d590 ("net/mana: add basic driver

net/mana: avoid unnecessary assignments in data path

Unnecessary assignments involve memset and waste CPU cycles.
Removing them to reduce CPU usage.

Fixes: 517ed6e2d590 ("net/mana: add basic driver with build environment")
Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# e2d3a3c0 21-Feb-2023 Long Li <longli@microsoft.com>

net/mana: use datapath logging

Change all the logging statements on the datapath to use RTE_LOG_DP() to
reduce CPU overhead when logging is not enabled for datapath.

Fixes: 517ed6e2d590 ("net/mana:

net/mana: use datapath logging

Change all the logging statements on the datapath to use RTE_LOG_DP() to
reduce CPU overhead when logging is not enabled for datapath.

Fixes: 517ed6e2d590 ("net/mana: add basic driver with build environment")
Cc: stable@dpdk.org

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# afd5d170 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: support Rx interrupts

mana can receive Rx interrupts from kernel through RDMA verbs interface.
Implement Rx interrupts in the driver.

Signed-off-by: Long Li <longli@microsoft.com>


# 7f322844 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: send packets

With all the TX queues created, MANA can send packets over those queues.

Signed-off-by: Long Li <longli@microsoft.com>


# eb9994dd 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: receive packets

With all the RX queues created, MANA can use those queues to receive
packets.

Signed-off-by: Long Li <longli@microsoft.com>


# 5f705ac2 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: start/stop Rx queues

MANA allocates device queues through the IB layer when starting Rx queues.
When device is stopped all the queues are unmapped and freed.

Signed-off-by: Long Li <longl

net/mana: start/stop Rx queues

MANA allocates device queues through the IB layer when starting Rx queues.
When device is stopped all the queues are unmapped and freed.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 410333da 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: start/stop Tx queues

MANA allocate device queues through the IB layer when starting Tx queues.
When device is stopped all the queues are unmapped and freed.

Signed-off-by: Long Li <longli

net/mana: start/stop Tx queues

MANA allocate device queues through the IB layer when starting Tx queues.
When device is stopped all the queues are unmapped and freed.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 56dd45c0 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: implement hardware layer operations

The hardware layer of MANA understands the device queue and doorbell
formats. Those functions are implemented for use by packet RX/TX code.

Signed-off-

net/mana: implement hardware layer operations

The hardware layer of MANA understands the device queue and doorbell
formats. Those functions are implemented for use by packet RX/TX code.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# 0f5db3c6 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: implement memory registration

MANA hardware has iommu built-in, that provides hardware safe access to
user memory through memory registration. Since memory registration is an
expensive ope

net/mana: implement memory registration

MANA hardware has iommu built-in, that provides hardware safe access to
user memory through memory registration. Since memory registration is an
expensive operation, this patch implements a two level memory registration
cache mechanisum for each queue and for each port.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# f7dc479a 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: configure Tx queues

Tx hardware queue is allocated when starting the queue, this is for
pre configuration.

Signed-off-by: Long Li <longli@microsoft.com>


# 0c63c005 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: configure Rx queues

Rx hardware queue is allocated when starting the queue. This function is
for queue configuration pre starting.

Signed-off-by: Long Li <longli@microsoft.com>


# a382177c 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: configure RSS

Currently this PMD supports RSS configuration when the device is stopped.
Configuring RSS in running state will be supported in the future.

Signed-off-by: Long Li <longli@mi

net/mana: configure RSS

Currently this PMD supports RSS configuration when the device is stopped.
Configuring RSS in running state will be supported in the future.

Signed-off-by: Long Li <longli@microsoft.com>

show more ...


# d878cb09 05-Oct-2022 Long Li <longli@microsoft.com>

net/mana: report device info

Add the function to get device info.

Signed-off-by: Long Li <longli@microsoft.com>


12