[v2,1/3] net: fix variable size of ethdev port id
Checks
Commit Message
The ethdev port id should be 16 bits now. This patch changes the
variable size of port id in some net drivers from 8 bits to 16
bits.
Fixes: cf18d4def295 ("net/ark: provide API for hardware modules UDM and DDM")
Fixes: 09b23f8b9df6 ("net/bnxt: fix port stop process and cleanup resources")
Fixes: 769de16872ab ("net/bnxt: fix port default rule create/destroy")
Fixes: 50370662b727 ("net/ice: support device and queue ops")
Fixes: a50d7cbbdad7 ("net/qede: support registers dump")
Cc: stable@dpdk.org
Signed-off-by: Chenbo Xia <chenbo.xia@intel.com>
---
drivers/net/ark/ark_udm.h | 2 +-
drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 2 +-
drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++---
drivers/net/ice/ice_rxtx.h | 4 ++--
drivers/net/qede/base/bcm_osal.h | 2 +-
drivers/net/qede/qede_regs.c | 2 +-
6 files changed, 9 insertions(+), 9 deletions(-)
Comments
On Fri, Sep 25, 2020 at 1:41 AM Chenbo Xia <chenbo.xia@intel.com> wrote:
>
> The ethdev port id should be 16 bits now. This patch changes the
> variable size of port id in some net drivers from 8 bits to 16
> bits.
>
> Fixes: cf18d4def295 ("net/ark: provide API for hardware modules UDM and DDM")
> Fixes: 09b23f8b9df6 ("net/bnxt: fix port stop process and cleanup resources")
> Fixes: 769de16872ab ("net/bnxt: fix port default rule create/destroy")
> Fixes: 50370662b727 ("net/ice: support device and queue ops")
> Fixes: a50d7cbbdad7 ("net/qede: support registers dump")
> Cc: stable@dpdk.org
>
> Signed-off-by: Chenbo Xia <chenbo.xia@intel.com>
> ---
> drivers/net/ark/ark_udm.h | 2 +-
> drivers/net/bnxt/tf_ulp/bnxt_ulp.c | 2 +-
> drivers/net/bnxt/tf_ulp/ulp_def_rules.c | 6 +++---
> drivers/net/ice/ice_rxtx.h | 4 ++--
> drivers/net/qede/base/bcm_osal.h | 2 +-
> drivers/net/qede/qede_regs.c | 2 +-
> 6 files changed, 9 insertions(+), 9 deletions(-)
>
> diff --git a/drivers/net/ark/ark_udm.h b/drivers/net/ark/ark_udm.h
> index 5846c825b..32eb82faa 100644
> --- a/drivers/net/ark/ark_udm.h
> +++ b/drivers/net/ark/ark_udm.h
> @@ -19,7 +19,7 @@
> struct ark_rx_meta {
> uint64_t timestamp;
> uint64_t user_data;
> - uint8_t port;
> + uint16_t port;
> uint8_t dst_queue;
> uint16_t pkt_len;
> };
NACK - this struct correlates with an identical structure in the
hardware module. The C-level cannot be changed without a hardware
update. For the net/ark driver we will be content with 8-bit port
ids.
Ed.
@@ -19,7 +19,7 @@
struct ark_rx_meta {
uint64_t timestamp;
uint64_t user_data;
- uint8_t port;
+ uint16_t port;
uint8_t dst_queue;
uint16_t pkt_len;
};
@@ -646,7 +646,7 @@ static void
bnxt_ulp_destroy_vfr_default_rules(struct bnxt *bp, bool global)
{
struct bnxt_ulp_vfr_rule_info *info;
- uint8_t port_id;
+ uint16_t port_id;
struct rte_eth_dev *vfr_eth_dev;
struct bnxt_vf_representor *vfr_bp;
@@ -402,7 +402,7 @@ void
bnxt_ulp_destroy_df_rules(struct bnxt *bp, bool global)
{
struct bnxt_ulp_df_rule_info *info;
- uint8_t port_id;
+ uint16_t port_id;
if (!BNXT_TRUFLOW_EN(bp) ||
BNXT_ETH_DEV_IS_REPRESENTOR(bp->eth_dev))
@@ -466,7 +466,7 @@ int32_t
bnxt_ulp_create_df_rules(struct bnxt *bp)
{
struct bnxt_ulp_df_rule_info *info;
- uint8_t port_id;
+ uint16_t port_id;
int rc;
if (!BNXT_TRUFLOW_EN(bp) ||
@@ -540,7 +540,7 @@ bnxt_ulp_create_vfr_default_rules(struct rte_eth_dev *vfr_ethdev)
struct rte_eth_dev *parent_dev = vfr->parent_dev;
struct bnxt *bp = parent_dev->data->dev_private;
uint16_t vfr_port_id = vfr_ethdev->data->port_id;
- uint8_t port_id;
+ uint16_t port_id;
int rc;
if (!bp || !BNXT_TRUFLOW_EN(bp))
@@ -68,7 +68,7 @@ struct ice_rx_queue {
uint16_t rxrearm_start; /**< the idx we start the re-arming from */
uint64_t mbuf_initializer; /**< value to init mbufs */
- uint8_t port_id; /* device port ID */
+ uint16_t port_id; /* device port ID */
uint8_t crc_len; /* 0 if CRC stripped, 4 otherwise */
uint8_t fdir_enabled; /* 0 if FDIR disabled, 1 when enabled */
uint16_t queue_id; /* RX queue index */
@@ -112,7 +112,7 @@ struct ice_tx_queue {
uint8_t pthresh; /**< Prefetch threshold register. */
uint8_t hthresh; /**< Host threshold register. */
uint8_t wthresh; /**< Write-back threshold reg. */
- uint8_t port_id; /* Device port identifier. */
+ uint16_t port_id; /* Device port identifier. */
uint16_t queue_id; /* TX queue index. */
uint32_t q_teid; /* TX schedule node id. */
uint16_t reg_idx;
@@ -372,7 +372,7 @@ void qede_hw_err_notify(struct ecore_hwfn *p_hwfn,
/* TODO: */
#define OSAL_SCHEDULE_RECOVERY_HANDLER(hwfn) nothing
-int qede_save_fw_dump(uint8_t port_id);
+int qede_save_fw_dump(uint16_t port_id);
#define OSAL_SAVE_FW_DUMP(port_id) qede_save_fw_dump(port_id)
@@ -242,7 +242,7 @@ qede_write_fwdump(const char *dump_file, void *dump, size_t len)
}
int
-qede_save_fw_dump(uint8_t port_id)
+qede_save_fw_dump(uint16_t port_id)
{
struct rte_eth_dev *eth_dev = &rte_eth_devices[port_id];
struct rte_dev_reg_info regs;