History log of /dpdk/drivers/net/mvpp2/mrvl_ethdev.c (Results 1 – 25 of 83)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
Revision tags: v22.03, v22.03-rc4, v22.03-rc3, v22.03-rc2, v22.03-rc1
# 7be78d02 29-Nov-2021 Josh Soref <[email protected]>

fix spelling in comments and strings

The tool comes from https://github.com/jsoref

Signed-off-by: Josh Soref <[email protected]>
Signed-off-by: Thomas Monjalon <[email protected]>


Revision tags: v21.11, v21.11-rc4, v21.11-rc3, v21.11-rc2
# 2fe6f1b7 02-Nov-2021 Dmitry Kozlyuk <[email protected]>

drivers/net: advertise no support for keeping flow rules

When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero,
the specified behavior is the same as it had been before
this bit was introduced

drivers/net: advertise no support for keeping flow rules

When RTE_ETH_DEV_CAPA_FLOW_RULE_KEEP capability bit is zero,
the specified behavior is the same as it had been before
this bit was introduced. Explicitly reset it in all PMDs
supporting rte_flow API in order to attract the attention
of maintainers, who should eventually choose to advertise
the new capability or not. It is already known that
mlx4 and mlx5 will not support this capability.

For RTE_ETH_DEV_CAPA_FLOW_SHARED_OBJECT_KEEP
similar action is not performed,
because no PMD except mlx5 supports indirect actions.
Any PMD that starts doing so will anyway have to consider
all relevant API, including this capability.

Suggested-by: Ferruh Yigit <[email protected]>
Signed-off-by: Dmitry Kozlyuk <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>
Acked-by: Somnath Kotur <[email protected]>
Acked-by: Hyong Youb Kim <[email protected]>
Reviewed-by: Ferruh Yigit <[email protected]>

show more ...


Revision tags: v21.11-rc1
# daa02b5c 15-Oct-2021 Olivier Matz <[email protected]>

mbuf: add namespace to offload flags

Fix the mbuf offload flags namespace by adding an RTE_ prefix to the
name. The old flags remain usable, but a deprecation warning is issued
at compilation.

Sign

mbuf: add namespace to offload flags

Fix the mbuf offload flags namespace by adding an RTE_ prefix to the
name. The old flags remain usable, but a deprecation warning is issued
at compilation.

Signed-off-by: Olivier Matz <[email protected]>
Acked-by: Andrew Rybchenko <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>
Acked-by: Somnath Kotur <[email protected]>

show more ...


# 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 ...


# b563c142 18-Oct-2021 Ferruh Yigit <[email protected]>

ethdev: remove jumbo offload flag

Removing 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag.

Instead of drivers announce this capability, application can deduct the
capability by checking reported 'dev_in

ethdev: remove jumbo offload flag

Removing 'DEV_RX_OFFLOAD_JUMBO_FRAME' offload flag.

Instead of drivers announce this capability, application can deduct the
capability by checking reported 'dev_info.max_mtu' or
'dev_info.max_rx_pktlen'.

And instead of application setting this flag explicitly to enable jumbo
frames, this can be deduced by driver by comparing requested 'mtu' to
'RTE_ETHER_MTU'.

Removing this additional configuration for simplification.

Suggested-by: Konstantin Ananyev <[email protected]>
Signed-off-by: Ferruh Yigit <[email protected]>
Acked-by: Andrew Rybchenko <[email protected]>
Reviewed-by: Rosen Xu <[email protected]>
Acked-by: Somnath Kotur <[email protected]>
Acked-by: Konstantin Ananyev <[email protected]>
Acked-by: Huisong Li <[email protected]>
Acked-by: Hyong Youb Kim <[email protected]>
Acked-by: Michal Krawczyk <[email protected]>

show more ...


# 1bb4a528 18-Oct-2021 Ferruh Yigit <[email protected]>

ethdev: fix max Rx packet length

There is a confusion on setting max Rx packet length, this patch aims to
clarify it.

'rte_eth_dev_configure()' API accepts max Rx packet size via
'uint32_t max_rx_p

ethdev: fix max Rx packet length

There is a confusion on setting max Rx packet length, this patch aims to
clarify it.

'rte_eth_dev_configure()' API accepts max Rx packet size via
'uint32_t max_rx_pkt_len' field of the config struct 'struct
rte_eth_conf'.

Also 'rte_eth_dev_set_mtu()' API can be used to set the MTU, and result
stored into '(struct rte_eth_dev)->data->mtu'.

These two APIs are related but they work in a disconnected way, they
store the set values in different variables which makes hard to figure
out which one to use, also having two different method for a related
functionality is confusing for the users.

Other issues causing confusion is:
* maximum transmission unit (MTU) is payload of the Ethernet frame. And
'max_rx_pkt_len' is the size of the Ethernet frame. Difference is
Ethernet frame overhead, and this overhead may be different from
device to device based on what device supports, like VLAN and QinQ.
* 'max_rx_pkt_len' is only valid when application requested jumbo frame,
which adds additional confusion and some APIs and PMDs already
discards this documented behavior.
* For the jumbo frame enabled case, 'max_rx_pkt_len' is an mandatory
field, this adds configuration complexity for application.

As solution, both APIs gets MTU as parameter, and both saves the result
in same variable '(struct rte_eth_dev)->data->mtu'. For this
'max_rx_pkt_len' updated as 'mtu', and it is always valid independent
from jumbo frame.

For 'rte_eth_dev_configure()', 'dev->data->dev_conf.rxmode.mtu' is user
request and it should be used only within configure function and result
should be stored to '(struct rte_eth_dev)->data->mtu'. After that point
both application and PMD uses MTU from this variable.

When application doesn't provide an MTU during 'rte_eth_dev_configure()'
default 'RTE_ETHER_MTU' value is used.

Additional clarification done on scattered Rx configuration, in
relation to MTU and Rx buffer size.
MTU is used to configure the device for physical Rx/Tx size limitation,
Rx buffer is where to store Rx packets, many PMDs use mbuf data buffer
size as Rx buffer size.
PMDs compare MTU against Rx buffer size to decide enabling scattered Rx
or not. If scattered Rx is not supported by device, MTU bigger than Rx
buffer size should fail.

Signed-off-by: Ferruh Yigit <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>
Acked-by: Somnath Kotur <[email protected]>
Acked-by: Huisong Li <[email protected]>
Acked-by: Andrew Rybchenko <[email protected]>
Acked-by: Konstantin Ananyev <[email protected]>
Acked-by: Rosen Xu <[email protected]>
Acked-by: Hyong Youb Kim <[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
# 71c5085b 11-Jul-2021 Meir Levi <[email protected]>

net/mvpp2: fix not supported VLAN operations status

vlan_strip and vlan_extend features need to return "unsupported"
error value.

Fixes: ff0b8b10dc4 ("net/mvpp2: support VLAN offload")
Cc: stable@d

net/mvpp2: fix not supported VLAN operations status

vlan_strip and vlan_extend features need to return "unsupported"
error value.

Fixes: ff0b8b10dc4 ("net/mvpp2: support VLAN offload")
Cc: [email protected]

Signed-off-by: Meir Levi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>

show more ...


# e622c1a8 11-Jul-2021 Dana Vardi <[email protected]>

net/mvpp2: fix configured state dependency

Need to set configure flag to allow create and commit mrvl tm
hierarchy tree. tm configuration depends on parameters that are
being set in port configure s

net/mvpp2: fix configured state dependency

Need to set configure flag to allow create and commit mrvl tm
hierarchy tree. tm configuration depends on parameters that are
being set in port configure stage, e.g. nb_tx_queues.
This also aligned with the tm api description.

Fixes: 429c394417 ("net/mvpp2: support traffic manager")
Cc: [email protected]

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>

show more ...


Revision tags: v21.08-rc1, v21.05, v21.05-rc4, v21.05-rc3, v21.05-rc2
# eeded204 26-Apr-2021 David Marchand <[email protected]>

log: register with standardized names

Let's try to enforce the convention where most drivers use a pmd. logtype
with their class reflected in it, and libraries use a lib. logtype.

Introduce two new

log: register with standardized names

Let's try to enforce the convention where most drivers use a pmd. logtype
with their class reflected in it, and libraries use a lib. logtype.

Introduce two new macros:
- RTE_LOG_REGISTER_DEFAULT can be used when a single logtype is
used in a component. It is associated to the default name provided
by the build system,
- RTE_LOG_REGISTER_SUFFIX can be used when multiple logtypes are used,
and then the passed name is appended to the default name,

RTE_LOG_REGISTER is left untouched for existing external users
and for components that do not comply with the convention.

There is a new Meson variable log_prefix to adapt the default name
for baseband (pmd.bb.), bus (no pmd.) and mempool (no pmd.) classes.

Note: achieved with below commands + reverted change on net/bonding +
edits on crypto/virtio, compress/mlx5, regex/mlx5

$ git grep -l RTE_LOG_REGISTER drivers/ |
while read file; do
pattern=${file##drivers/};
class=${pattern%%/*};
pattern=${pattern#$class/};
drv=${pattern%%/*};
case "$class" in
baseband) pattern=pmd.bb.$drv;;
bus) pattern=bus.$drv;;
mempool) pattern=mempool.$drv;;
*) pattern=pmd.$class.$drv;;
esac
sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file;
sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file;
done

$ git grep -l RTE_LOG_REGISTER lib/ |
while read file; do
pattern=${file##lib/};
pattern=lib.${pattern%%/*};
sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern',/RTE_LOG_REGISTER_DEFAULT(\1,/' $file;
sed -i -e 's/RTE_LOG_REGISTER(\(.*\), '$pattern'\.\(.*\),/RTE_LOG_REGISTER_SUFFIX(\1, \2,/' $file;
done

Signed-off-by: David Marchand <[email protected]>
Signed-off-by: Thomas Monjalon <[email protected]>
Acked-by: Bruce Richardson <[email protected]>

show more ...


Revision tags: v21.05-rc1
# fb7ad441 21-Mar-2021 Thomas Monjalon <[email protected]>

ethdev: replace callback getting filter operations

Since rte_flow is the only API for filtering operations,
the legacy driver interface filter_ctrl was too much complicated
for the simple task of ge

ethdev: replace callback getting filter operations

Since rte_flow is the only API for filtering operations,
the legacy driver interface filter_ctrl was too much complicated
for the simple task of getting the struct rte_flow_ops.

The filter type RTE_ETH_FILTER_GENERIC and
the filter operarion RTE_ETH_FILTER_GET are removed.
The new driver callback flow_ops_get replaces filter_ctrl.

Signed-off-by: Thomas Monjalon <[email protected]>
Acked-by: Ajit Khaparde <[email protected]>
Acked-by: Haiyue Wang <[email protected]>
Acked-by: Rosen Xu <[email protected]>
Acked-by: Hemant Agrawal <[email protected]>
Reviewed-by: Andrew Rybchenko <[email protected]>
Reviewed-by: Ferruh Yigit <[email protected]>

show more ...


Revision tags: v21.02, v21.02-rc4, v21.02-rc3, v21.02-rc2
# 4b86050a 27-Jan-2021 Dana Vardi <[email protected]>

net/mvpp2: add fill buffs to configuration file

Extend config file with 'fill_bpool_buffs'
which control the amount of refill buffers

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liro

net/mvpp2: add fill buffs to configuration file

Extend config file with 'fill_bpool_buffs'
which control the amount of refill buffers

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>

show more ...


# 41c60f74 27-Jan-2021 Dana Vardi <[email protected]>

net/mvpp2: update QoS defaults variable name

'global_default' is only being used for 'qos'
so adding 'qos' into its name

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liron Himi <liron

net/mvpp2: update QoS defaults variable name

'global_default' is only being used for 'qos'
so adding 'qos' into its name

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>

show more ...


# ef08031f 27-Jan-2021 Dana Vardi <[email protected]>

net/mvpp2: support forwarding bad packets

Extend the config file with option to forward packets
that were marked as "l2 bad pkts".
By default the driver drop those packets

Signed-off-by: Dana Vardi

net/mvpp2: support forwarding bad packets

Extend the config file with option to forward packets
that were marked as "l2 bad pkts".
By default the driver drop those packets

Signed-off-by: Dana Vardi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>

show more ...


# 006f6ccb 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: consider packet type in checksum info

Provide checksum information based on the ptype.

Signed-off-by: Liron Himi <[email protected]>


# 7f2ae5dd 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: apply flow control after port init

In case ppio was not initialized yet (only at 'start' function)
the flow-ctrl setting should be saved for later stage.

Signed-off-by: Liron Himi <liron

net/mvpp2: apply flow control after port init

In case ppio was not initialized yet (only at 'start' function)
the flow-ctrl setting should be saved for later stage.

Signed-off-by: Liron Himi <[email protected]>

show more ...


# 528ec03a 27-Jan-2021 Meir Levi <[email protected]>

net/mvpp2: add 2.5G link info

Update capability with 2.5G support

Signed-off-by: Meir Levi <[email protected]>
Reviewed-by: Liron Himi <[email protected]>


# 949cdedd 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: expose max MTU

Expose max-MTU based on the max frame size that
l4 checksum generation can be done by HW.

Signed-off-by: Liron Himi <[email protected]>
Reviewed-by: Yuri Chipchev <yuric@

net/mvpp2: expose max MTU

Expose max-MTU based on the max frame size that
l4 checksum generation can be done by HW.

Signed-off-by: Liron Himi <[email protected]>
Reviewed-by: Yuri Chipchev <[email protected]>

show more ...


# c0e5d09e 27-Jan-2021 Yuri Chipchev <[email protected]>

net/mvpp2: update flow control autoneg disable handling

Flow control autoneg disable is not supported

Signed-off-by: Yuri Chipchev <[email protected]>
Reviewed-by: Liron Himi <[email protected]>


# 30d30720 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: introduce fixup for FIFO overrun

Currently the HW is configured with only one pool which its
buffer size may be larger than the rx-fifo-size.
In that situation, frame size larger than the

net/mvpp2: introduce fixup for FIFO overrun

Currently the HW is configured with only one pool which its
buffer size may be larger than the rx-fifo-size.
In that situation, frame size larger than the fifo-size
is gets dropped due to fifo overrun.
This is cause because the HW works in cut-through mode which
waits to have in the fifo at least the amount of bytes as define
in the smallest pool's buffer size.

This patch add a dummy pool which its buffer size
is very small (smaller than 64B frame). This tricks the HW and
any frame size is gets passed from the FIFO to the PP2.

Signed-off-by: Liron Himi <[email protected]>

show more ...


# f85c08f7 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: rearrange functions order

Rearrange functions order

Signed-off-by: Liron Himi <[email protected]>


# 3e09b2a7 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: support user defined configuration

Extend the config file with 'udf' (user-defined) settings

Signed-off-by: Liron Himi <[email protected]>


# d7eb4fb2 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: use generic name for global config variable

As the config file is not just for 'qos'
it is more accurate to replace the name from 'qos_cfg'
to 'cfg'

Signed-off-by: Liron Himi <lironh@mar

net/mvpp2: use generic name for global config variable

As the config file is not just for 'qos'
it is more accurate to replace the name from 'qos_cfg'
to 'cfg'

Signed-off-by: Liron Himi <[email protected]>

show more ...


# 7da1aed6 27-Jan-2021 Liron Himi <[email protected]>

net/mvpp2: adjust number of unicast address

HW support 25 mac address for filtering plus one for
the primary mac address.

Signed-off-by: Liron Himi <[email protected]>


# 8537663b 27-Jan-2021 Yuri Chipchev <[email protected]>

net/mvpp2: add Tx flow control

Add tx flow control operations.

Signed-off-by: Yuri Chipchev <[email protected]>
Reviewed-by: Liron Himi <[email protected]>


1234