get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 1038995,
    "url": "http://patchwork.ozlabs.org/api/patches/1038995/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20190208205043.11975-12-anirudh.venkataramanan@intel.com/",
    "project": {
        "id": 46,
        "url": "http://patchwork.ozlabs.org/api/projects/46/?format=api",
        "name": "Intel Wired Ethernet development",
        "link_name": "intel-wired-lan",
        "list_id": "intel-wired-lan.osuosl.org",
        "list_email": "intel-wired-lan@osuosl.org",
        "web_url": "",
        "scm_url": "",
        "webscm_url": "",
        "list_archive_url": "",
        "list_archive_url_format": "",
        "commit_url_format": ""
    },
    "msgid": "<20190208205043.11975-12-anirudh.venkataramanan@intel.com>",
    "list_archive_url": null,
    "date": "2019-02-08T20:50:38",
    "name": "[S11,11/16] ice: clear VF ARQLEN register on reset",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": false,
    "hash": "04347938a8b00c772c24219377bf82a99c38778a",
    "submitter": {
        "id": 73601,
        "url": "http://patchwork.ozlabs.org/api/people/73601/?format=api",
        "name": "Anirudh Venkataramanan",
        "email": "anirudh.venkataramanan@intel.com"
    },
    "delegate": {
        "id": 68,
        "url": "http://patchwork.ozlabs.org/api/users/68/?format=api",
        "username": "jtkirshe",
        "first_name": "Jeff",
        "last_name": "Kirsher",
        "email": "jeffrey.t.kirsher@intel.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/intel-wired-lan/patch/20190208205043.11975-12-anirudh.venkataramanan@intel.com/mbox/",
    "series": [
        {
            "id": 90915,
            "url": "http://patchwork.ozlabs.org/api/series/90915/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/intel-wired-lan/list/?series=90915",
            "date": "2019-02-08T20:50:37",
            "name": "Bug fixes for ice",
            "version": 1,
            "mbox": "http://patchwork.ozlabs.org/series/90915/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/patches/1038995/comments/",
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/1038995/checks/",
    "tags": {},
    "related": [],
    "headers": {
        "Return-Path": "<intel-wired-lan-bounces@osuosl.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Delivered-To": [
            "patchwork-incoming@bilbo.ozlabs.org",
            "intel-wired-lan@lists.osuosl.org"
        ],
        "Authentication-Results": [
            "ozlabs.org;\n\tspf=pass (mailfrom) smtp.mailfrom=osuosl.org\n\t(client-ip=140.211.166.137; helo=fraxinus.osuosl.org;\n\tenvelope-from=intel-wired-lan-bounces@osuosl.org;\n\treceiver=<UNKNOWN>)",
            "ozlabs.org;\n\tdmarc=fail (p=none dis=none) header.from=intel.com"
        ],
        "Received": [
            "from fraxinus.osuosl.org (smtp4.osuosl.org [140.211.166.137])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256\n\tbits)) (No client certificate requested)\n\tby ozlabs.org (Postfix) with ESMTPS id 43x6rC5G5Xz9sN8\n\tfor <incoming@patchwork.ozlabs.org>;\n\tSat,  9 Feb 2019 07:54:51 +1100 (AEDT)",
            "from localhost (localhost [127.0.0.1])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id D2F3C870F7;\n\tFri,  8 Feb 2019 20:54:49 +0000 (UTC)",
            "from fraxinus.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id rTgVGyAuNZni; Fri,  8 Feb 2019 20:54:39 +0000 (UTC)",
            "from ash.osuosl.org (ash.osuosl.org [140.211.166.34])\n\tby fraxinus.osuosl.org (Postfix) with ESMTP id BC670870FB;\n\tFri,  8 Feb 2019 20:54:33 +0000 (UTC)",
            "from hemlock.osuosl.org (smtp2.osuosl.org [140.211.166.133])\n\tby ash.osuosl.org (Postfix) with ESMTP id B56341BF977\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri,  8 Feb 2019 20:52:48 +0000 (UTC)",
            "from localhost (localhost [127.0.0.1])\n\tby hemlock.osuosl.org (Postfix) with ESMTP id 0BDD688181\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri,  8 Feb 2019 20:52:46 +0000 (UTC)",
            "from hemlock.osuosl.org ([127.0.0.1])\n\tby localhost (.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)\n\twith ESMTP id KF27XjFYk+kf for <intel-wired-lan@lists.osuosl.org>;\n\tFri,  8 Feb 2019 20:52:36 +0000 (UTC)",
            "from mga02.intel.com (mga02.intel.com [134.134.136.20])\n\tby hemlock.osuosl.org (Postfix) with ESMTPS id B4AFA85EA7\n\tfor <intel-wired-lan@lists.osuosl.org>;\n\tFri,  8 Feb 2019 20:52:26 +0000 (UTC)",
            "from orsmga008.jf.intel.com ([10.7.209.65])\n\tby orsmga101.jf.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384;\n\t08 Feb 2019 12:50:44 -0800",
            "from shasta.jf.intel.com ([10.166.241.11])\n\tby orsmga008.jf.intel.com with ESMTP; 08 Feb 2019 12:50:44 -0800"
        ],
        "X-Virus-Scanned": [
            "amavisd-new at osuosl.org",
            "amavisd-new at osuosl.org"
        ],
        "X-Greylist": "domain auto-whitelisted by SQLgrey-1.7.6",
        "X-Amp-Result": "SKIPPED(no attachment in message)",
        "X-Amp-File-Uploaded": "False",
        "X-ExtLoop1": "1",
        "X-IronPort-AV": "E=Sophos;i=\"5.58,348,1544515200\"; d=\"scan'208\";a=\"116332341\"",
        "From": "Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>",
        "To": "intel-wired-lan@lists.osuosl.org",
        "Date": "Fri,  8 Feb 2019 12:50:38 -0800",
        "Message-Id": "<20190208205043.11975-12-anirudh.venkataramanan@intel.com>",
        "X-Mailer": "git-send-email 2.14.5",
        "In-Reply-To": "<20190208205043.11975-1-anirudh.venkataramanan@intel.com>",
        "References": "<20190208205043.11975-1-anirudh.venkataramanan@intel.com>",
        "Subject": "[Intel-wired-lan] [PATCH S11 11/16] ice: clear VF ARQLEN register\n\ton reset",
        "X-BeenThere": "intel-wired-lan@osuosl.org",
        "X-Mailman-Version": "2.1.29",
        "Precedence": "list",
        "List-Id": "Intel Wired Ethernet Linux Kernel Driver Development\n\t<intel-wired-lan.osuosl.org>",
        "List-Unsubscribe": "<https://lists.osuosl.org/mailman/options/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=unsubscribe>",
        "List-Archive": "<http://lists.osuosl.org/pipermail/intel-wired-lan/>",
        "List-Post": "<mailto:intel-wired-lan@osuosl.org>",
        "List-Help": "<mailto:intel-wired-lan-request@osuosl.org?subject=help>",
        "List-Subscribe": "<https://lists.osuosl.org/mailman/listinfo/intel-wired-lan>, \n\t<mailto:intel-wired-lan-request@osuosl.org?subject=subscribe>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain; charset=\"us-ascii\"",
        "Content-Transfer-Encoding": "7bit",
        "Errors-To": "intel-wired-lan-bounces@osuosl.org",
        "Sender": "\"Intel-wired-lan\" <intel-wired-lan-bounces@osuosl.org>"
    },
    "content": "From: Mitch Williams <mitch.a.williams@intel.com>\n\nOn older devices like X710 and X722, the VF's ARQLEN register is cleared\non reset, so the VF driver uses that register to detect an unannouced\nreset. Unfortunately, on devices controlled by ice, this register is NOT\ncleared on reset. This causes the VF to miss resets, and even on\nproperly-announced resets, the VF driver complains that it didn't see\nthe reset.\n\nTo fix this, we'll do it in software. When we handle a VF reset (whether\ntriggered by software or VFLR), clear this register after the HW reset\nis complete.\n\nSigned-off-by: Mitch Williams <mitch.a.williams@intel.com>\nSigned-off-by: Anirudh Venkataramanan <anirudh.venkataramanan@intel.com>\n---\n drivers/net/ethernet/intel/ice/ice_hw_autogen.h  | 1 +\n drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c | 5 +++++\n 2 files changed, 6 insertions(+)",
    "diff": "diff --git a/drivers/net/ethernet/intel/ice/ice_hw_autogen.h b/drivers/net/ethernet/intel/ice/ice_hw_autogen.h\nindex f9a38f2cd470..6bf5cc064270 100644\n--- a/drivers/net/ethernet/intel/ice/ice_hw_autogen.h\n+++ b/drivers/net/ethernet/intel/ice/ice_hw_autogen.h\n@@ -30,6 +30,7 @@\n #define PF_FW_ATQLEN_ATQVFE_M\t\t\tBIT(28)\n #define PF_FW_ATQLEN_ATQOVFL_M\t\t\tBIT(29)\n #define PF_FW_ATQLEN_ATQCRIT_M\t\t\tBIT(30)\n+#define VF_MBX_ARQLEN(_VF)\t\t\t(0x0022BC00 + ((_VF) * 4))\n #define PF_FW_ATQLEN_ATQENABLE_M\t\tBIT(31)\n #define PF_FW_ATQT\t\t\t\t0x00080400\n #define PF_MBX_ARQBAH\t\t\t\t0x0022E400\ndiff --git a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\nindex 79d793a76042..458e179ea863 100644\n--- a/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\n+++ b/drivers/net/ethernet/intel/ice/ice_virtchnl_pf.c\n@@ -310,6 +310,11 @@ static void ice_trigger_vf_reset(struct ice_vf *vf, bool is_vflr)\n \t */\n \tclear_bit(ICE_VF_STATE_INIT, vf->vf_states);\n \n+\t/* Clear the VF's ARQLEN register. This is how the VF detects reset,\n+\t * since the VFGEN_RSTAT register doesn't stick at 0 after reset.\n+\t */\n+\twr32(hw, VF_MBX_ARQLEN(vf_abs_id), 0);\n+\n \t/* In the case of a VFLR, the HW has already reset the VF and we\n \t * just need to clean up, so don't hit the VFRTRIG register.\n \t */\n",
    "prefixes": [
        "S11",
        "11/16"
    ]
}