Patch Detail
get:
Show a patch.
patch:
Update a patch.
put:
Update a patch.
GET /api/patches/73053/?format=api
https://patches.dpdk.org/api/patches/73053/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/patch/20200703210210.40568-4-ajit.khaparde@broadcom.com/", "project": { "id": 1, "url": "https://patches.dpdk.org/api/projects/1/?format=api", "name": "DPDK", "link_name": "dpdk", "list_id": "dev.dpdk.org", "list_email": "dev@dpdk.org", "web_url": "http://core.dpdk.org", "scm_url": "git://dpdk.org/dpdk", "webscm_url": "http://git.dpdk.org/dpdk", "list_archive_url": "https://inbox.dpdk.org/dev", "list_archive_url_format": "https://inbox.dpdk.org/dev/{}", "commit_url_format": "" }, "msgid": "<20200703210210.40568-4-ajit.khaparde@broadcom.com>", "list_archive_url": "https://inbox.dpdk.org/dev/20200703210210.40568-4-ajit.khaparde@broadcom.com", "date": "2020-07-03T21:01:22", "name": "[v5,03/51] net/bnxt: get IDs for VF-Rep endpoint", "commit_ref": null, "pull_url": null, "state": "accepted", "archived": true, "hash": "98a30e2f79413934274aafa235d17f079f030f33", "submitter": { "id": 501, "url": "https://patches.dpdk.org/api/people/501/?format=api", "name": "Ajit Khaparde", "email": "ajit.khaparde@broadcom.com" }, "delegate": { "id": 1766, "url": "https://patches.dpdk.org/api/users/1766/?format=api", "username": "ajitkhaparde", "first_name": "Ajit", "last_name": "Khaparde", "email": "ajit.khaparde@broadcom.com" }, "mbox": "https://patches.dpdk.org/project/dpdk/patch/20200703210210.40568-4-ajit.khaparde@broadcom.com/mbox/", "series": [ { "id": 10785, "url": "https://patches.dpdk.org/api/series/10785/?format=api", "web_url": "https://patches.dpdk.org/project/dpdk/list/?series=10785", "date": "2020-07-03T21:01:19", "name": "net/bnxt: add features for host-based flow management", "version": 5, "mbox": "https://patches.dpdk.org/series/10785/mbox/" } ], "comments": "https://patches.dpdk.org/api/patches/73053/comments/", "check": "fail", "checks": "https://patches.dpdk.org/api/patches/73053/checks/", "tags": {}, "related": [], "headers": { "Return-Path": "<dev-bounces@dpdk.org>", "X-Original-To": "patchwork@inbox.dpdk.org", "Delivered-To": "patchwork@inbox.dpdk.org", "Received": [ "from dpdk.org (dpdk.org [92.243.14.124])\n\tby inbox.dpdk.org (Postfix) with ESMTP id 79B8FA0524;\n\tFri, 3 Jul 2020 23:05:38 +0200 (CEST)", "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 190BE1DC49;\n\tFri, 3 Jul 2020 23:05:05 +0200 (CEST)", "from rnd-relay.smtp.broadcom.com (rnd-relay.smtp.broadcom.com\n [192.19.229.170]) by dpdk.org (Postfix) with ESMTP id 8049D1DC05\n for <dev@dpdk.org>; Fri, 3 Jul 2020 23:04:57 +0200 (CEST)", "from mail-irv-17.broadcom.com (mail-irv-17.lvn.broadcom.net\n [10.75.242.48])\n by rnd-relay.smtp.broadcom.com (Postfix) with ESMTP id 754AE30C05D;\n Fri, 3 Jul 2020 14:04:56 -0700 (PDT)", "from localhost.localdomain (unknown [10.230.185.215])\n by mail-irv-17.broadcom.com (Postfix) with ESMTP id EDD8C140069;\n Fri, 3 Jul 2020 14:04:55 -0700 (PDT)" ], "DKIM-Filter": "OpenDKIM Filter v2.10.3 rnd-relay.smtp.broadcom.com 754AE30C05D", "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/simple; d=broadcom.com;\n s=dkimrelay; t=1593810296;\n bh=TFNcPGxE+b2jbGxmGlX0DMjOEhZKrHHqjH2O6aY9O6k=;\n h=From:To:Cc:Subject:Date:In-Reply-To:References:From;\n b=OPEttELpD2H/nwZV0AyThg+miI2RKdKBCzjWsai+d2jRyf3Y1a0byMgahFzl3kRIf\n s62/fvnXJzvx976YyFYxXtAHaSFiVJhxIZ4lNWz/bWH/ApCrJrSOu8p1L/1v9GPe39\n uqMtU/WvT45Epv+bE7fADV6ELmkkO8CL6NfArBpc=", "From": "Ajit Khaparde <ajit.khaparde@broadcom.com>", "To": "dev@dpdk.org", "Cc": "Somnath Kotur <somnath.kotur@broadcom.com>,\n Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>", "Date": "Fri, 3 Jul 2020 14:01:22 -0700", "Message-Id": "<20200703210210.40568-4-ajit.khaparde@broadcom.com>", "X-Mailer": "git-send-email 2.21.1 (Apple Git-122.3)", "In-Reply-To": "<20200703210210.40568-1-ajit.khaparde@broadcom.com>", "References": "<1f5421dc-0453-6dc8-09c2-ddfff6eb4888@intel.com>\n <20200703210210.40568-1-ajit.khaparde@broadcom.com>", "MIME-Version": "1.0", "Content-Transfer-Encoding": "8bit", "Subject": "[dpdk-dev] [PATCH v5 03/51] net/bnxt: get IDs for VF-Rep endpoint", "X-BeenThere": "dev@dpdk.org", "X-Mailman-Version": "2.1.15", "Precedence": "list", "List-Id": "DPDK patches and discussions <dev.dpdk.org>", "List-Unsubscribe": "<https://mails.dpdk.org/options/dev>,\n <mailto:dev-request@dpdk.org?subject=unsubscribe>", "List-Archive": "<http://mails.dpdk.org/archives/dev/>", "List-Post": "<mailto:dev@dpdk.org>", "List-Help": "<mailto:dev-request@dpdk.org?subject=help>", "List-Subscribe": "<https://mails.dpdk.org/listinfo/dev>,\n <mailto:dev-request@dpdk.org?subject=subscribe>", "Errors-To": "dev-bounces@dpdk.org", "Sender": "\"dev\" <dev-bounces@dpdk.org>" }, "content": "From: Somnath Kotur <somnath.kotur@broadcom.com>\n\nUse 'first_vf_id' and the 'vf_id' that is input as part of adding\na representor to obtain the PCI function ID(FID) of the VF(VFR endpoint).\nUse the FID as an input to FUNC_QCFG HWRM cmd to obtain the default\nvnic ID of the VF.\nAlong with getting the default vNIC ID by supplying the FW FID of\nthe VF-rep endpoint to HWRM_FUNC_QCFG, obtain and store it's\nfunction svif.\n\nSigned-off-by: Somnath Kotur <somnath.kotur@broadcom.com>\nSigned-off-by: Venkat Duvvuru <venkatkumar.duvvuru@broadcom.com>\nReviewed-by: Ajit Khaparde <ajit.khaparde@broadcom.com>\n---\n drivers/net/bnxt/bnxt.h | 3 +++\n drivers/net/bnxt/bnxt_hwrm.c | 27 +++++++++++++++++++++++++++\n drivers/net/bnxt/bnxt_hwrm.h | 4 ++++\n drivers/net/bnxt/bnxt_reps.c | 12 ++++++++++++\n 4 files changed, 46 insertions(+)", "diff": "diff --git a/drivers/net/bnxt/bnxt.h b/drivers/net/bnxt/bnxt.h\nindex 443d9fee4..7afbd5cab 100644\n--- a/drivers/net/bnxt/bnxt.h\n+++ b/drivers/net/bnxt/bnxt.h\n@@ -784,6 +784,9 @@ struct bnxt {\n struct bnxt_vf_representor {\n \tuint16_t\t\tswitch_domain_id;\n \tuint16_t\t\tvf_id;\n+\tuint16_t\t\tfw_fid;\n+\tuint16_t\t\tdflt_vnic_id;\n+\tuint16_t\t\tsvif;\n \tuint16_t\t\ttx_cfa_action;\n \tuint16_t\t\trx_cfa_code;\n \t/* Private data store of associated PF/Trusted VF */\ndiff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c\nindex 945bc9018..ed42e58d4 100644\n--- a/drivers/net/bnxt/bnxt_hwrm.c\n+++ b/drivers/net/bnxt/bnxt_hwrm.c\n@@ -3094,6 +3094,33 @@ int bnxt_hwrm_func_qcfg(struct bnxt *bp, uint16_t *mtu)\n \treturn rc;\n }\n \n+int bnxt_hwrm_get_dflt_vnic_svif(struct bnxt *bp, uint16_t fid,\n+\t\t\t\t uint16_t *vnic_id, uint16_t *svif)\n+{\n+\tstruct hwrm_func_qcfg_input req = {0};\n+\tstruct hwrm_func_qcfg_output *resp = bp->hwrm_cmd_resp_addr;\n+\tuint16_t svif_info;\n+\tint rc = 0;\n+\n+\tHWRM_PREP(&req, HWRM_FUNC_QCFG, BNXT_USE_CHIMP_MB);\n+\treq.fid = rte_cpu_to_le_16(fid);\n+\n+\trc = bnxt_hwrm_send_message(bp, &req, sizeof(req), BNXT_USE_CHIMP_MB);\n+\n+\tHWRM_CHECK_RESULT();\n+\n+\tif (vnic_id)\n+\t\t*vnic_id = rte_le_to_cpu_16(resp->dflt_vnic_id);\n+\n+\tsvif_info = rte_le_to_cpu_16(resp->svif_info);\n+\tif (svif && (svif_info & HWRM_FUNC_QCFG_OUTPUT_SVIF_INFO_SVIF_VALID))\n+\t\t*svif = svif_info & HWRM_FUNC_QCFG_OUTPUT_SVIF_INFO_SVIF_MASK;\n+\n+\tHWRM_UNLOCK();\n+\n+\treturn rc;\n+}\n+\n int bnxt_hwrm_port_mac_qcfg(struct bnxt *bp)\n {\n \tstruct hwrm_port_mac_qcfg_input req = {0};\ndiff --git a/drivers/net/bnxt/bnxt_hwrm.h b/drivers/net/bnxt/bnxt_hwrm.h\nindex 58b414d4f..8d19998df 100644\n--- a/drivers/net/bnxt/bnxt_hwrm.h\n+++ b/drivers/net/bnxt/bnxt_hwrm.h\n@@ -270,4 +270,8 @@ int bnxt_hwrm_cfa_counter_qstats(struct bnxt *bp,\n \t\t\t\t enum bnxt_flow_dir dir,\n \t\t\t\t uint16_t cntr,\n \t\t\t\t uint16_t num_entries);\n+int bnxt_hwrm_get_dflt_vnic_id(struct bnxt *bp, uint16_t fid,\n+\t\t\t uint16_t *vnic_id);\n+int bnxt_hwrm_get_dflt_vnic_svif(struct bnxt *bp, uint16_t fid,\n+\t\t\t\t uint16_t *vnic_id, uint16_t *svif);\n #endif\ndiff --git a/drivers/net/bnxt/bnxt_reps.c b/drivers/net/bnxt/bnxt_reps.c\nindex 777179558..ea6f0010f 100644\n--- a/drivers/net/bnxt/bnxt_reps.c\n+++ b/drivers/net/bnxt/bnxt_reps.c\n@@ -150,6 +150,7 @@ int bnxt_vf_representor_init(struct rte_eth_dev *eth_dev, void *params)\n \t\t\t\t (struct bnxt_vf_representor *)params;\n \tstruct rte_eth_link *link;\n \tstruct bnxt *parent_bp;\n+\tint rc = 0;\n \n \tvf_rep_bp->vf_id = rep_params->vf_id;\n \tvf_rep_bp->switch_domain_id = rep_params->switch_domain_id;\n@@ -179,6 +180,17 @@ int bnxt_vf_representor_init(struct rte_eth_dev *eth_dev, void *params)\n \teth_dev->data->dev_link.link_status = link->link_status;\n \teth_dev->data->dev_link.link_autoneg = link->link_autoneg;\n \n+\tvf_rep_bp->fw_fid = rep_params->vf_id + parent_bp->first_vf_id;\n+\tPMD_DRV_LOG(INFO, \"vf_rep->fw_fid = %d\\n\", vf_rep_bp->fw_fid);\n+\trc = bnxt_hwrm_get_dflt_vnic_svif(parent_bp, vf_rep_bp->fw_fid,\n+\t\t\t\t\t &vf_rep_bp->dflt_vnic_id,\n+\t\t\t\t\t &vf_rep_bp->svif);\n+\tif (rc)\n+\t\tPMD_DRV_LOG(ERR, \"Failed to get default vnic id of VF\\n\");\n+\telse\n+\t\tPMD_DRV_LOG(INFO, \"vf_rep->dflt_vnic_id = %d\\n\",\n+\t\t\t vf_rep_bp->dflt_vnic_id);\n+\n \tPMD_DRV_LOG(INFO, \"calling bnxt_print_link_info\\n\");\n \tbnxt_print_link_info(eth_dev);\n \n", "prefixes": [ "v5", "03/51" ] }{ "id": 73053, "url": "