Show a cover letter.

GET /api/covers/2216209/?format=api
HTTP 200 OK
Allow: GET, HEAD, OPTIONS
Content-Type: application/json
Vary: Accept

{
    "id": 2216209,
    "url": "http://patchwork.ozlabs.org/api/covers/2216209/?format=api",
    "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/cover/20260326062917.3552334-1-wei.fang@nxp.com/",
    "project": {
        "id": 2,
        "url": "http://patchwork.ozlabs.org/api/projects/2/?format=api",
        "name": "Linux PPC development",
        "link_name": "linuxppc-dev",
        "list_id": "linuxppc-dev.lists.ozlabs.org",
        "list_email": "linuxppc-dev@lists.ozlabs.org",
        "web_url": "https://github.com/linuxppc/wiki/wiki",
        "scm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git",
        "webscm_url": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/",
        "list_archive_url": "https://lore.kernel.org/linuxppc-dev/",
        "list_archive_url_format": "https://lore.kernel.org/linuxppc-dev/{}/",
        "commit_url_format": "https://git.kernel.org/pub/scm/linux/kernel/git/powerpc/linux.git/commit/?id={}"
    },
    "msgid": "<20260326062917.3552334-1-wei.fang@nxp.com>",
    "list_archive_url": "https://lore.kernel.org/linuxppc-dev/20260326062917.3552334-1-wei.fang@nxp.com/",
    "date": "2026-03-26T06:29:03",
    "name": "[v3,net-next,00/14] Add preliminary NETC switch support for i.MX94",
    "submitter": {
        "id": 84380,
        "url": "http://patchwork.ozlabs.org/api/people/84380/?format=api",
        "name": "Wei Fang",
        "email": "wei.fang@nxp.com"
    },
    "mbox": "http://patchwork.ozlabs.org/project/linuxppc-dev/cover/20260326062917.3552334-1-wei.fang@nxp.com/mbox/",
    "series": [
        {
            "id": 497537,
            "url": "http://patchwork.ozlabs.org/api/series/497537/?format=api",
            "web_url": "http://patchwork.ozlabs.org/project/linuxppc-dev/list/?series=497537",
            "date": "2026-03-26T06:29:03",
            "name": "Add preliminary NETC switch support for i.MX94",
            "version": 3,
            "mbox": "http://patchwork.ozlabs.org/series/497537/mbox/"
        }
    ],
    "comments": "http://patchwork.ozlabs.org/api/covers/2216209/comments/",
    "headers": {
        "Return-Path": "\n <linuxppc-dev+bounces-18795-incoming=patchwork.ozlabs.org@lists.ozlabs.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "linuxppc-dev@lists.ozlabs.org"
        ],
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=nxp.com header.i=@nxp.com header.a=rsa-sha256\n header.s=selector1 header.b=EYxkafqC;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=lists.ozlabs.org\n (client-ip=112.213.38.117; helo=lists.ozlabs.org;\n envelope-from=linuxppc-dev+bounces-18795-incoming=patchwork.ozlabs.org@lists.ozlabs.org;\n receiver=patchwork.ozlabs.org)",
            "lists.ozlabs.org;\n arc=pass smtp.remote-ip=\"2a01:111:f403:c201::6\" arc.chain=microsoft.com",
            "lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com",
            "lists.ozlabs.org;\n\tdkim=pass (2048-bit key;\n unprotected) header.d=nxp.com header.i=@nxp.com header.a=rsa-sha256\n header.s=selector1 header.b=EYxkafqC;\n\tdkim-atps=neutral",
            "lists.ozlabs.org;\n spf=permerror (SPF Permanent Error: Void lookup limit of 2 exceeded)\n smtp.mailfrom=nxp.com (client-ip=2a01:111:f403:c201::6;\n helo=am0pr02cu008.outbound.protection.outlook.com;\n envelope-from=wei.fang@nxp.com; receiver=lists.ozlabs.org)",
            "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=nxp.com;"
        ],
        "Received": [
            "from lists.ozlabs.org (lists.ozlabs.org [112.213.38.117])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange x25519)\n\t(No client certificate requested)\n\tby legolas.ozlabs.org (Postfix) with ESMTPS id 4fhDNN2bKbz1y1G\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 26 Mar 2026 17:27:47 +1100 (AEDT)",
            "from boromir.ozlabs.org (localhost [127.0.0.1])\n\tby lists.ozlabs.org (Postfix) with ESMTP id 4fhDNM23D9z2xlf;\n\tThu, 26 Mar 2026 17:27:47 +1100 (AEDT)",
            "from AM0PR02CU008.outbound.protection.outlook.com\n (mail-westeuropeazlp170130006.outbound.protection.outlook.com\n [IPv6:2a01:111:f403:c201::6])\n\t(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)\n\t key-exchange secp256r1 server-signature RSA-PSS (2048 bits) server-digest\n SHA256)\n\t(No client certificate requested)\n\tby lists.ozlabs.org (Postfix) with ESMTPS id 4fhDNK3l2Fz2xd6\n\tfor <linuxppc-dev@lists.ozlabs.org>; Thu, 26 Mar 2026 17:27:45 +1100 (AEDT)",
            "from PAXPR04MB8510.eurprd04.prod.outlook.com (2603:10a6:102:211::7)\n by PA2PR04MB10309.eurprd04.prod.outlook.com (2603:10a6:102:41f::11) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9723.31; Thu, 26 Mar\n 2026 06:27:21 +0000",
            "from PAXPR04MB8510.eurprd04.prod.outlook.com\n ([fe80::b476:c19a:24cd:3694]) by PAXPR04MB8510.eurprd04.prod.outlook.com\n ([fe80::b476:c19a:24cd:3694%3]) with mapi id 15.20.9745.019; Thu, 26 Mar 2026\n 06:27:21 +0000"
        ],
        "ARC-Seal": [
            "i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707; t=1774506467;\n\tcv=pass;\n b=FrTbWLhbhMIyah9NXx5zFr/vQWWmHuKm3kgdU8mgoHGrsQV9+3KzTG3axMvQi5RSZCfoNbngIwq1Nt4QWT1cgKMrtzQ3Gnkus6qINzdZF1hS62KTB8+4cHv9Fui+yq0BwqSsIwzVxKrwbQ0yNjaobc6A4NGrj3SC6n03QxDaxBVbOrPF7IW/ZJCITOdIcY/D+nq2V8UHonzTG1T/vL0OsBvHj08FZy8SaIVjMkeeO8LfwAKPcXif7Q9YS0jsAoNaGB6DEc1ftL+yTLzO5TOg0qaPvOsvMDMVK2v+0Y1VaqagKr3rb2U9n7llqegjk7Kjt+/YECdNkQ+pUTXyyyCxow==",
            "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=exyGiZWhw19WdOG2ya+sBjGf+ArubCdqFChAC73JjlpatZZzCRVp+j7/DDvGv0e8kBSx5/M4R8d9TVmQPuk4fyZORbdh6yUVgX5+YafMSTfkBxnhyye2g9GTMYEt8EDj/F7zm4O3rkefVrDGR79YNWhgC2JmbXxUJk8ENRaBeEakRhaOELwDOB1i3s0CzUOExxcK5vdYyY0o5UA7VhH4/UsaEMr5s+WgznOcKiU189WWv3YNRN3yCpSUTi3aYZsq0bKiw3hHIv2pfW9Vn5piOYcGxFR/wZl0QO8NfOyR5EU7hxJ2LktCgo5KvwnT8nmWj89V/t7wuohwC73t/lGWtA=="
        ],
        "ARC-Message-Signature": [
            "i=2; a=rsa-sha256; d=lists.ozlabs.org; s=201707;\n\tt=1774506467; c=relaxed/relaxed;\n\tbh=0/Ig6QHm6f+vAuUX+t5kRLquc9gxss9/tlRHXXrTG5k=;\n\th=From:To:Cc:Subject:Date:Message-Id:Content-Type:MIME-Version;\n b=gnWXQ9RwSSNkpkdTTuQcF67QiSw3T+njN2X3Bavm4varrS/4S+XX/ctR+3GDGL6MxLkQHqdlZDMX6v391f3/KnJ8mCEepTVAJpXvfiumvnT/L5xaUk1eD09Sc+CCOWEukt5OKuV5/qLRr7jExBcOxUdcX/uy081z5IE4fG39DlXIks1y7vXHOa1cvtSoUUTtzdO1HowXvkEC7h/toEyuEKFYBEuRPKRI3eaqyAnosgLm8Xjy5Y03xwgegq1VZOr5PhRtAcYHjMjiDYxWkZp+VnTWYb+ipfEGGhAZJccZx+ZhAevCbDDFIpW7iXmX4yi6SbT07SoLuC2uce2jcyCu5g==",
            "i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com;\n s=arcselector10001;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1;\n bh=0/Ig6QHm6f+vAuUX+t5kRLquc9gxss9/tlRHXXrTG5k=;\n b=yyc6HLeSUPtOCTZSDP7BaBnOcu/ytC5R6Ox5EBlaXOeqe5kPjPJJYsiqHqJq+CUwU4E8A9SKd+5/yg+6U585DNC4RVMCEQRpqss7kMJ0fmHB+MXZeWXTv34pmNUzPkGsjvZ/YM4bG+DoMzOvSVs1rGwsC84rxhxhwYsDHT3hBS7IKrzqqmjNMXIj08TpuWensI4EOBmpVOAUQbuAnIct2zoK/c/JqUEPEXE2ePeEwm0j9QpoGmq4U2K452Ajbu//XQYM332AWn7uM9UkRJCv0qu9u6xu1ohXBLle+fHyWo0OBAMBtMyDyX/8h/mnhflwS3V4sKdLdnkgM/T1Hgzr+w=="
        ],
        "ARC-Authentication-Results": [
            "i=2; lists.ozlabs.org;\n dmarc=pass (p=none dis=none) header.from=nxp.com; dkim=pass (2048-bit key;\n unprotected) header.d=nxp.com header.i=@nxp.com header.a=rsa-sha256\n header.s=selector1 header.b=EYxkafqC; dkim-atps=neutral;\n spf=permerror (client-ip=2a01:111:f403:c201::6;\n helo=am0pr02cu008.outbound.protection.outlook.com;\n envelope-from=wei.fang@nxp.com;\n receiver=lists.ozlabs.org) smtp.mailfrom=nxp.com",
            "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=nxp.com; dmarc=pass action=none header.from=nxp.com; dkim=pass\n header.d=nxp.com; arc=none"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=0/Ig6QHm6f+vAuUX+t5kRLquc9gxss9/tlRHXXrTG5k=;\n b=EYxkafqChvRnfAmqIdw2jylgU7zsI1vVWCzZn53ZOLMYsCWFub9wJVKOxMLQ56EqJJCeHj0iOaC3InwdfDg0UnRIPjlAm3SjabumGBXhi03vSFyg5PMZBJqFWB8+zhReup3I/sJYmiKiJ0LpE1kS+Gv+xnRgnlJAv7S53scHuG2Uw7GhUHkQjGquZ48qjZzEW6C4Q8FxHjgm9TuW7lFAaB0moOTYcBy7sEt39AvcpC9sdY9B5PfYUUwpEPAxHz7m/6VUiz7qO0Zb/MUx6CKNAVYrYkmk8/02XdAQsYMku+tM7TclKAhGzdxH73NKXVNxm4Bw1ib1KigJYPfn2hhIpg==",
        "From": "Wei Fang <wei.fang@nxp.com>",
        "To": "claudiu.manoil@nxp.com,\n\tvladimir.oltean@nxp.com,\n\txiaoning.wang@nxp.com,\n\tandrew+netdev@lunn.ch,\n\tdavem@davemloft.net,\n\tedumazet@google.com,\n\tkuba@kernel.org,\n\tpabeni@redhat.com,\n\trobh@kernel.org,\n\tkrzk+dt@kernel.org,\n\tconor+dt@kernel.org,\n\tf.fainelli@gmail.com,\n\tfrank.li@nxp.com,\n\tchleroy@kernel.org,\n\thorms@kernel.org,\n\tlinux@armlinux.org.uk,\n\tandrew@lunn.ch",
        "Cc": "netdev@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org,\n\tdevicetree@vger.kernel.org,\n\tlinuxppc-dev@lists.ozlabs.org,\n\tlinux-arm-kernel@lists.infradead.org,\n\timx@lists.linux.dev",
        "Subject": "[PATCH v3 net-next 00/14] Add preliminary NETC switch support for\n i.MX94",
        "Date": "Thu, 26 Mar 2026 14:29:03 +0800",
        "Message-Id": "<20260326062917.3552334-1-wei.fang@nxp.com>",
        "X-Mailer": "git-send-email 2.34.1",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "MA5PR01CA0046.INDPRD01.PROD.OUTLOOK.COM\n (2603:1096:a01:1d6::15) To PAXPR04MB8510.eurprd04.prod.outlook.com\n (2603:10a6:102:211::7)",
        "X-Mailing-List": "linuxppc-dev@lists.ozlabs.org",
        "List-Id": "<linuxppc-dev.lists.ozlabs.org>",
        "List-Help": "<mailto:linuxppc-dev+help@lists.ozlabs.org>",
        "List-Owner": "<mailto:linuxppc-dev+owner@lists.ozlabs.org>",
        "List-Post": "<mailto:linuxppc-dev@lists.ozlabs.org>",
        "List-Archive": "<https://lore.kernel.org/linuxppc-dev/>,\n  <https://lists.ozlabs.org/pipermail/linuxppc-dev/>",
        "List-Subscribe": "<mailto:linuxppc-dev+subscribe@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-digest@lists.ozlabs.org>,\n  <mailto:linuxppc-dev+subscribe-nomail@lists.ozlabs.org>",
        "List-Unsubscribe": "<mailto:linuxppc-dev+unsubscribe@lists.ozlabs.org>",
        "Precedence": "list",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "PAXPR04MB8510:EE_|PA2PR04MB10309:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "ad4b04c3-2c56-4135-1ba9-08de8b00bbf0",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|7416014|376014|1800799024|19092799006|366016|52116014|921020|38350700014|18002099003|56012099003;",
        "X-Microsoft-Antispam-Message-Info": "\n\tn/IbjOXh/hvAVBW488W2FliTqx22f71NwkVYt/9cBjsMFLqE5qeA8IfrXGLj7SPNSOaprvk5LYlmtJcODrir/y7eHDlzltN4VYVt/MK5M3wbcswsZYWuNVzcuTT3koccC7mmRvwMSbTtcTANDRMfFISR0USoU00pv95S50h8wA6xF6lKoMPDc1aiMIO2pRVKc2CjxHEtrkcO03cZAoBbli4VmY2y47g4GrpBRck1e2bGT5wVGyd4iV2gyel68eidt+vQUc+J/zPTbcJLUgKvOr2y14iS40GQanJbvEK9SlBBgtj05Xqc95UUo6yKlwgH752vNTO09puR65owQuiUr/HFv7kO2L3xvED5QbzCu0SsZuoSSEgrzsvlaosnZjhMtxb5AxMIfpbzTKZW83EDDDa5IYoRxCogtUVgTD9ZgXLcmyAAZCZ2mRwGkwulZTvkyzFxwfyu5wmXuoWQvCgyCMSH6lwUblNu+9g+R2hHw7DurEPrdu56zpfkKaNKOOKDW2qQWLdHNBIIJOYDUvJDBxKkxsybGL4ln0an56EUxYAG/YpupyZvMqoIvpC/Oyv4HfAxtFOhMdIDyFe1BTWeXy3I/CD85c5G2jrSqFHh3021NfPoBWGdMshUD5/wVxgzZ8FAeHkYSsmUpLDsAR4Uw9uyktN9IgfwcC2zwGgyaBcyX2Dual94Txnc1xi7Ry8tco0F0VQcgz+BENPYtz7yXvA7bJmYTzoD2JkvufgU7xeAtioih2E0QnSJhyVjVJmvNSAirJllPK6n5r1bWT9e+uFErBmb4REUp9uGmmcld7C4TzgatnmAziQkskh/QCSx",
        "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:PAXPR04MB8510.eurprd04.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(7416014)(376014)(1800799024)(19092799006)(366016)(52116014)(921020)(38350700014)(18002099003)(56012099003);DIR:OUT;SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n 3+4ddGcUU/vzWpyHkzCUi1tuU/92tmICIq+NxtpJqXNHVNJIcuAoDkDHBevqA9kXk8oAw6lbxG+ZlQd33y/yuUulpKkzldsD66wSB+NiAJ0k4rQj3Xz7KV/K/qittqKB97oQg7QG/Vw5AcPBdoBcztZumjeVvIPTBJRAvZpBAbIJJ2ZjykcyYYM4olR0mpdCtBEdwHRZePKDOU+WPG8JAAFxH5ue8xPGGyYHWjZINEuqxmPQfyFNYHAco3J103agIs7cJjYi7VBEzmW0qhxNN5W8Zy1S8FE35IKL+gWBccd+RTWXMbnaiVLIx154xE5xKwrudlTVpQ7c8H+tRgrdMYmVgEuNGeak+ARMKcdss/EK9BQbJaJyFJ42rMkqEgNx393t3H137/qn7FpdGMk3+6521cI87f3Iqb/3TA4KDhGT7kLezgG5MujPUGvQEuPRaJlO/CJZliBndTLP58UukHH27kD1MqUcXOySH2pQs3I2AL1U3mwHMqtut8qFRu6Iz7pIdA2wd23hQKZzNb+fJ4xpA/Otq5K9ca11w/eECblxqoEpr2hYe03lxln0fFsCvKcpSVbzWz/BFZXZng3rpwwBXJ0NTh7H3TrPwMpUbJOlboOIyw1Kkyr3nqw6gzhehvn4wvuXDnt6lSeeOM6NmkMvKL5UHfHe+YAApPiZnnbvBF7OZOCegm82YOATH17sBxdW0kGLnqDfdj2AVpr2ladmiDDXwW8tUIbcRkk03iHisC016r54JILXf/+DmxhbaKkRy9pSNDd/uPWAVomsiRvwucRdyy5xu4NLG+8xkKQF0uW1Z+ZgusM5V+CA/9LaNb1ld88WpGVh/EeKpQ+hkEjAMapJWzwggoUzz8x1OVmT6kxrMHImKj1IT7+MbuQBKzNWSTA7Shl39neeKWketMIJq2DgaviqcfK8MYs+a+jZ4LPtTLWFOjecbRyhrfyD6WkrcTxJuVnlpCFqZNCqockE0Gvg011jar4R1cJLRiMU/4XmvHusZBfqybBLUCLW2K7cx2152ta1O00ImpQ64y7KPDXFnjZfQ5lbS+wOLFQKHjPMTeDuwPA5dRRJwVs4xLvsDJ5oxk5FK2C/3eZsgvEJBqMjnkbjBZoMtPv4EBYquyt5uWOFHYm0Om7EZIozaTH7RGRvXNLqXXLh9gCL1i7fg2CTLh/a6NZw39r+tFvx+QDi1p89NGIAVRbMSZwTJcZQU1BzWVHrTqH51wtija1JaqbDK4jzeiI1ZA1oQtuEeMxPGuz143+bnAM0yVi43vHr/CuuZcy9QRGCdt3ngKjTMvzHHRlZZGY0UIZTMBbK2Pmgd5Ru4R3Zte0bkVWXOJJiQmnban8f/LiWB4RzzKlHlJYnLKbh96G02I80HF9ImE1O0YTbBTxTRbGBmadtt6p/Io+QPz+xuQR7bzxxU3qvRPqG85JpiRW8ReJvK5s4ImHuBbtgY3ji4fRirfkSy3sIlPGAQGDyl5lOdtZkuKVExS4Tx7Vg9PHXLVasSMTee4SS6N9gn0fG42/V9zSBcH803ejTw3afyAzYa9ggpvbBJ6ud3mWWb/5k7ntax3qaV8wI5GFUETKuxbig5P39Te2HOKBQwJnxLkjKqapNjaklgLCzQnnStrn7qcBqfbfx398mTCrgTiCpYva3+BgplzoXzAX8Po8OEnvbUBOBVpfUtfK2tAdOlcQNrZ6N3LlE0JOGYKNlwg8wRn9NOa9C",
        "X-OriginatorOrg": "nxp.com",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n ad4b04c3-2c56-4135-1ba9-08de8b00bbf0",
        "X-MS-Exchange-CrossTenant-AuthSource": "PAXPR04MB8510.eurprd04.prod.outlook.com",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "26 Mar 2026 06:27:21.0294\n (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "686ea1d3-bc2b-4c6f-a92c-d99c5c301635",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n 92Epaf3YVdyUvXVmfllqh2cEgjsRmAvXn1bWHTP/2NRUY5n3OrS490QPpV/1dPvBknbYHP3rZDRKgY8HIPZ4Iw==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "PA2PR04MB10309",
        "X-Spam-Status": "No, score=0.8 required=3.0 tests=ARC_SIGNED,ARC_VALID,\n\tDKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FORGED_SPF_HELO,\n\tSPF_HELO_PASS,T_SPF_PERMERROR autolearn=disabled version=4.0.1 OzLabs 8",
        "X-Spam-Checker-Version": "SpamAssassin 4.0.1 (2024-03-25) on lists.ozlabs.org"
    },
    "content": "i.MX94 NETC (v4.3) integrates 802.1Q Ethernet switch functionality, the\nswitch provides advanced QoS with 8 traffic classes and a full range of\nTSN standards capabilities. It has 3 user ports and 1 CPU port, and the\nCPU port is connected to an internal ENETC through the pseduo link, so\ninstead of a back-to-back MAC, the lightweight \"pseudo MAC\" is used at\nboth ends of the pseudo link to transfer Ethernet frames. The pseudo\nlink provides a zero-copy interface (no serialization delay) and lower\npower (less logic and memory).\n\nLike most Ethernet switches, the NETC switch also supports a proprietary\nswitch tag, is used to carry in-band metadata information about frames.\nThis in-band metadata information can include the source port from which\nthe frame was received, what was the reason why this frame got forwarded\nto the entity, and for the entity to indicate the precise destination\nport of a frame. The NETC switch tag is added to frames after the source\nMAC address. There are three types of switch tags, and each type has 1\nto 4 subtypes, more details are as follows.\n\nForward switch tag (Type = 0): Represents forwarded frames.\n  - SubType = 0 - Normal frame processing.\n\nTo_Port switch tag (Type = 1): Represents frames that are to be sent to\na specific switch port.\n  - SubType = 0. No request to perform timestamping.\n  - SubType = 1. Request to perform one-step timestamping.\n  - SubType = 2. Request to perform two-step timestamping.\n  - SubType = 3. Request to perform both one-step timestamping and\n    two-step timestamping.\n\nTo_Host switch tag (Type = 2): Represents frames redirected or copied to\nthe switch management port.\n  - SubType = 0. Received frames redirected or copied to the switch\n     management port.\n  - SubType = 1. Received frames redirected or copied to the switch\n    management port with captured timestamp at the switch port where\n    the frame was received.\n  - SubType = 2. Transmit timestamp response (two-step timestamping).\n\nCurrently, this patch set supports Forward tag, SubType 0 of To_Port tag\nand SubType 0 of To_Host tag. More tags will be supported in the future.\n\nIn addition, the switch supports NETC Table Management Protocol (NTMP),\nsome switch functionality is controlled using control messages sent to\nthe hardware using BD ring interface with 32B descriptors similar to the\npacket Transmit BD ring used on ENETC. This interface is referred to as\nthe command BD ring. This is used to configure functionality where the\nunderlying resources may be shared between different entities or being\ntoo large to configure using direct registers.\n\nFor this patch set, we have supported the following tables through the\ncommand BD ring interface.\n\nFDB Table: It contains forwarding and/or filtering information about MAC\naddresses. The FDB table is used for MAC learning lookups and MAC\nforwarding lookups.\n\nVLAN Filter Table: It contains configuration and control information for\neach VLAN configured on the switch.\n\nBuffer Pool Table: It contains buffer pool configuration and operational\ninformation. Each entry corresponds to a buffer pool. Currently, we use\nthis table to implement flow control feature on each port.\n\nIngress Port Filter Table: It contains a set of filters each capable of\nclassifying incoming traffic using a mix of L2, L3, and L4 parsed and\narbitrary field data. We use this table to implement host flood support\nto the switch port.\n\nThe switch also supports other tables, and we will add more advanced\nfeatures through them in the future.\n\n---\nv3:\n1. Improve the description of 'dsa,member' property in patch 2.\n2. Remove netc_select_cbdr() and use spin_trylock_bh() instead.\n3. Use pskb_may_pull() in netc_rcv().\n4. Remove phylink_autoneg_inband() from netc_main.c\n5. Remove netc_port_set_hd_flow_control() from netc_main.c.\n6. Impove netc_mac_link_up(), remove unnecessary code from it.\n7. Restore cfge if ntmp_bpt_update_entry() returns an error in\nnetc_port_set_tx_pause().\n8. Improve netc_ipv_to_buffer_pool_mapping().\nv2 link: https://lore.kernel.org/imx/20260323060752.1157031-1-wei.fang@nxp.com/\nv2:\n1. Use raw_smp_processor_id() in netc_select_cbdr() instead of\nsmp_processor_id().\n2. Remove netc_port_free_mdio_bus() and netc_free_mdio_bus().\n3. Correct the mask value in netc_port_set_mac_mode()\n4. Rename net_port_set_rmii_mii_mac() to netc_port_set_rmii_mii_mac().\n5. Check the return value of ntmp_bpt_update_entry() in\nnetc_switch_bpt_default_config().\n6. Add some comments to avoid false positives from AI review.\nv1 link: https://lore.kernel.org/imx/20260316094152.1558671-1-wei.fang@nxp.com/\n---\n\nWei Fang (14):\n  dt-bindings: net: dsa: update the description of 'dsa,member' property\n  dt-bindings: net: dsa: add NETC switch\n  net: enetc: add pre-boot initialization for i.MX94 switch\n  net: enetc: add basic operations to the FDB table\n  net: enetc: add support for the \"Add\" operation to VLAN filter table\n  net: enetc: add support for the \"Update\" operation to buffer pool\n    table\n  net: enetc: add support for \"Add\" and \"Delete\" operations to IPFT\n  net: enetc: add multiple command BD rings support\n  net: dsa: add NETC switch tag support\n  net: dsa: netc: introduce NXP NETC switch driver for i.MX94\n  net: dsa: netc: add phylink MAC operations\n  net: dsa: netc: add more basic functions support\n  net: dsa: netc: initialize buffer bool table and implement\n    flow-control\n  net: dsa: netc: add support for the standardized counters\n\n .../devicetree/bindings/net/dsa/dsa.yaml      |    6 +-\n .../bindings/net/dsa/nxp,netc-switch.yaml     |  130 ++\n MAINTAINERS                                   |   11 +\n drivers/net/dsa/Kconfig                       |    3 +\n drivers/net/dsa/Makefile                      |    1 +\n drivers/net/dsa/netc/Kconfig                  |   14 +\n drivers/net/dsa/netc/Makefile                 |    3 +\n drivers/net/dsa/netc/netc_ethtool.c           |  192 ++\n drivers/net/dsa/netc/netc_main.c              | 1558 +++++++++++++++++\n drivers/net/dsa/netc/netc_platform.c          |   89 +\n drivers/net/dsa/netc/netc_switch.h            |  155 ++\n drivers/net/dsa/netc/netc_switch_hw.h         |  335 ++++\n .../ethernet/freescale/enetc/netc_blk_ctrl.c  |  188 +-\n drivers/net/ethernet/freescale/enetc/ntmp.c   |  383 +++-\n .../ethernet/freescale/enetc/ntmp_private.h   |  122 +-\n include/linux/dsa/tag_netc.h                  |   14 +\n include/linux/fsl/netc_global.h               |    6 +\n include/linux/fsl/ntmp.h                      |  235 ++-\n include/net/dsa.h                             |    2 +\n include/uapi/linux/if_ether.h                 |    1 +\n net/dsa/Kconfig                               |   10 +\n net/dsa/Makefile                              |    1 +\n net/dsa/tag_netc.c                            |  185 ++\n 23 files changed, 3614 insertions(+), 30 deletions(-)\n create mode 100644 Documentation/devicetree/bindings/net/dsa/nxp,netc-switch.yaml\n create mode 100644 drivers/net/dsa/netc/Kconfig\n create mode 100644 drivers/net/dsa/netc/Makefile\n create mode 100644 drivers/net/dsa/netc/netc_ethtool.c\n create mode 100644 drivers/net/dsa/netc/netc_main.c\n create mode 100644 drivers/net/dsa/netc/netc_platform.c\n create mode 100644 drivers/net/dsa/netc/netc_switch.h\n create mode 100644 drivers/net/dsa/netc/netc_switch_hw.h\n create mode 100644 include/linux/dsa/tag_netc.h\n create mode 100644 net/dsa/tag_netc.c"
}