get:
Show a patch.

patch:
Update a patch.

put:
Update a patch.

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

{
    "id": 2175210,
    "url": "http://patchwork.ozlabs.org/api/1.0/patches/2175210/?format=api",
    "project": {
        "id": 28,
        "url": "http://patchwork.ozlabs.org/api/1.0/projects/28/?format=api",
        "name": "Linux PCI development",
        "link_name": "linux-pci",
        "list_id": "linux-pci.vger.kernel.org",
        "list_email": "linux-pci@vger.kernel.org",
        "web_url": null,
        "scm_url": null,
        "webscm_url": null
    },
    "msgid": "<20251217151609.3162665-11-den@valinux.co.jp>",
    "date": "2025-12-17T15:15:44",
    "name": "[RFC,v3,10/35] dmaengine: dw-edma: Fix MSI data values for multi-vector IMWr interrupts",
    "commit_ref": null,
    "pull_url": null,
    "state": "new",
    "archived": false,
    "hash": "57bf0a6d764006144e7a82fe08658591a3231ed3",
    "submitter": {
        "id": 91573,
        "url": "http://patchwork.ozlabs.org/api/1.0/people/91573/?format=api",
        "name": "Koichiro Den",
        "email": "den@valinux.co.jp"
    },
    "delegate": null,
    "mbox": "http://patchwork.ozlabs.org/project/linux-pci/patch/20251217151609.3162665-11-den@valinux.co.jp/mbox/",
    "series": [
        {
            "id": 485709,
            "url": "http://patchwork.ozlabs.org/api/1.0/series/485709/?format=api",
            "date": "2025-12-17T15:15:53",
            "name": "NTB transport backed by endpoint DW eDMA",
            "version": 3,
            "mbox": "http://patchwork.ozlabs.org/series/485709/mbox/"
        }
    ],
    "check": "pending",
    "checks": "http://patchwork.ozlabs.org/api/patches/2175210/checks/",
    "tags": {},
    "headers": {
        "Return-Path": "\n <linux-pci+bounces-43183-incoming=patchwork.ozlabs.org@vger.kernel.org>",
        "X-Original-To": [
            "incoming@patchwork.ozlabs.org",
            "linux-pci@vger.kernel.org"
        ],
        "Delivered-To": "patchwork-incoming@legolas.ozlabs.org",
        "Authentication-Results": [
            "legolas.ozlabs.org;\n\tdkim=pass (1024-bit key;\n unprotected) header.d=valinux.co.jp header.i=@valinux.co.jp\n header.a=rsa-sha256 header.s=selector1 header.b=A5B/rdQM;\n\tdkim-atps=neutral",
            "legolas.ozlabs.org;\n spf=pass (sender SPF authorized) smtp.mailfrom=vger.kernel.org\n (client-ip=2600:3c04:e001:36c::12fc:5321; helo=tor.lore.kernel.org;\n envelope-from=linux-pci+bounces-43183-incoming=patchwork.ozlabs.org@vger.kernel.org;\n receiver=patchwork.ozlabs.org)",
            "smtp.subspace.kernel.org;\n\tdkim=pass (1024-bit key) header.d=valinux.co.jp header.i=@valinux.co.jp\n header.b=\"A5B/rdQM\"",
            "smtp.subspace.kernel.org;\n arc=fail smtp.client-ip=40.107.74.52",
            "smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=valinux.co.jp",
            "smtp.subspace.kernel.org;\n spf=pass smtp.mailfrom=valinux.co.jp",
            "dkim=none (message not signed)\n header.d=none;dmarc=none action=none header.from=valinux.co.jp;"
        ],
        "Received": [
            "from tor.lore.kernel.org (tor.lore.kernel.org\n [IPv6:2600:3c04:e001:36c::12fc:5321])\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 4dWd8K5qxXz1y0P\n\tfor <incoming@patchwork.ozlabs.org>; Thu, 18 Dec 2025 02:32:17 +1100 (AEDT)",
            "from smtp.subspace.kernel.org (conduit.subspace.kernel.org\n [100.90.174.1])\n\tby tor.lore.kernel.org (Postfix) with ESMTP id 7F61E3169C6E\n\tfor <incoming@patchwork.ozlabs.org>; Wed, 17 Dec 2025 15:20:10 +0000 (UTC)",
            "from localhost.localdomain (localhost.localdomain [127.0.0.1])\n\tby smtp.subspace.kernel.org (Postfix) with ESMTP id 555C434DCC2;\n\tWed, 17 Dec 2025 15:16:41 +0000 (UTC)",
            "from OS0P286CU010.outbound.protection.outlook.com\n (mail-japanwestazon11011052.outbound.protection.outlook.com [40.107.74.52])\n\t(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))\n\t(No client certificate requested)\n\tby smtp.subspace.kernel.org (Postfix) with ESMTPS id 831EA34D3A9;\n\tWed, 17 Dec 2025 15:16:39 +0000 (UTC)",
            "from TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM (2603:1096:400:24c::11)\n by OS9P286MB4633.JPNP286.PROD.OUTLOOK.COM (2603:1096:604:2fc::12) with\n Microsoft SMTP Server (version=TLS1_2,\n cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.9434.6; Wed, 17 Dec\n 2025 15:16:22 +0000",
            "from TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM\n ([fe80::fb7e:f4ed:a580:9d03]) by TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM\n ([fe80::fb7e:f4ed:a580:9d03%5]) with mapi id 15.20.9434.001; Wed, 17 Dec 2025\n 15:16:22 +0000"
        ],
        "ARC-Seal": [
            "i=2; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116;\n\tt=1765984601; cv=fail;\n b=oCvSpTCRKofnDOfo0fwdW5YD7VrTZvPJIifxQw/E2SwqIL2GV5BWUbpZoxerUaKjCr37RirNHQ0Q/hLZsqpD7NnEGfVuAKIa5tMROLG3WACAUIwv8QbHDBW5rAU2GXjXuSOG7QZpdv0lHOORDTPWXdaVeex/p6kka5GZlNg5pa0=",
            "i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none;\n b=tTBCPAUqqlRmVbWUPK9nAw+BJ0HlEQ6YojPTFXd+9Bvytw6z+M7VkMHqa0S3TqzbtUrBi85Y/ogMBlQEk6iMcaA8ZQWNZB7w7UTMV0vvj74o0KGIX2k4tHT10utLImS4jlgq6u1/aWZli4e9PYb2UHEkrMWFAU+DQ55CtJjfVetKQilGRr6x87P0lAZ99iDOLHVs3de719VTRMhkDUtmA4tGiSFWJgaYvlyK5v0t55rvVb3XiN6N7G1jcRSwIkcdqX4ukhRltWZMBZt045XwRZLVmpsszbIJvr2uIBSVfIwZPC0vFf8tzi+vuIfp3IcPVx5m61YIZxQT0rJ87i3naw=="
        ],
        "ARC-Message-Signature": [
            "i=2; a=rsa-sha256; d=subspace.kernel.org;\n\ts=arc-20240116; t=1765984601; c=relaxed/simple;\n\tbh=skyMRfeWpTo6BZzeY0XkFGD46Rk9WDSgpYO86pi8AjU=;\n\th=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References:\n\t Content-Type:MIME-Version;\n b=klOUSicZrrkTezctCzYdBJdqfk1j0BA2zj2QVCyXUR0DMu9xxvx0UsGqgbBwjT4g5baNnqr4v8NssWNOTd7jHgkeM3za769UYgAwz8D2ZEvRNjXmvfRoIKIxh5vWYSgNDKyzfFBUeslQcTc+NPB628EO2OcU5hjKlqRd+tbQsd8=",
            "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=jeZARrfypgx4Jd1FbPoPvm8MGHmkk8Jg//fU5qtO/II=;\n b=lOsoM3GjzuMlY90MnLAVA1tdUaJCNn3ozkKQwew1FByZWuvlIf+1zZYFcZMjXxG/bGob3hKtzOMPDiWZ7zS4w7o0od3SBXo7n64g502M1FvFh+27MP81iTCboSHa44Dx/n1zEoddy/ZDBeGKEUT9ydkg5Kxng20S8ciz/Ud5VQmaz2pTvfctsslvJpjgJvs+PtUYOv7bmgpv95GqRxXdyA8KdkY9lb382lTMAPr4YMoBxOzsNUtL7ZQmh/6IHYg27zxRMeOcRs9qHa7zPGtril6aWachYMtH1nGJ0NBv3Br46O45mWjiVzjEHCj6c6VEfp24El86/38db3MRJB3VrQ=="
        ],
        "ARC-Authentication-Results": [
            "i=2; smtp.subspace.kernel.org;\n dmarc=pass (p=none dis=none) header.from=valinux.co.jp;\n spf=pass smtp.mailfrom=valinux.co.jp;\n dkim=pass (1024-bit key) header.d=valinux.co.jp header.i=@valinux.co.jp\n header.b=A5B/rdQM; arc=fail smtp.client-ip=40.107.74.52",
            "i=1; mx.microsoft.com 1; spf=pass\n smtp.mailfrom=valinux.co.jp; dmarc=pass action=none\n header.from=valinux.co.jp; dkim=pass header.d=valinux.co.jp; arc=none"
        ],
        "DKIM-Signature": "v=1; a=rsa-sha256; c=relaxed/relaxed; d=valinux.co.jp;\n s=selector1;\n h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck;\n bh=jeZARrfypgx4Jd1FbPoPvm8MGHmkk8Jg//fU5qtO/II=;\n b=A5B/rdQMP7sjF0mPgaLXJOaWMoYaSoxoCqeX8qdz4wuxRb3wMkU3Q7oxbDSt/Kn1llM1+BL9iJ+0QFJye9S0/8H1u80j9Cpo6RKwrVkBJIt6cJ2rbUOjdJ9PvlOphsCgjX3jMLg0URU/Cqfo6CAS7O83UpMWUtaiqRtQmFqHkN8=",
        "From": "Koichiro Den <den@valinux.co.jp>",
        "To": "Frank.Li@nxp.com,\n\tdave.jiang@intel.com,\n\tntb@lists.linux.dev,\n\tlinux-pci@vger.kernel.org,\n\tdmaengine@vger.kernel.org,\n\tlinux-renesas-soc@vger.kernel.org,\n\tnetdev@vger.kernel.org,\n\tlinux-kernel@vger.kernel.org",
        "Cc": "mani@kernel.org,\n\tkwilczynski@kernel.org,\n\tkishon@kernel.org,\n\tbhelgaas@google.com,\n\tcorbet@lwn.net,\n\tgeert+renesas@glider.be,\n\tmagnus.damm@gmail.com,\n\trobh@kernel.org,\n\tkrzk+dt@kernel.org,\n\tconor+dt@kernel.org,\n\tvkoul@kernel.org,\n\tjoro@8bytes.org,\n\twill@kernel.org,\n\trobin.murphy@arm.com,\n\tjdmason@kudzu.us,\n\tallenbh@gmail.com,\n\tandrew+netdev@lunn.ch,\n\tdavem@davemloft.net,\n\tedumazet@google.com,\n\tkuba@kernel.org,\n\tpabeni@redhat.com,\n\tBasavaraj.Natikar@amd.com,\n\tShyam-sundar.S-k@amd.com,\n\tkurt.schwemmer@microsemi.com,\n\tlogang@deltatee.com,\n\tjingoohan1@gmail.com,\n\tlpieralisi@kernel.org,\n\tutkarsh02t@gmail.com,\n\tjbrunet@baylibre.com,\n\tdlemoal@kernel.org,\n\tarnd@arndb.de,\n\telfring@users.sourceforge.net,\n\tden@valinux.co.jp",
        "Subject": "[RFC PATCH v3 10/35] dmaengine: dw-edma: Fix MSI data values for\n multi-vector IMWr interrupts",
        "Date": "Thu, 18 Dec 2025 00:15:44 +0900",
        "Message-ID": "<20251217151609.3162665-11-den@valinux.co.jp>",
        "X-Mailer": "git-send-email 2.51.0",
        "In-Reply-To": "<20251217151609.3162665-1-den@valinux.co.jp>",
        "References": "<20251217151609.3162665-1-den@valinux.co.jp>",
        "Content-Transfer-Encoding": "8bit",
        "Content-Type": "text/plain",
        "X-ClientProxiedBy": "TYCP286CA0251.JPNP286.PROD.OUTLOOK.COM\n (2603:1096:400:456::20) To TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM\n (2603:1096:400:24c::11)",
        "Precedence": "bulk",
        "X-Mailing-List": "linux-pci@vger.kernel.org",
        "List-Id": "<linux-pci.vger.kernel.org>",
        "List-Subscribe": "<mailto:linux-pci+subscribe@vger.kernel.org>",
        "List-Unsubscribe": "<mailto:linux-pci+unsubscribe@vger.kernel.org>",
        "MIME-Version": "1.0",
        "X-MS-PublicTrafficType": "Email",
        "X-MS-TrafficTypeDiagnostic": "TYWP286MB2697:EE_|OS9P286MB4633:EE_",
        "X-MS-Office365-Filtering-Correlation-Id": "d1a6e9f2-f851-4e14-2211-08de3d7f3ca0",
        "X-MS-Exchange-SenderADCheck": "1",
        "X-MS-Exchange-AntiSpam-Relay": "0",
        "X-Microsoft-Antispam": "\n\tBCL:0;ARA:13230040|10070799003|376014|7416014|1800799024|366016;",
        "X-Microsoft-Antispam-Message-Info": "\n xpd1BkPF2m5gVpDfHUR3EbG9wtMtJ78pao3ehLp+h1IwvUFMKGcLGaW7n6py0PSAS3zsAiMEA1uFKRpla3qFtclqotkm4PTV02JLjuyRUiNpqrb9wuZVD0DBq0T5OGOjgjhYgbnGUhEhR0z8Q2wTLf3JXipAupRZHZjqmcMzzclLBTr/xMU4ilN7tTAIdKuTU0hgNVkA7fWukGvMx7P5iy1feX749UQUoRLVq9GV80C7ZTQvHKWcvRfHrE866UIhWDnbn4nVqeK0aza3p1v1bHc9SvQ4D+8/a+RNDQB2Vvs3puTdmWH3xs4gSONu4V4rEgUSmMdKQDHaOuo3iDBNDuHjOq918tSx08iihkYek6UD+R3yOEZ3c+FgVKTrdPbJXVT5eXEORtuIEGelxMYH68LprMgP8qFw5DH0RC7PNLp6WQZnztVlCmES071soagnH19B29fkNSpCa2+PS+lF06ATO0LImLP14LSiBWJZZ0GhcRgM09jqo3E3JML3YAiBkE+7a4O7Pbfr02YwGNz8FH+4tWgAuIqxL0CNYgvJWQjCrvdhs9Rje+ciZanjLV1kMFNL9sVzY6ZkfdGpHBTMGk836vGbQch0Bd1t8hDgg2DrFA+oKhF+BBdM/kKQhnYvLENge252g6rkluAH5Anv+/ld2IzXQLhUyRLhoOEyAPNFIApvYnhFDY2ZE+sqnW/pGdvjn1/9JLk5ilcUuIQShu/Dxt/NtW2jJMgSbNR9f1F/lPOyIokGXXELRJe1oxZ7rjslmOViwUSjURfpI9Rbj+3fgyUdZ2p061mkMWOjbUPIxVVzcxd17vIwi/bxHyYi1GERQ1DcLFWlNiv+IOlRVaQO3wGGcuLUmSEJnzlUmaqUcnWearNp7r/YsOQhEn/Zw5sZ3UqrWTAzLhHqWPmoEH9GYo/RF43JkGMZmxcSDZFEMoSSvFcKk4Z9qUeVfxpij4SVo1ke8dxg3C/XbuuEj9TdG0T3YwKSP/PG9NZqqx/jrodWyySasMFvZqMrs1098cSJiH+1KnN2wBxQxXcNh2qVyyIDZQXKnXqO8qbgLVnXXdJ7yMgTiW94zTjxnDRK3CUup/LIQcwb27QsbiNjb8coWVdYXCMXOu5j3sAPqErXkmNuP/k2+syoabH96b7GpTT9zDTQBdKu/F97dui1BUtLjDJHv8ZpJkZP3qCagoyEFK1cBEeoUB7uFbVyP3jZyEL7786EdrgIpDFkV/E1D4GtHAg3Mdm5hDGrcuQCF3hSccEo4+AASbt/JSXUTE+AJ1aAOoX4+RtlBHQt/kdgdOGiAEkyDBRzJ47RjsLtkzukxHXtA6Q8FaswDxgZaPG8RnavlvIBmsGmuuOf548GSJlToRHjHG8TTw4FuU/lbVg0hDOrMxt3ci306ehMaS8FdHRL93YKXmKgiWvTsgBN837HrQov1QoYDi9HuqtF9WM3zAKev5dePdtWr3rx0MH+",
        "X-Forefront-Antispam-Report": "\n\tCIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM;PTR:;CAT:NONE;SFS:(13230040)(10070799003)(376014)(7416014)(1800799024)(366016);DIR:OUT;SFP:1101;",
        "X-MS-Exchange-AntiSpam-MessageData-ChunkCount": "1",
        "X-MS-Exchange-AntiSpam-MessageData-0": "\n kHtYGRrLsjiLr6jlrwfeaVJRM/dKfVQfX8hq4Mmj83rLuMJoVfMSa3hURlO0jdqFvPlOjz/Q/+yr5VYwRkKvsnW8Nm2M9TLslg76ACCROdZYxauY9BHmwFfEoQHJsSMd3RmOW55wIq7dqZzab9OaZgqKtxQPm3Hf42rTHsVUn5NPIxAep6lRtptFOeFaH0mayiD+/PiOo0GeNLmpGecpL5NDrR1VKJt0X2WSp1+YvO+RRDi9tMC7PP8Tx/0Ef67POo2FwcKX0tg9ciyu+99SXJbWWBQROh6+sQq2jxiq4bSfVRpqsngT3rmKYfc87t76AcVq/s8Hkqm2a2HVNCuXNpYo4l2geU9V6u4wNIVwdT2c79SrEUKdwQFtVqH3k8V4TR6cuttW0WywJYh/AklX4UIsimxrSqlmzXEpPClU1Qu5VdOUuQmhHVxi0o2CfKwUNQmYNilGWrV8KWsyo3R52SXLzcaY0q9eJv0sFmcCUhZB8rq0gnRtM7nktyi0HMl2JBIV4LzzKCSrUP93TD5aoPTbLZZhZ4fgXRmQNkjGD7jPHyfDXBpglLdjxCFxj/4rldkPnt49lSchNHqfqJhdKOL4GR/bdRHBucdEdMGuVaAcvYwmS72lxvkhYJ6Hdf5djMNBgfhDijqsvU6AylpTo0f4s7HrACMg5nGpWhXoBV8x5mme6TH3vCX46r7KNTA6MMIAcxRDF4u7e5xHRyT+6CXKoQP2UlfvBOTnXXs8jXF70kSNeigYqenXuoSM2ElvShOWqQnm9V8z2cwSTh+3pllhB7Xcp6YeP1GRls7NtHZPUZHm1hxw2Fjlvg5mnhQhQ+WTnCwvfk47cYWG7SWdMWnSaq4T0TnDpO6afd1+O12dQ3kTs8JEr9xWh+GL53fmpW++QPJbNwTi2Eeu7LP5ByV0UGS1JmhH+txFCrU8k+qVE2WqzAtlxtMh8Rzkhcg/NdMDeLfKzG0QIXge6T8Ra52gtExHMWPdF3rEEfgNo0KodDjJHvqylDxxhiClJsXZEmUbj9xMqdhFFO5FXt3SfU0GuqWPxagqXUW0HGMhOnfFmUa2TW98tRvwMjxrx/PEfXyVWPRIdOyPyXb45TaHo/oBpeMkF/bUyP403l770YfI7i+CM4tqeD9mrHErV6OUfkfMvTD/nnk0V14uRZEMwl3Pu8iWPGCNKZl++yaFsA9SbljtBWDM6of9GUfAbzdc0rVTLVvV2+haGLu9teZ+Qpmuk/IiGv8rSlQAbSsYlcWzf8LSLYryKE9yUd9AhsqDxkiodCH5338aEOULn/fPMnI2CpNNL/57RYXKWsK4zs26u30MuKRdq52tLwzF+i30Dq4PONYCQWbPMkoEPowMwSUpnL1mw6ToJ+zNvc6Scx89yew+OYrZX9m2WLOm0+382MTjgsBCrMCF4uSdcpzxdxss2Er51i1iMX/hMoazmJTzAWiF1xto88MNSwooQ/TyWBXqexzKe2sxMlWQ8G0h2FbPrwvaotu7wN/iDeyGmk1eWZ7TI6B82vQQLEHnDeYkKUJrAU7ge2jJ79tP1wOf7hYbMblGks/JtkphTnpLj/LHbgt4W98bYY04VMQEazfXwdDcE9UzDWj7qJeVTVxqqSZKmZTM6UoQ4+q3favry0Q=",
        "X-OriginatorOrg": "valinux.co.jp",
        "X-MS-Exchange-CrossTenant-Network-Message-Id": "\n d1a6e9f2-f851-4e14-2211-08de3d7f3ca0",
        "X-MS-Exchange-CrossTenant-AuthSource": "TYWP286MB2697.JPNP286.PROD.OUTLOOK.COM",
        "X-MS-Exchange-CrossTenant-AuthAs": "Internal",
        "X-MS-Exchange-CrossTenant-OriginalArrivalTime": "17 Dec 2025 15:16:22.1194\n (UTC)",
        "X-MS-Exchange-CrossTenant-FromEntityHeader": "Hosted",
        "X-MS-Exchange-CrossTenant-Id": "7a57bee8-f73d-4c5f-a4f7-d72c91c8c111",
        "X-MS-Exchange-CrossTenant-MailboxType": "HOSTED",
        "X-MS-Exchange-CrossTenant-UserPrincipalName": "\n 9fx1PDO60d02lwUeeKRd+Q9AHLnZeRt5lkHcNkDiQIdqFTdrcoEJLjfHXU6fcoCWwv+LHc9kl+UFad2jHnhimg==",
        "X-MS-Exchange-Transport-CrossTenantHeadersStamped": "OS9P286MB4633"
    },
    "content": "When multiple MSI vectors are allocated for the DesignWare eDMA, the\ndriver currently records the same MSI message for all IRQs by calling\nget_cached_msi_msg() per vector. For multi-vector MSI (as opposed to\nMSI-X), the cached message corresponds to vector 0 and msg.data is\nsupposed to be adjusted by the vector index.\n\nAs a result, all eDMA interrupts share the same MSI data value and the\ninterrupt controller cannot distinguish between them.\n\nIntroduce dw_edma_compose_msi() to construct the correct MSI message for\neach vector. For MSI-X nothing changes. For multi-vector MSI, derive the\nbase IRQ with msi_get_virq(dev, 0) and apply the per-vector offset to\nmsg.data before storing it in dw->irq[i].msi.\n\nThis makes each IMWr MSI vector use a unique MSI data value.\n\nSigned-off-by: Koichiro Den <den@valinux.co.jp>\n---\n drivers/dma/dw-edma/dw-edma-core.c | 28 ++++++++++++++++++++++++----\n 1 file changed, 24 insertions(+), 4 deletions(-)",
    "diff": "diff --git a/drivers/dma/dw-edma/dw-edma-core.c b/drivers/dma/dw-edma/dw-edma-core.c\nindex 744c60ec9641..1b935da65d05 100644\n--- a/drivers/dma/dw-edma/dw-edma-core.c\n+++ b/drivers/dma/dw-edma/dw-edma-core.c\n@@ -855,6 +855,28 @@ static inline void dw_edma_add_irq_mask(u32 *mask, u32 alloc, u16 cnt)\n \t\t(*mask)++;\n }\n \n+static void dw_edma_compose_msi(struct device *dev, int irq, struct msi_msg *out)\n+{\n+\tstruct msi_desc *desc = irq_get_msi_desc(irq);\n+\tstruct msi_msg msg;\n+\tunsigned int base;\n+\n+\tif (!desc)\n+\t\treturn;\n+\n+\tget_cached_msi_msg(irq, &msg);\n+\tif (!desc->pci.msi_attrib.is_msix) {\n+\t\t/*\n+\t\t * For multi-vector MSI, the cached message corresponds to\n+\t\t * vector 0. Adjust msg.data by the IRQ index so that each\n+\t\t * vector gets a unique MSI data value for IMWr Data Register.\n+\t\t */\n+\t\tbase = msi_get_virq(dev, 0);\n+\t\tmsg.data |= (irq - base);\n+\t}\n+\t*out = msg;\n+}\n+\n static int dw_edma_irq_request(struct dw_edma *dw,\n \t\t\t       u32 *wr_alloc, u32 *rd_alloc)\n {\n@@ -885,8 +907,7 @@ static int dw_edma_irq_request(struct dw_edma *dw,\n \t\t\treturn err;\n \t\t}\n \n-\t\tif (irq_get_msi_desc(irq))\n-\t\t\tget_cached_msi_msg(irq, &dw->irq[0].msi);\n+\t\tdw_edma_compose_msi(dev, irq, &dw->irq[0].msi);\n \n \t\tdw->nr_irqs = 1;\n \t} else {\n@@ -912,8 +933,7 @@ static int dw_edma_irq_request(struct dw_edma *dw,\n \t\t\tif (err)\n \t\t\t\tgoto err_irq_free;\n \n-\t\t\tif (irq_get_msi_desc(irq))\n-\t\t\t\tget_cached_msi_msg(irq, &dw->irq[i].msi);\n+\t\t\tdw_edma_compose_msi(dev, irq, &dw->irq[i].msi);\n \t\t}\n \n \t\tdw->nr_irqs = i;\n",
    "prefixes": [
        "RFC",
        "v3",
        "10/35"
    ]
}