From 9ed3f38770c64838e0fb6446644583273c268251 Mon Sep 17 00:00:00 2001 From: Shijith Thotton Date: Mon, 21 Aug 2017 11:47:05 +0530 Subject: [PATCH] net/liquidio: remove FLR request to PF driver igb_uio and vfio-pci does pci reset during open and release of device. So FLR request to LiquidIO PF driver during init and close in PMD is not required. See commit b58eedfc7dd5 ("igb_uio: issue FLR during open and release of device file") Signed-off-by: Shijith Thotton --- drivers/net/liquidio/base/lio_23xx_vf.c | 19 ------------------- drivers/net/liquidio/base/lio_23xx_vf.h | 2 -- drivers/net/liquidio/base/lio_mbox.h | 1 - drivers/net/liquidio/lio_ethdev.c | 8 -------- 4 files changed, 30 deletions(-) diff --git a/drivers/net/liquidio/base/lio_23xx_vf.c b/drivers/net/liquidio/base/lio_23xx_vf.c index e30c20dce2..99780178ea 100644 --- a/drivers/net/liquidio/base/lio_23xx_vf.c +++ b/drivers/net/liquidio/base/lio_23xx_vf.c @@ -379,25 +379,6 @@ cn23xx_vf_disable_io_queues(struct lio_device *lio_dev) cn23xx_vf_reset_io_queues(lio_dev, num_queues); } -void -cn23xx_vf_ask_pf_to_do_flr(struct lio_device *lio_dev) -{ - struct lio_mbox_cmd mbox_cmd; - - memset(&mbox_cmd, 0, sizeof(struct lio_mbox_cmd)); - mbox_cmd.msg.s.type = LIO_MBOX_REQUEST; - mbox_cmd.msg.s.resp_needed = 0; - mbox_cmd.msg.s.cmd = LIO_VF_FLR_REQUEST; - mbox_cmd.msg.s.len = 1; - mbox_cmd.q_no = 0; - mbox_cmd.recv_len = 0; - mbox_cmd.recv_status = 0; - mbox_cmd.fn = NULL; - mbox_cmd.fn_arg = 0; - - lio_mbox_write(lio_dev, &mbox_cmd); -} - static void cn23xx_pfvf_hs_callback(struct lio_device *lio_dev, struct lio_mbox_cmd *cmd, void *arg) diff --git a/drivers/net/liquidio/base/lio_23xx_vf.h b/drivers/net/liquidio/base/lio_23xx_vf.h index ad8db0dff3..83dc053aa3 100644 --- a/drivers/net/liquidio/base/lio_23xx_vf.h +++ b/drivers/net/liquidio/base/lio_23xx_vf.h @@ -87,8 +87,6 @@ int cn23xx_vf_set_io_queues_off(struct lio_device *lio_dev); #define CN23XX_VF_BUSY_READING_REG_LOOP_COUNT 100000 -void cn23xx_vf_ask_pf_to_do_flr(struct lio_device *lio_dev); - int cn23xx_pfvf_handshake(struct lio_device *lio_dev); int cn23xx_vf_setup_device(struct lio_device *lio_dev); diff --git a/drivers/net/liquidio/base/lio_mbox.h b/drivers/net/liquidio/base/lio_mbox.h index b0875d646d..f1c5b8ec41 100644 --- a/drivers/net/liquidio/base/lio_mbox.h +++ b/drivers/net/liquidio/base/lio_mbox.h @@ -43,7 +43,6 @@ #define LIO_MBOX_DATA_MAX 32 #define LIO_VF_ACTIVE 0x1 -#define LIO_VF_FLR_REQUEST 0x2 #define LIO_CORES_CRASHED 0x3 /* Macro for Read acknowledgment */ diff --git a/drivers/net/liquidio/lio_ethdev.c b/drivers/net/liquidio/lio_ethdev.c index 479936a52f..5f3c05ec7d 100644 --- a/drivers/net/liquidio/lio_ethdev.c +++ b/drivers/net/liquidio/lio_ethdev.c @@ -1559,9 +1559,6 @@ lio_dev_close(struct rte_eth_dev *eth_dev) rte_write32(pkt_count, droq->pkts_sent_reg); } - /* Do FLR for the VF */ - cn23xx_vf_ask_pf_to_do_flr(lio_dev); - /* lio_free_mbox */ lio_dev->fn_list.free_mbox(lio_dev); @@ -1929,11 +1926,6 @@ lio_first_time_init(struct lio_device *lio_dev, if (cn23xx_pfvf_handshake(lio_dev)) goto error; - /* Initial reset */ - cn23xx_vf_ask_pf_to_do_flr(lio_dev); - /* Wait for FLR for 100ms per SRIOV specification */ - rte_delay_ms(100); - if (cn23xx_vf_set_io_queues_off(lio_dev)) { lio_dev_err(lio_dev, "Setting io queues off failed\n"); goto error; -- 2.20.1