Show a patch.

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

{
    "id": 4,
    "url": "https://patches.dpdk.org/api/patches/4/",
    "web_url": "https://patches.dpdk.org/patch/4/",
    "project": {
        "id": 1,
        "url": "https://patches.dpdk.org/api/projects/1/",
        "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"
    },
    "msgid": "<1409819711-18718-1-git-send-email-grrwlf@gmail.com>",
    "date": "2014-09-04T08:35:11",
    "name": "[dpdk-dev] igb_ethdev.c: complete switches for i211 NC",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "a77bbfcb3e15095dd20ee9db86a10df66e0ae2be",
    "submitter": {
        "id": 6,
        "url": "https://patches.dpdk.org/api/people/6/",
        "name": "Sergey Mironov",
        "email": "grrwlf@gmail.com"
    },
    "delegate": null,
    "mbox": "https://patches.dpdk.org/patch/4/mbox/",
    "series": [],
    "comments": "https://patches.dpdk.org/api/patches/4/comments/",
    "check": "pending",
    "checks": "https://patches.dpdk.org/api/patches/4/checks/",
    "tags": {},
    "headers": {
        "Received": [
            "from mail-la0-f43.google.com (mail-la0-f43.google.com\n\t[209.85.215.43]) by dpdk.org (Postfix) with ESMTP id 72A79B373\n\tfor <dev@dpdk.org>; Thu,  4 Sep 2014 10:30:47 +0200 (CEST)",
            "by mail-la0-f43.google.com with SMTP id gi9so604800lab.16\n\tfor <dev@dpdk.org>; Thu, 04 Sep 2014 01:35:27 -0700 (PDT)",
            "from ww.ecotelecom.ru ([91.224.132.27])\n\tby mx.google.com with ESMTPSA id s7sm297882lby.45.2014.09.04.01.35.26\n\tfor <multiple recipients>\n\t(version=TLSv1.2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128);\n\tThu, 04 Sep 2014 01:35:26 -0700 (PDT)"
        ],
        "From": "Sergey Mironov <grrwlf@gmail.com>",
        "List-Help": "<mailto:dev-request@dpdk.org?subject=help>",
        "Message-Id": "<1409819711-18718-1-git-send-email-grrwlf@gmail.com>",
        "List-Subscribe": "<http://dpdk.org/ml/listinfo/dev>,\n\t<mailto:dev-request@dpdk.org?subject=subscribe>",
        "List-Id": "patches and discussions about DPDK <dev.dpdk.org>",
        "Date": "Thu,  4 Sep 2014 12:35:11 +0400",
        "Subject": "[dpdk-dev] [PATCH] igb_ethdev.c: complete switches for i211 NC",
        "Precedence": "list",
        "X-List-Received-Date": "Thu, 04 Sep 2014 08:30:47 -0000",
        "X-BeenThere": "dev@dpdk.org",
        "To": "dev@dpdk.org",
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113;\n\th=from:to:cc:subject:date:message-id;\n\tbh=+5oMvqcqTXMCuwTWd2s2h1YlD4830k0OYwo9u23QcCE=;\n\tb=ME+rUKrcSSHdL2WiGLJAuIRzCk88WzcniiKeTxlfd7/YI6z/SpoZeqiq44f77Go0oE\n\ty0DLk0STGr9/dO8yXvCl6uwbvcB2nBI3FWrv2sliYprtxQ2Noa7LN712maX5JUjoOwng\n\tVLj1VoIpr6Yy36NOcxalE111HFj4OM+H7HSE1TVAKiPtrkU1zj1vHLIC9BVEFeK6g2Tw\n\tmYBiBEctXkbl8ZFnyRJQQ10GV9hAdVmH6r6lFPKrqt+NNZ9zVMCdqzfC2RFFXmf3lfr6\n\tKe89SMzzVYg703VHRTCLG0TjL1GxykIDhncew8L/31V/E//EVmKcBNJp2RpFfAtXNb7f\n\t3lzA==",
        "List-Unsubscribe": "<http://dpdk.org/ml/options/dev>,\n\t<mailto:dev-request@dpdk.org?subject=unsubscribe>",
        "Return-Path": "<grrwlf@gmail.com>",
        "X-Mailer": "git-send-email 1.8.4.3",
        "List-Post": "<mailto:dev@dpdk.org>",
        "List-Archive": "<http://dpdk.org/ml/archives/dev/>",
        "X-Received": "by 10.112.149.36 with SMTP id tx4mr2759252lbb.79.1409819727306; \n\tThu, 04 Sep 2014 01:35:27 -0700 (PDT)",
        "X-Mailman-Version": "2.1.15"
    },
    "content": "Hi! I have got an update for my \"i212 problem\". First of all, I found\nthat I have made a mistake. My controller is named i211, not i212 :)\nNext, i211 controller is controlled by the lib_pmd_e1000 driver.\nUnfortunately, looks like it's support is pure. For example,\nigb_ethdev.c contains function eth_igb_infos_get() which should set\nnumber of tx/rx queues supported by the hardware. It contains huge\n[switch] but there is no i211 case! That is why I see zeros every time\nI try to start this NC. Also, there are few other places which mention\ni210, but not mention i211. I've attached a patch which adds necessary\ni211 support, but I didn't check it enough to say it is totally\ncorrect. For now I see that it just able to send and receive some\npackets.\n\nCould you please review/correct it?\n---\n lib/librte_pmd_e1000/igb_ethdev.c | 11 +++++++++--\n 1 file changed, 9 insertions(+), 2 deletions(-)",
    "diff": "diff --git a/lib/librte_pmd_e1000/igb_ethdev.c b/lib/librte_pmd_e1000/igb_ethdev.c\nindex f93a460..23e638d 100644\n--- a/lib/librte_pmd_e1000/igb_ethdev.c\n+++ b/lib/librte_pmd_e1000/igb_ethdev.c\n@@ -689,7 +689,8 @@ eth_igb_start(struct rte_eth_dev *dev)\n \t * value of Write-Back Threshold registers.\n \t */\n \tif ((hw->mac.type == e1000_82576) || (hw->mac.type == e1000_82580) ||\n-\t\t(hw->mac.type == e1000_i350) || (hw->mac.type == e1000_i210)) {\n+\t\t(hw->mac.type == e1000_i350) || (hw->mac.type == e1000_i210) ||\n+    (hw->mac.type == e1000_i211)) {\n \t\tuint32_t ivar;\n \n \t\t/* Enable all RX & TX queues in the IVAR registers */\n@@ -837,7 +838,7 @@ igb_get_rx_buffer_size(struct e1000_hw *hw)\n \t\trx_buf_size = (E1000_READ_REG(hw, E1000_RXPBS) & 0xf);\n \t\trx_buf_size = (uint32_t) e1000_rxpbs_adjust_82580(rx_buf_size);\n \t\trx_buf_size = (rx_buf_size << 10);\n-\t} else if (hw->mac.type == e1000_i210) {\n+\t} else if (hw->mac.type == e1000_i210 || hw->mac.type == e1000_i211) {\n \t\trx_buf_size = (E1000_READ_REG(hw, E1000_RXPBS) & 0x3f) << 10;\n \t} else {\n \t\trx_buf_size = (E1000_READ_REG(hw, E1000_PBA) & 0xffff) << 10;\n@@ -1179,6 +1180,12 @@ eth_igb_infos_get(struct rte_eth_dev *dev,\n \t\tdev_info->max_vmdq_pools = 0;\n \t\tbreak;\n \n+\tcase e1000_i211:\n+\t\tdev_info->max_rx_queues = 2;\n+\t\tdev_info->max_tx_queues = 2;\n+\t\tdev_info->max_vmdq_pools = 0;\n+\t\tbreak;\n+\n \tcase e1000_vfadapt:\n \t\tdev_info->max_rx_queues = 2;\n \t\tdev_info->max_tx_queues = 2;\n",
    "prefixes": [
        "dpdk-dev"
    ]
}