get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

GET /api/patches/45442/?format=api
HTTP 200 OK
Allow: GET, PUT, PATCH, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 45442,
    "url": "http://patches.dpdk.org/api/patches/45442/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/20180926180440.31726-10-shreyansh.jain@nxp.com/",
    "project": {
        "id": 1,
        "url": "http://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": "<20180926180440.31726-10-shreyansh.jain@nxp.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/20180926180440.31726-10-shreyansh.jain@nxp.com",
    "date": "2018-09-26T18:04:34",
    "name": "[v2,09/15] net/dpaa2: read hardware provided MAC for DPNI devices",
    "commit_ref": null,
    "pull_url": null,
    "state": "superseded",
    "archived": true,
    "hash": "c0772e3ba9b0680e549f0324fab31482ee4b6f08",
    "submitter": {
        "id": 497,
        "url": "http://patches.dpdk.org/api/people/497/?format=api",
        "name": "Shreyansh Jain",
        "email": "shreyansh.jain@nxp.com"
    },
    "delegate": {
        "id": 1,
        "url": "http://patches.dpdk.org/api/users/1/?format=api",
        "username": "tmonjalo",
        "first_name": "Thomas",
        "last_name": "Monjalon",
        "email": "thomas@monjalon.net"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/20180926180440.31726-10-shreyansh.jain@nxp.com/mbox/",
    "series": [
        {
            "id": 1525,
            "url": "http://patches.dpdk.org/api/series/1525/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=1525",
            "date": "2018-09-26T18:04:25",
            "name": "Upgrade DPAA2 FW and other feature/bug fixes",
            "version": 2,
            "mbox": "http://patches.dpdk.org/series/1525/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/45442/comments/",
    "check": "success",
    "checks": "http://patches.dpdk.org/api/patches/45442/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<dev-bounces@dpdk.org>",
        "X-Original-To": "patchwork@dpdk.org",
        "Delivered-To": "patchwork@dpdk.org",
        "Received": [
            "from [92.243.14.124] (localhost [127.0.0.1])\n\tby dpdk.org (Postfix) with ESMTP id 474251B4BA;\n\tWed, 26 Sep 2018 20:06:17 +0200 (CEST)",
            "from EUR03-VE1-obe.outbound.protection.outlook.com\n\t(mail-eopbgr50042.outbound.protection.outlook.com [40.107.5.42])\n\tby dpdk.org (Postfix) with ESMTP id 635D01B474\n\tfor <dev@dpdk.org>; Wed, 26 Sep 2018 20:06:08 +0200 (CEST)",
            "from Tophie.ap.freescale.net (14.142.187.166) by\n\tAM6PR04MB4679.eurprd04.prod.outlook.com (2603:10a6:20b:1c::18) with\n\tMicrosoft SMTP Server (version=TLS1_2,\n\tcipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id\n\t15.20.1164.22; Wed, 26 Sep 2018 18:06:05 +0000"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n\th=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n\tbh=eA0O3JbYdNba7ByFAcm6X/p/zOf+/UPXcOXcQqxBsvM=;\n\tb=poypRr67FlTMqEd4zsHquG+WoyN8rsh00u+SgBjbh6BkSjlFyJNHIwL/lARsBpOf8u0cyH6zXO6WoC6xKmb32Yb6BD26SvlBc+qpf747t32czB8CnRoBty8ReCg+zUKQlW/5yn6ONtX+OdnQrEfLYbfZa5yxnF3o4oQ23C7Hb9E=",
        "Authentication-Results": "spf=none (sender IP is )\n\tsmtp.mailfrom=shreyansh.jain@nxp.com; ",
        "From": "Shreyansh Jain <shreyansh.jain@nxp.com>",
        "To": "dev@dpdk.org,\n\tferruh.yigit@intel.com",
        "Cc": "thomas@monjalon.net,\n\tShreyansh Jain <shreyansh.jain@nxp.com>",
        "Date": "Wed, 26 Sep 2018 23:34:34 +0530",
        "Message-Id": "<20180926180440.31726-10-shreyansh.jain@nxp.com>",
        "X-Mailer": "git-send-email 2.17.1",
        "In-Reply-To": "<20180926180440.31726-1-shreyansh.jain@nxp.com>",
        "References": "<20180917103631.32304-1-shreyansh.jain@nxp.com>\n\t<20180926180440.31726-1-shreyansh.jain@nxp.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-Originating-IP": "[14.142.187.166]",
        "X-ClientProxiedBy": "MA1PR0101CA0014.INDPRD01.PROD.OUTLOOK.COM\n\t(2603:1096:a00:21::24) To AM6PR04MB4679.eurprd04.prod.outlook.com\n\t(2603:10a6:20b:1c::18)",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-Office365-Filtering-Correlation-Id": "f21780e6-d9f5-4b03-6b80-08d623dabb82",
        "X-MS-Office365-Filtering-HT": "Tenant",
        "X-Microsoft-Antispam": "BCL:0; PCL:0;\n\tRULEID:(7020095)(4652040)(8989299)(4534165)(7168020)(4627221)(201703031133081)(201702281549075)(8990200)(5600074)(711020)(4618075)(2017052603328)(7153060)(7193020);\n\tSRVR:AM6PR04MB4679; ",
        "X-Microsoft-Exchange-Diagnostics": [
            "1; AM6PR04MB4679;\n\t3:nTfqk22x65PI8RPP1HmgMR6m8xDgtQQP2RVkSyIXudqoIRgENR14GD1rmLUfTgGWWTzsglTyqfmdg0WTRJoCIYihco3++wf9keOoGJU8Ryl+yTa/6xwDoEP89dnbznajvMlXh5hsH3Kb67jzCaKdtjEs5fefX14jG1OtsEWaTH1M5wE7Nheh8AumJELwOx/5oFCf5GIPM9D/+eiFKcMS9/ZvTTP7y2AWMuFPIU7sQD91ieXdDs86VjS7ftcbL2Sw;\n\t25:y4MzLR4CLSpwDPyRfjC/V0Fc5m/pjf64SjZpsQMoOlgDQLzhM9l8cEe3mkKSq3zB91h8ieYjmeJ4pgxdc2BQmsFnqxD6+kSV4cuTOaA4ERmkV6wdamOQyDSxEreNvVWBYYV4ppsCrbqVFVbh1qekj/bUj/Ymn9myfqbHjil9hSSqqMAiZ2zTLZN0F7tGL+sQwhw44cK3w4rzyF9B0w48q8G0E5ihl/HnPX/xZPL0QBwPVhf5iSDvqVKRHt213o/iD5E3ER5X7x13h62TJ+pvFMENdAJWJ0hyPROLKJthQdBsbktCMA8+u9SgAPf2SGCpEVw0/AFp4NImTRgfEZr3rw==;\n\t31:KDDybPR3zGQ0Ow+JUJebkLNC/DAn4/4wabHf/LthCX7J9WGM/NIQ7STSLH7IJndi1ECZkQ7vh/uOuR9tAhJuryFdPGZI0WHOd1/eALzE/TUHlGsFKJsRuqtFSl4XUi/ZzuVm69/JyCwQjiAC3yhK8GMjNs1QebRAKR5P+FVmu+OoRpdFUpjp9NeVp3YtgbxZFQF82Ag/VwWfm3wGwbFQ+QPSjBTQbytfiHCxFG4pcds=",
            "1; AM6PR04MB4679;\n\t20:edAhBNacy5JIV0wo1Py6RTn2uOgwFi7ZSSnKbaHX4FoieMUmsHDvWyiqhbM/qFzozf6pKEG8ldR4pDNsnnfquKMzHZ1UotNjI7O6KkeUJec+ayNdw/5RbmnwKtTkeIEFtKHhn4a0EfGFQi8dZy7iNIwYYGREq2H8oBuYtH4JNMBOPa2WSXoiuBCsbFUg/G5zgUUvCebwja/yCbUCbuLDGR7s0zvEeDjNJnlVh0Cd+UngXiVsyrRhfyLfOKtqnjaKr6yrUdoqJrn8F/94WwL6S/pam/xmPsvQNyHhYUJ8WOa/voyD9wY5jlMsPVjhJJrel/C2To0I+iXVw/0MnHsPPhroV1kpggHO0aCTcsas2lEWDBhexXxyT1WAvYnRQQE6NrNigF3jasjMSzUQSBevecJEMSxMaE4e1+zei+jTvx9ZxFIwxINDfD/yB70mPpqlSy+xZFnsFezW87kvLL5Fja7uIBPWjYgejOD5TRX0HSF8p6DCA5XI2QUSMKb1GyaQ;\n\t4:pgdLwK+UZNtA50awqLx9rAdE2+hY5LGKzeDGSuBgCnFjsKTp1K9/rDfg/LB98uTWTLWyaPytU7/Qzr/3RFICWx9cQpZKFfOwBUrixhsip3FeJaC7lVUZHjGvvAECPWX/XmhvOzOFU4V6oPTFXKDzhrq0gOYTfaJiUbJNNAhfhNAR1TY4JX5uD+X/6HatOr8vPWXRWcUKtfa4chdrnDrS3xR0Zqx6WtU3u/dWdERSOauLMCuRqdBwy2bRDgaggMm3t1e0yeLBhlF3MNwZq1hlTp8iHc6Kkl6oQRzt8WpZIoLd04v7cbFGbZSK4655xJoc",
            "=?us-ascii?Q?1; AM6PR04MB4679;\n\t23:Lo6iGEpyKeAEtLIyvcjjD2mOCa59wHn7dODjiAKYU?=\n\tMsZs8prWdiY6RM9FXUuwUc1jfPZkHF2BfFHlbv2tEWf0j9WW94qHxrWxztJj9JhbC5bTpan8gWyZDnGPp5BJwtgw+nFxkZebQR1RSDIALk2eZfoJBmWxNFUcyKy1p1auDSoXXeA03Z1l9kXK3iKUdZQxIEek2jMlCa54K8UY4DP4yOOpPIlHAA08lRXoH0nA3dbFs0DWVEz4wPG9qsGqmec0t8UOeSsnh2h92CSMcB9+P2S8LlNKe8MsMZY6bLJameRsPg+E1OLK4Hgd272EyHyg4leFhqvTFrUW5vqlZCkfqUNpEwklTGCqg5j0aKWVA9YLXrva4WpLlkZZqFxwMkUD8SFgvE0aMAaHAWgZ7fYf+mDsuPsK/dIHz/KLNQFOlfRysqRQm3W2FZ5ulNw/lpi+AB9fIuTbagXVThhc4j1t3raefeNPFEmx2aJHbEx6zvLHwUsfej6PAF8qUCqertzfERX38bl3wKR3GOf5+yEoGCxuZYBHVsWsYJuHVb6OCllCNqC6Iwvw+/B9Um8/RPpWTVGfrPVG0X66k7E8q2BJVoFpjfrvqmD/icyAG+cvBLWoCk5H4P+WFtCDZbJvOezzm+8PhDaR8UTSJUkbOK18nruYYV0OtD514Wd8GCy3TfYJtYxB9s5D9oIwUKyf1FT/Z+Qs+KZfB45wtZOAIqC4s0joMZcRWx/5Vb/tdgGLnYYBFElif1TFg8wSznbMlyqBuuQtoI/8HHfYsAcYPnXjcF7xlPFLOKaW7gTYePsdx7G4BTJcNulbu6TPdt/DRpT/2bvsaU54mo8PzghoVgzN0NJMSL7Z/a5EB3IsvMAvzzFJCh8bkxmoxrffRZSUG7rRpVGt5EjN4jIWInZke16SWz1AEAWNk5mpLUcQYB+SoqBqaXBwf7TzI+xizJfSnKlO/bb95vl8v50Jy+Mk4VcU0Lr0F4ZikVDTEI/0tudsSkAwuNH/kOud/hKMudvI6uKk++S+uKyP7YkE3N6DFdV9FxW3F1n16MIMbLUNyCuR4hKGAD1c5dO6gfauLo9l4daC7TobOxh6WhV6Elr0SRfU4oHdH+jXD5rVbwziADh2n6c3ZqoLMho3D4dVCTugRISbcrH1XGOVxTHJbLwu08fIZhVh4tK6VAJiLBBxFs3kzr0NBq1aUwfzW3ZcehvhUlwiXMK1saYRkkV7Wry8Nw3MlQS3LJ/6DxVj8BT1dVjQ/ewTRIRaWzkfn9Gt1TJ3mWfHUTY7vCah5aBgJ4LIeeASQ==",
            "1; AM6PR04MB4679;\n\t6:VMnmlLIxesj90lOeLsOtSFQjKJoAtc6r2PiAwXshccI1n+1zPV3C9MYPjmbsJ1W/TeQuJKBshPiNBf1ZL3zpCt+WGEHR2Yp6wjzrSsJ0MvMpLyZTeOc4zsYFysA3SUsR7KbLweMUVyEL5O+U9C3JA3IFyocT6NGRfVitMWam3Je9Gci7TX1in4MCtAPow6GS8ytKy5KQM48SGkfhl3S2Wwd7IgHfRhG9FBUq4uw4YIXmWU5CKK+evczeGZksgyL9Up+sf0I/F1BPhLyH3pweMdkZkFHzIdd+lOy+hKqa6qO4pr6jKkrXRatpQARzVqDPUJFY/fFCXpe+aje2HRgtaQW2/zgfu+lpY+IfGPuf4W30tCmbSCshyeVXtxFjwQd3B/Lz57mXSDMw/kZRqPOMNDHgzi+Hxb9ES9q8AyX24q8JQLysq6AcYAMk6lXgsos5TKHOhdPi8WnKyQxXFEnHqQ==;\n\t5:U1pudz97ujotlI8hLyYMYD8L1xTVFce2qc/RWcZh1DEvRdXaUbtPVEvsRJvLMegbRLXtOZaxJQnHDDdkwhsnk6BsgEXgbZNYFehfsdzymp4Kr77Ej4ljB8F43nlzhKrOz5a0YPbWVTu8gAfHZqCfLgjN8bUfnFD27DMnqlR4ztc=;\n\t7:9+a9mLCrpyIRzyLreJAGY/dy0+ecN65yQWMTydO1d900QjSOdfQfHxt7+9Sj3KUF/gAVkcECGcUlNg386k8nrjjSaLBOCxbmB5i59h80zmkshzkh7ghr2xlhhTgAzgSBUf+DErc0HnCsNbJuz//xHtPFUC8wYEGTsenQsmYtTbZ6N2i/EUbI2G/pfny1NABj4+ZoIDPAZOlO1kY86WbLzSi8F2yPhApgGAHJd3NnPD8W7D7ZjrOPfCN1cItnhu6B"
        ],
        "X-MS-TrafficTypeDiagnostic": "AM6PR04MB4679:",
        "X-Microsoft-Antispam-PRVS": "<AM6PR04MB4679A81AD5704E316EC9E71690150@AM6PR04MB4679.eurprd04.prod.outlook.com>",
        "X-Exchange-Antispam-Report-Test": "UriScan:(185117386973197);",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-Exchange-Antispam-Report-CFA-Test": "BCL:0; PCL:0;\n\tRULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(93006095)(93001095)(10201501046)(3231355)(944501410)(52105095)(3002001)(6055026)(149066)(150057)(6041310)(20161123564045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123562045)(20161123558120)(20161123560045)(201708071742011)(7699051);\n\tSRVR:AM6PR04MB4679; BCL:0; PCL:0; RULEID:; SRVR:AM6PR04MB4679; ",
        "X-Forefront-PRVS": "08076ABC99",
        "X-Forefront-Antispam-Report": "SFV:NSPM;\n\tSFS:(10009020)(376002)(136003)(396003)(346002)(366004)(39860400002)(189003)(199004)(11346002)(50226002)(446003)(47776003)(44832011)(956004)(476003)(106356001)(486006)(2616005)(6512007)(66066001)(305945005)(7736002)(6486002)(105586002)(36756003)(86362001)(478600001)(8936002)(16526019)(81166006)(50466002)(186003)(26005)(25786009)(8676002)(55236004)(48376002)(81156014)(4326008)(3846002)(6116002)(1076002)(6666003)(52116002)(34290500001)(5009440100003)(2906002)(16586007)(51416003)(316002)(97736004)(6506007)(76176011)(5660300001)(386003)(68736007)(53936002)(110426005);\n\tDIR:OUT; SFP:1101; SCL:1; SRVR:AM6PR04MB4679;\n\tH:Tophie.ap.freescale.net; FPR:; \n\tSPF:None; LANG:en; PTR:InfoNoRecords; MX:1; A:1; ",
        "Received-SPF": "None (protection.outlook.com: nxp.com does not designate\n\tpermitted sender hosts)",
        "X-Microsoft-Antispam-Message-Info": "R2bwXLlhjy9e9rs+SZoQX8xZxieY46A1faZXqkWXUD2WVJznkMTco3yZ1BXfbYipTLhuAGWqDjO3GJFAuXOUc78M+UcmNkwhuhaQjZN/SFNWFAtAitsKbbN84wE3tnib7Z5UMYwR7OcxuG/YKtD6+UUx4W7mKwRlOBb8HJuyjO6G5Dw7AFDG5FzEj7w1CXnN87pw8wgKa6gW16u6YCnUK9JBjwo7OY8LadnLSWdhrQbcyzkgGSwveEAMb0QW8+0X1ndO42M0Vh0yNEWPV7Oo3x5ozBv8h4b8TRsyj/K4cfaDOhgavg/8r/Qgfxwim0wyQEeVoj5Bsg6CUwmb/1fhTtTkCKiA+AMpxEqsKxV3Mp0=",
        "SpamDiagnosticOutput": "1:99",
        "SpamDiagnosticMetadata": "NSPM",
        "X-OriginatorOrg": "nxp.com",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "26 Sep 2018 18:06:05.8983\n\t(UTC)",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "f21780e6-d9f5-4b03-6b80-08d623dabb82",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "AM6PR04MB4679",
        "Subject": "[dpdk-dev] [PATCH v2 09/15] net/dpaa2: read hardware provided MAC\n\tfor DPNI devices",
        "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\t<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\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "Errors-To": "dev-bounces@dpdk.org",
        "Sender": "\"dev\" <dev-bounces@dpdk.org>"
    },
    "content": "Firmware would contain pre-configured devices for each DPMAC backing\na DPNI. This patch reads those MAC address when the device is\ninitialized and sets it. THereafter, it can be changed through API or\ncommands from testpmd.\n\nSigned-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>\n---\n drivers/net/dpaa2/dpaa2_ethdev.c | 79 +++++++++++++++++++++++++++++---\n 1 file changed, 73 insertions(+), 6 deletions(-)",
    "diff": "diff --git a/drivers/net/dpaa2/dpaa2_ethdev.c b/drivers/net/dpaa2/dpaa2_ethdev.c\nindex 91b1d5916..6ccb8ab15 100644\n--- a/drivers/net/dpaa2/dpaa2_ethdev.c\n+++ b/drivers/net/dpaa2/dpaa2_ethdev.c\n@@ -1786,6 +1786,71 @@ static struct eth_dev_ops dpaa2_ethdev_ops = {\n \t.rss_hash_conf_get    = dpaa2_dev_rss_hash_conf_get,\n };\n \n+/* Populate the mac address from physically available (u-boot/firmware) and/or\n+ * one set by higher layers like MC (restool) etc.\n+ * Returns the table of MAC entries (multiple entries)\n+ */\n+static int\n+populate_mac_addr(struct fsl_mc_io *dpni_dev, struct dpaa2_dev_priv *priv,\n+\t\t  struct ether_addr *mac_entry)\n+{\n+\tint ret;\n+\tstruct ether_addr phy_mac = {}, prime_mac = {};\n+\n+\t/* Get the physical device MAC address */\n+\tret = dpni_get_port_mac_addr(dpni_dev, CMD_PRI_LOW, priv->token,\n+\t\t\t\t     phy_mac.addr_bytes);\n+\tif (ret) {\n+\t\tDPAA2_PMD_ERR(\"DPNI get physical port MAC failed: %d\", ret);\n+\t\tgoto cleanup;\n+\t}\n+\n+\tret = dpni_get_primary_mac_addr(dpni_dev, CMD_PRI_LOW, priv->token,\n+\t\t\t\t\tprime_mac.addr_bytes);\n+\tif (ret) {\n+\t\tDPAA2_PMD_ERR(\"DPNI get Prime port MAC failed: %d\", ret);\n+\t\tgoto cleanup;\n+\t}\n+\n+\t/* Now that both MAC have been obtained, do:\n+\t *  if not_empty_mac(phy) && phy != Prime, overwrite prime with Phy\n+\t *     and return phy\n+\t *  If empty_mac(phy), return prime.\n+\t *  if both are empty, create random MAC, set as prime and return\n+\t */\n+\tif (!is_zero_ether_addr(&phy_mac)) {\n+\t\t/* If the addresses are not same, overwrite prime */\n+\t\tif (!is_same_ether_addr(&phy_mac, &prime_mac)) {\n+\t\t\tret = dpni_set_primary_mac_addr(dpni_dev, CMD_PRI_LOW,\n+\t\t\t\t\t\t\tpriv->token,\n+\t\t\t\t\t\t\tphy_mac.addr_bytes);\n+\t\t\tif (ret) {\n+\t\t\t\tDPAA2_PMD_ERR(\"Unable to set MAC Address: %d\",\n+\t\t\t\t\t      ret);\n+\t\t\t\tgoto cleanup;\n+\t\t\t}\n+\t\t\tmemcpy(&prime_mac, &phy_mac, sizeof(struct ether_addr));\n+\t\t}\n+\t} else if (is_zero_ether_addr(&prime_mac)) {\n+\t\t/* In case phys and prime, both are zero, create random MAC */\n+\t\teth_random_addr(prime_mac.addr_bytes);\n+\t\tret = dpni_set_primary_mac_addr(dpni_dev, CMD_PRI_LOW,\n+\t\t\t\t\t\tpriv->token,\n+\t\t\t\t\t\tprime_mac.addr_bytes);\n+\t\tif (ret) {\n+\t\t\tDPAA2_PMD_ERR(\"Unable to set MAC Address: %d\", ret);\n+\t\t\tgoto cleanup;\n+\t\t}\n+\t}\n+\n+\t/* prime_mac the final MAC address */\n+\tmemcpy(mac_entry, &prime_mac, sizeof(struct ether_addr));\n+\treturn 0;\n+\n+cleanup:\n+\treturn -1;\n+}\n+\n static int\n dpaa2_dev_init(struct rte_eth_dev *eth_dev)\n {\n@@ -1868,7 +1933,10 @@ dpaa2_dev_init(struct rte_eth_dev *eth_dev)\n \t\tgoto init_err;\n \t}\n \n-\t/* Allocate memory for storing MAC addresses */\n+\t/* Allocate memory for storing MAC addresses.\n+\t * Table of mac_filter_entries size is allocated so that RTE ether lib\n+\t * can add MAC entries when rte_eth_dev_mac_addr_add is called.\n+\t */\n \teth_dev->data->mac_addrs = rte_zmalloc(\"dpni\",\n \t\tETHER_ADDR_LEN * attr.mac_filter_entries, 0);\n \tif (eth_dev->data->mac_addrs == NULL) {\n@@ -1879,12 +1947,11 @@ dpaa2_dev_init(struct rte_eth_dev *eth_dev)\n \t\tgoto init_err;\n \t}\n \n-\tret = dpni_get_primary_mac_addr(dpni_dev, CMD_PRI_LOW,\n-\t\t\t\t\tpriv->token,\n-\t\t\t(uint8_t *)(eth_dev->data->mac_addrs[0].addr_bytes));\n+\tret = populate_mac_addr(dpni_dev, priv, &eth_dev->data->mac_addrs[0]);\n \tif (ret) {\n-\t\tDPAA2_PMD_ERR(\"DPNI get mac address failed:Err Code = %d\",\n-\t\t\t     ret);\n+\t\tDPAA2_PMD_ERR(\"Unable to fetch MAC Address for device\");\n+\t\trte_free(eth_dev->data->mac_addrs);\n+\t\teth_dev->data->mac_addrs = NULL;\n \t\tgoto init_err;\n \t}\n \n",
    "prefixes": [
        "v2",
        "09/15"
    ]
}