get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 50230,
    "url": "http://patches.dpdk.org/api/patches/50230/?format=api",
    "web_url": "http://patches.dpdk.org/project/dpdk/patch/1549556983-10896-36-git-send-email-arybchenko@solarflare.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": "<1549556983-10896-36-git-send-email-arybchenko@solarflare.com>",
    "list_archive_url": "https://inbox.dpdk.org/dev/1549556983-10896-36-git-send-email-arybchenko@solarflare.com",
    "date": "2019-02-07T16:29:40",
    "name": "[35/38] net/sfc/base: simplify EF10 family run-time checks",
    "commit_ref": null,
    "pull_url": null,
    "state": "accepted",
    "archived": true,
    "hash": "f3b6ed34b98370204e63ab8ce30da7915bd98597",
    "submitter": {
        "id": 607,
        "url": "http://patches.dpdk.org/api/people/607/?format=api",
        "name": "Andrew Rybchenko",
        "email": "arybchenko@solarflare.com"
    },
    "delegate": {
        "id": 319,
        "url": "http://patches.dpdk.org/api/users/319/?format=api",
        "username": "fyigit",
        "first_name": "Ferruh",
        "last_name": "Yigit",
        "email": "ferruh.yigit@amd.com"
    },
    "mbox": "http://patches.dpdk.org/project/dpdk/patch/1549556983-10896-36-git-send-email-arybchenko@solarflare.com/mbox/",
    "series": [
        {
            "id": 3411,
            "url": "http://patches.dpdk.org/api/series/3411/?format=api",
            "web_url": "http://patches.dpdk.org/project/dpdk/list/?series=3411",
            "date": "2019-02-07T16:29:05",
            "name": "net/sfc: update base driver",
            "version": 1,
            "mbox": "http://patches.dpdk.org/series/3411/mbox/"
        }
    ],
    "comments": "http://patches.dpdk.org/api/patches/50230/comments/",
    "check": "warning",
    "checks": "http://patches.dpdk.org/api/patches/50230/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 172DA1B752;\n\tThu,  7 Feb 2019 17:31:17 +0100 (CET)",
            "from dispatch1-us1.ppe-hosted.com (dispatch1-us1.ppe-hosted.com\n\t[67.231.154.164]) by dpdk.org (Postfix) with ESMTP id 196711B587\n\tfor <dev@dpdk.org>; Thu,  7 Feb 2019 17:30:39 +0100 (CET)",
            "from webmail.solarflare.com (webmail.solarflare.com\n\t[12.187.104.26])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby mx1-us3.ppe-hosted.com (Proofpoint Essentials ESMTP Server) with\n\tESMTPS id\n\tA7684B8007E for <dev@dpdk.org>; Thu,  7 Feb 2019 16:30:37 +0000 (UTC)",
            "from ocex03.SolarFlarecom.com (10.20.40.36) by\n\tocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server\n\t(TLS) id 15.0.1395.4; Thu, 7 Feb 2019 08:30:32 -0800",
            "from opal.uk.solarflarecom.com (10.17.10.1) by\n\tocex03.SolarFlarecom.com (10.20.40.36) with Microsoft SMTP Server\n\t(TLS) id\n\t15.0.1395.4 via Frontend Transport; Thu, 7 Feb 2019 08:30:32 -0800",
            "from ukv-loginhost.uk.solarflarecom.com\n\t(ukv-loginhost.uk.solarflarecom.com [10.17.10.39])\n\tby opal.uk.solarflarecom.com (8.13.8/8.13.8) with ESMTP id\n\tx17GUUdO015392 for <dev@dpdk.org>; Thu, 7 Feb 2019 16:30:30 GMT",
            "from ukv-loginhost.uk.solarflarecom.com (localhost [127.0.0.1])\n\tby ukv-loginhost.uk.solarflarecom.com (Postfix) with ESMTP id\n\tD423B1613EB\n\tfor <dev@dpdk.org>; Thu,  7 Feb 2019 16:30:30 +0000 (GMT)"
        ],
        "X-Virus-Scanned": "Proofpoint Essentials engine",
        "From": "Andrew Rybchenko <arybchenko@solarflare.com>",
        "To": "<dev@dpdk.org>",
        "Date": "Thu, 7 Feb 2019 16:29:40 +0000",
        "Message-ID": "<1549556983-10896-36-git-send-email-arybchenko@solarflare.com>",
        "X-Mailer": "git-send-email 1.8.3.1",
        "In-Reply-To": "<1549556983-10896-1-git-send-email-arybchenko@solarflare.com>",
        "References": "<1549556983-10896-1-git-send-email-arybchenko@solarflare.com>",
        "MIME-Version": "1.0",
        "Content-Type": "text/plain",
        "X-TM-AS-Product-Ver": "SMEX-12.5.0.1300-8.5.1010-24412.006",
        "X-TM-AS-Result": "No-15.527500-4.000000-10",
        "X-TMASE-MatchedRID": "DmIE4Tvg5l84Yc1OODXsU39NanCUA4VeG1MJZJUELLgs/uUAk6xP7PlY\n\toV6p/cSxUVB7I/2CDSCbM5bpvBLXfzMsvXqlls47dXu122+iJtr/lBG+uXYJkOaIRODYamtqSnh\n\tvA15Uzw7MfIyiqYmThZGqSuhI2l2oB7dwWBtziZS3Q9wUiDIFOEektG5Zbw/MW+jwVKpqvlLpMB\n\txizRL7nN8Eb6Ow/gRZ4ve7rjCcJqfQo7lIbG5ppLRtO1RC1Ep0a+E0oS8sctSBlUlVxAtuLM1ia\n\tfAn+pQrBBHev5DvTgwjFyEGgCHhis+XstyJB51OM8ORI7N4NZa0NJ9wxH7tkxjQD3m2MCf73hk9\n\t26UgiHfrwE7LBurOnpDNaGqNTCZ3d3WlHgjh+h1VTfJWlqPdDBI1EOUVOliSS4KPPiCB23CNy16\n\tiodFZHNySV4lmV+RhMykpleuP6Ck4OKUFvKRk2HfRSHMgugZwXONto4osF6yi1YG5GcTOT/m0YT\n\t+bdWquNnySAOF79BMfgADQyZnSClxxDx5qbkR9FEUknJ/kEl7dB/CxWTRRuyUIayx+Skid",
        "X-TM-AS-User-Approved-Sender": "No",
        "X-TM-AS-User-Blocked-Sender": "No",
        "X-TMASE-Result": "10--15.527500-4.000000",
        "X-TMASE-Version": "SMEX-12.5.0.1300-8.5.1010-24412.006",
        "X-MDID": "1549557038-NJ-5Pyx64ScY",
        "Subject": "[dpdk-dev] [PATCH 35/38] net/sfc/base: simplify EF10 family\n\trun-time checks",
        "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": "Add EFX_FAMILY_IS_EF10() which may be used as synonym of any EF10-based\nNIC family (i.e. Huntigton, Medford or Medford2 at the time of addition).\n\nSuggested-by: Andy Moreton <amoreton@solarflare.com>\nSigned-off-by: Andrew Rybchenko <arybchenko@solarflare.com>\n---\n drivers/net/sfc/base/ef10_ev.c     |  4 +--\n drivers/net/sfc/base/ef10_filter.c | 20 ++++-----------\n drivers/net/sfc/base/ef10_intr.c   | 12 +++------\n drivers/net/sfc/base/ef10_mac.c    |  4 +--\n drivers/net/sfc/base/ef10_mcdi.c   | 12 +++------\n drivers/net/sfc/base/ef10_nic.c    | 40 ++++++++----------------------\n drivers/net/sfc/base/ef10_vpd.c    | 32 ++++++------------------\n drivers/net/sfc/base/efx_impl.h    |  5 ++++\n drivers/net/sfc/base/efx_sram.c    |  8 ++----\n 9 files changed, 38 insertions(+), 99 deletions(-)",
    "diff": "diff --git a/drivers/net/sfc/base/ef10_ev.c b/drivers/net/sfc/base/ef10_ev.c\nindex f590f37f5..d2c27e0d2 100644\n--- a/drivers/net/sfc/base/ef10_ev.c\n+++ b/drivers/net/sfc/base/ef10_ev.c\n@@ -553,9 +553,7 @@ ef10_ev_qdestroy(\n {\n \tefx_nic_t *enp = eep->ee_enp;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t(void) efx_mcdi_fini_evq(enp, eep->ee_index);\n }\ndiff --git a/drivers/net/sfc/base/ef10_filter.c b/drivers/net/sfc/base/ef10_filter.c\nindex 0b3fbf78b..9c09a0de2 100644\n--- a/drivers/net/sfc/base/ef10_filter.c\n+++ b/drivers/net/sfc/base/ef10_filter.c\n@@ -94,9 +94,7 @@ ef10_filter_init(\n \tefx_rc_t rc;\n \tef10_filter_table_t *eftp;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n #define\tMATCH_MASK(match) (EFX_MASK32(match) << EFX_LOW_BIT(match))\n \tEFX_STATIC_ASSERT(EFX_FILTER_MATCH_REM_HOST ==\n@@ -154,9 +152,7 @@ ef10_filter_init(\n ef10_filter_fini(\n \t__in\t\tefx_nic_t *enp)\n {\n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (enp->en_filter.ef_ef10_filter_table != NULL) {\n \t\tEFSYS_KMEM_FREE(enp->en_esip, sizeof (ef10_filter_table_t),\n@@ -545,9 +541,7 @@ ef10_filter_restore(\n \tefsys_lock_state_t state;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tfor (tbl_id = 0; tbl_id < EFX_EF10_FILTER_TBL_ROWS; tbl_id++) {\n \n@@ -621,9 +615,7 @@ ef10_filter_add_internal(\n \tefsys_lock_state_t state;\n \tboolean_t locked = B_FALSE;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \thash = ef10_filter_hash(spec);\n \n@@ -894,9 +886,7 @@ ef10_filter_delete(\n \tefsys_lock_state_t state;\n \tboolean_t locked = B_FALSE;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \thash = ef10_filter_hash(spec);\n \ndiff --git a/drivers/net/sfc/base/ef10_intr.c b/drivers/net/sfc/base/ef10_intr.c\nindex b7822a259..ac9a62018 100644\n--- a/drivers/net/sfc/base/ef10_intr.c\n+++ b/drivers/net/sfc/base/ef10_intr.c\n@@ -55,9 +55,7 @@ efx_mcdi_trigger_interrupt(\n \t\tMC_CMD_TRIGGER_INTERRUPT_OUT_LEN);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (level >= enp->en_nic_cfg.enc_intr_limit) {\n \t\trc = EINVAL;\n@@ -128,9 +126,7 @@ ef10_intr_status_line(\n {\n \tefx_dword_t dword;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* Read the queue mask and implicitly acknowledge the interrupt. */\n \tEFX_BAR_READD(enp, ER_DZ_BIU_INT_ISR_REG, &dword, B_FALSE);\n@@ -147,9 +143,7 @@ ef10_intr_status_message(\n \t__in\t\tunsigned int message,\n \t__out\t\tboolean_t *fatalp)\n {\n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t_NOTE(ARGUNUSED(enp, message))\n \ndiff --git a/drivers/net/sfc/base/ef10_mac.c b/drivers/net/sfc/base/ef10_mac.c\nindex 28dba9290..3f3153889 100644\n--- a/drivers/net/sfc/base/ef10_mac.c\n+++ b/drivers/net/sfc/base/ef10_mac.c\n@@ -351,9 +351,7 @@ ef10_mac_multicast_list_set(\n \tconst efx_mac_ops_t *emop = epp->ep_emop;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif ((rc = emop->emo_reconfigure(enp)) != 0)\n \t\tgoto fail1;\ndiff --git a/drivers/net/sfc/base/ef10_mcdi.c b/drivers/net/sfc/base/ef10_mcdi.c\nindex 574879425..d1c6da404 100644\n--- a/drivers/net/sfc/base/ef10_mcdi.c\n+++ b/drivers/net/sfc/base/ef10_mcdi.c\n@@ -27,9 +27,7 @@ ef10_mcdi_init(\n \tefx_dword_t dword;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \tEFSYS_ASSERT(enp->en_features & EFX_FEATURE_MCDI_DMA);\n \n \t/*\n@@ -135,9 +133,7 @@ ef10_mcdi_send_request(\n \tefx_dword_t dword;\n \tunsigned int pos;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* Write the header */\n \tfor (pos = 0; pos < hdr_len; pos += sizeof (efx_dword_t)) {\n@@ -259,9 +255,7 @@ ef10_mcdi_feature_supported(\n \tuint32_t privilege_mask = encp->enc_privilege_mask;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/*\n \t * Use privilege mask state at MCDI attach.\ndiff --git a/drivers/net/sfc/base/ef10_nic.c b/drivers/net/sfc/base/ef10_nic.c\nindex 8c17f4a75..e5e84690e 100644\n--- a/drivers/net/sfc/base/ef10_nic.c\n+++ b/drivers/net/sfc/base/ef10_nic.c\n@@ -24,9 +24,7 @@ efx_mcdi_get_port_assignment(\n \t\tMC_CMD_GET_PORT_ASSIGNMENT_OUT_LEN);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \treq.emr_cmd = MC_CMD_GET_PORT_ASSIGNMENT;\n \treq.emr_in_buf = payload;\n@@ -70,9 +68,7 @@ efx_mcdi_get_port_modes(\n \t\tMC_CMD_GET_PORT_MODES_OUT_LEN);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \treq.emr_cmd = MC_CMD_GET_PORT_MODES;\n \treq.emr_in_buf = payload;\n@@ -308,9 +304,7 @@ efx_mcdi_get_mac_address_pf(\n \t\tMC_CMD_GET_MAC_ADDRESSES_OUT_LEN);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \treq.emr_cmd = MC_CMD_GET_MAC_ADDRESSES;\n \treq.emr_in_buf = payload;\n@@ -366,9 +360,7 @@ efx_mcdi_get_mac_address_vf(\n \t\tMC_CMD_VPORT_GET_MAC_ADDRESSES_OUT_LENMAX);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \treq.emr_cmd = MC_CMD_VPORT_GET_MAC_ADDRESSES;\n \treq.emr_in_buf = payload;\n@@ -430,9 +422,7 @@ efx_mcdi_get_clock(\n \t\tMC_CMD_GET_CLOCK_OUT_LEN);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \treq.emr_cmd = MC_CMD_GET_CLOCK;\n \treq.emr_in_buf = payload;\n@@ -892,9 +882,7 @@ ef10_nic_pio_alloc(\n \tuint32_t buf, blk;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \tEFSYS_ASSERT(bufnump);\n \tEFSYS_ASSERT(handlep);\n \tEFSYS_ASSERT(blknump);\n@@ -1963,9 +1951,7 @@ ef10_nic_probe(\n \tefx_drv_cfg_t *edcp = &(enp->en_drv_cfg);\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* Read and clear any assertion state */\n \tif ((rc = efx_mcdi_read_assertion(enp)) != 0)\n@@ -2177,9 +2163,7 @@ ef10_nic_init(\n \tuint32_t vi_window_size;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* Enable reporting of some events (e.g. link change) */\n \tif ((rc = efx_mcdi_log_ctrl(enp)) != 0)\n@@ -2340,9 +2324,7 @@ ef10_nic_get_vi_pool(\n \t__in\t\tefx_nic_t *enp,\n \t__out\t\tuint32_t *vi_countp)\n {\n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/*\n \t * Report VIs that the client driver can use.\n@@ -2362,9 +2344,7 @@ ef10_nic_get_bar_region(\n {\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/*\n \t * TODO: Specify host memory mapping alignment and granularity\ndiff --git a/drivers/net/sfc/base/ef10_vpd.c b/drivers/net/sfc/base/ef10_vpd.c\nindex b21861bb0..d56747b7d 100644\n--- a/drivers/net/sfc/base/ef10_vpd.c\n+++ b/drivers/net/sfc/base/ef10_vpd.c\n@@ -25,9 +25,7 @@ ef10_vpd_init(\n \tefx_rc_t rc;\n \n \tEFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_PROBE);\n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (enp->en_nic_cfg.enc_vpd_is_global) {\n \t\ttag = TLV_TAG_GLOBAL_STATIC_VPD;\n@@ -82,9 +80,7 @@ ef10_vpd_size(\n {\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/*\n \t * This function returns the total size the user should allocate\n@@ -116,9 +112,7 @@ ef10_vpd_read(\n \tuint32_t tag;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (enp->en_nic_cfg.enc_vpd_is_global) {\n \t\ttag = TLV_TAG_GLOBAL_DYNAMIC_VPD;\n@@ -172,9 +166,7 @@ ef10_vpd_verify(\n \tunsigned int dcont;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/*\n \t * Strictly you could take the view that dynamic vpd is optional.\n@@ -294,9 +286,7 @@ ef10_vpd_get(\n \tuint8_t length;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* Attempt to satisfy the request from svpd first */\n \tif (enp->en_arch.ef10.ena_svpd_length > 0) {\n@@ -341,9 +331,7 @@ ef10_vpd_set(\n {\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \t/* If the provided (tag,keyword) exists in svpd, then it is readonly */\n \tif (enp->en_arch.ef10.ena_svpd_length > 0) {\n@@ -395,9 +383,7 @@ ef10_vpd_write(\n \tuint32_t tag;\n \tefx_rc_t rc;\n \n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (enp->en_nic_cfg.enc_vpd_is_global) {\n \t\ttag = TLV_TAG_GLOBAL_DYNAMIC_VPD;\n@@ -432,9 +418,7 @@ ef10_vpd_write(\n ef10_vpd_fini(\n \t__in\t\t\tefx_nic_t *enp)\n {\n-\tEFSYS_ASSERT(enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2);\n+\tEFSYS_ASSERT(EFX_FAMILY_IS_EF10(enp));\n \n \tif (enp->en_arch.ef10.ena_svpd_length > 0) {\n \t\tEFSYS_KMEM_FREE(enp->en_esip, enp->en_arch.ef10.ena_svpd_length,\ndiff --git a/drivers/net/sfc/base/efx_impl.h b/drivers/net/sfc/base/efx_impl.h\nindex 748d45a3b..eb2bdc959 100644\n--- a/drivers/net/sfc/base/efx_impl.h\n+++ b/drivers/net/sfc/base/efx_impl.h\n@@ -741,6 +741,11 @@ struct efx_nic_s {\n #endif\t/* EFX_OPTS_EF10() */\n };\n \n+#define\tEFX_FAMILY_IS_EF10(_enp) \\\n+\t((_enp)->en_family == EFX_FAMILY_MEDFORD2 || \\\n+\t (_enp)->en_family == EFX_FAMILY_MEDFORD || \\\n+\t (_enp)->en_family == EFX_FAMILY_HUNTINGTON)\n+\n \n #define\tEFX_NIC_MAGIC\t0x02121996\n \ndiff --git a/drivers/net/sfc/base/efx_sram.c b/drivers/net/sfc/base/efx_sram.c\nindex de0612edd..599bc5d75 100644\n--- a/drivers/net/sfc/base/efx_sram.c\n+++ b/drivers/net/sfc/base/efx_sram.c\n@@ -26,9 +26,7 @@ efx_sram_buf_tbl_set(\n \tEFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_NIC);\n \n #if EFX_OPTS_EF10()\n-\tif (enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2) {\n+\tif (EFX_FAMILY_IS_EF10(enp)) {\n \t\t/*\n \t\t * FIXME: the efx_sram_buf_tbl_*() functionality needs to be\n \t\t * pulled inside the Falcon/Siena queue create/destroy code,\n@@ -149,9 +147,7 @@ efx_sram_buf_tbl_clear(\n \tEFSYS_ASSERT3U(enp->en_mod_flags, &, EFX_MOD_NIC);\n \n #if EFX_OPTS_EF10()\n-\tif (enp->en_family == EFX_FAMILY_HUNTINGTON ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD ||\n-\t    enp->en_family == EFX_FAMILY_MEDFORD2) {\n+\tif (EFX_FAMILY_IS_EF10(enp)) {\n \t\t/*\n \t\t * FIXME: the efx_sram_buf_tbl_*() functionality needs to be\n \t\t * pulled inside the Falcon/Siena queue create/destroy code,\n",
    "prefixes": [
        "35/38"
    ]
}