From patchwork Mon Jul 30 17:21:00 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alan Douglas X-Patchwork-Id: 10549501 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 1218713BB for ; Mon, 30 Jul 2018 17:21:51 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 027D12A425 for ; Mon, 30 Jul 2018 17:21:51 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id EA99F2A691; Mon, 30 Jul 2018 17:21:50 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id D055A2A425 for ; Mon, 30 Jul 2018 17:21:45 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1731576AbeG3S5m (ORCPT ); Mon, 30 Jul 2018 14:57:42 -0400 Received: from mail-eopbgr710065.outbound.protection.outlook.com ([40.107.71.65]:42108 "EHLO NAM05-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726782AbeG3S5l (ORCPT ); Mon, 30 Jul 2018 14:57:41 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cadence.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=I08UIjD27JOKMasMHbzHdsHv8qNowi5qc9v7wOFHw7M=; b=KoonM5zR/+J4h4ub2vIr0vupiGI5CqnS+4BD4ofviOeXJR3C2za/AawifWeTUnJmQk0+dx99AhT0KsWc6wIaC27RVO/m5ILVYR/V9EDSecqoU5CO9/gH6jz4W8XO8Bs+qIBl/0pKouJMiMdxjiyiQ21FC+kt04GY49T83NR0GWA= Received: from BYAPR07CA0060.namprd07.prod.outlook.com (2603:10b6:a03:60::37) by CY1PR07MB2299.namprd07.prod.outlook.com (2a01:111:e400:c5b3::28) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.995.21; Mon, 30 Jul 2018 17:21:39 +0000 Received: from BY2NAM05FT007.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e52::207) by BYAPR07CA0060.outlook.office365.com (2603:10b6:a03:60::37) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.995.17 via Frontend Transport; Mon, 30 Jul 2018 17:21:39 +0000 Authentication-Results: spf=softfail (sender IP is 158.140.1.28) smtp.mailfrom=cadence.com; arm.com; dkim=none (message not signed) header.d=none;arm.com; dmarc=fail action=none header.from=cadence.com; Received-SPF: SoftFail (protection.outlook.com: domain of transitioning cadence.com discourages use of 158.140.1.28 as permitted sender) Received: from sjmaillnx2.cadence.com (158.140.1.28) by BY2NAM05FT007.mail.protection.outlook.com (10.152.100.144) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.1038.3 via Frontend Transport; Mon, 30 Jul 2018 17:21:36 +0000 Received: from maileu3.global.cadence.com (maileu3.cadence.com [10.160.88.99]) by sjmaillnx2.cadence.com (8.14.4/8.14.4) with ESMTP id w6UHLUA6028401 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Mon, 30 Jul 2018 10:21:32 -0700 X-CrossPremisesHeadersFilteredBySendConnector: maileu3.global.cadence.com Received: from maileu3.global.cadence.com (10.160.88.99) by maileu3.global.cadence.com (10.160.88.99) with Microsoft SMTP Server (TLS) id 15.0.1367.3; Mon, 30 Jul 2018 19:21:44 +0200 Received: from lvloginb.cadence.com (10.165.177.11) by maileu3.global.cadence.com (10.160.88.99) with Microsoft SMTP Server id 15.0.1367.3 via Frontend Transport; Mon, 30 Jul 2018 19:21:43 +0200 Received: from lvloginb.cadence.com (localhost [127.0.0.1]) by lvloginb.cadence.com (8.14.4/8.14.4) with ESMTP id w6UHLTeu006282; Mon, 30 Jul 2018 18:21:29 +0100 Received: (from adouglas@localhost) by lvloginb.cadence.com (8.14.4/8.14.4/Submit) id w6UHLNdA006151; Mon, 30 Jul 2018 18:21:23 +0100 From: Alan Douglas To: CC: , , , , , , Alan Douglas Subject: [PATCH 0/5] Add MSI-X support for cadence EP driver Date: Mon, 30 Jul 2018 18:21:00 +0100 Message-ID: <1532971260-5269-1-git-send-email-adouglas@cadence.com> X-Mailer: git-send-email 2.2.2 MIME-Version: 1.0 X-OrganizationHeadersPreserved: maileu3.global.cadence.com X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:158.140.1.28;IPV:CAL;SCL:-1;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10009020)(396003)(136003)(39860400002)(376002)(346002)(2980300002)(3190300001)(189003)(199004)(36092001)(105596002)(2351001)(305945005)(426003)(26005)(8936002)(51416003)(86362001)(2906002)(356003)(7636002)(106466001)(16586007)(8676002)(186003)(87636003)(478600001)(36756003)(48376002)(5660300001)(126002)(107886003)(26826003)(6666003)(486006)(6916009)(476003)(2616005)(4326008)(336012)(246002)(42186006)(316002)(54906003)(47776003)(50466002)(50226002);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR07MB2299;H:sjmaillnx2.cadence.com;FPR:;SPF:SoftFail;LANG:en;PTR:corp.cadence.com;MX:1;A:1; X-Microsoft-Exchange-Diagnostics: 1;BY2NAM05FT007;1:RJ0n++T3RvpUkorjEKLWlL3ZAsYXZRcenUd2PyRKUBM2ZcNd7UaT2PIaF5w2qevgwMwgr+iAB0pHb5SznLMWuHo7MQPSKTjUPUThi5HtTP2fgMvy6wk9fMSW/SziQOVo X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: b357991c-c8cf-4b43-8678-08d5f640e8ce X-Microsoft-Antispam: BCL:0;PCL:0;RULEID:(7020095)(4652040)(8989117)(5600074)(711020)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(2017052603328)(7153060);SRVR:CY1PR07MB2299; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;3:TsO7+VEUz9He9oVHooEMSbbQ3fFwhwYwfig0KEraDXEJ6R/PmiTil2fm2YvEJ6gAmXS8ejONU/3ReOv0yG1YLvrzBrsqf8wYoCVR4S4v4N5fuHcEdMdyHRRz8/RU0R0ldyRN7HzjxzNJTo6P/U/htVX61Ljt+GCFI70Dy8MxIxkQdqAQ8BoNQVYf+iwg2foNJl0S9KoGJwVxx16KeguIlmWDrnZoV4mAZwIlrBR05taJ7bhTvfFX+rrWq2J9G9L8TAh8HT2jrMNeIhk74bruer6cpuxW3fKlIkwnW1XzgZXrlFhcWkwDw3yF+aBFJ2WsBbnOVS4lp9TVwEiYkcgGHAuRzOxOnQzPAPaHtRvxfxg=;25:S7VZSY7CtHvHkk1kOJ0TMPCzsOAqfsX1HXjeul4RRihJ47TP97HF/alYeeJ7lK72yBhUU9CzjBx+RHR4LUt9Ac9VHIKa8/DAEuWc8jAPIb/EqTu9Qv11qFssrDHifaQW+sS/3NI96UZ+1BVUXQu+hQNO8RClUN+haj7fCVPwj2jZYNbuPu8M9CFdE1tSYqbVAXzaA1nLbRwH6cA5qNridINw1Man54lTrc1kxP2Vmi5ixgO1DztdUvbs4zunRqOPGCqinAIdRruO/cqZFFTbaL7eR0mYDp6HpDpuJ9A5xwMzdQjfBshQxoWJjSD4S67UHFMQj8/h0EP9ANOgNCjgeQ== X-MS-TrafficTypeDiagnostic: CY1PR07MB2299: X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;31:dgE5kp4SQve27kwsQrCX027pTTr6h9pPm1ilA4Ray3KNwf6A0QoscVd+ggRif1bnP95h6QddMC+xpGdIvCVqatPFIzaGiBlv1upoZ0alYJ05DP8NCaOl2iNcJ/v9mVBloULJI7siFKqQqPDkoJ7CaBhIy77f/U2tuRgehlvUAqR1NJyKsE75B9pQbnNcHVlZvFijq5FH7L/6oK0HksmupwpcpYT+yl41mBjFfWadIHE=;20:iiE9eRLfBiWukzJ+BHg6ZCYHH6tUITE53msjwZfkTNNoDJ6eykZ6kfMa0femJAJh1zdH3e8pM/NAqDoABLH2l0DrtNt8IUF49dikmx+C5IHUgVeXEDz0xP5K2o/icvKi6SnHNNP4lIxUONlG19WXt1M5oYBERLIMheAx1r15RO5blMM2shWjCqh4dxkSzpVSNtPA7UQ+V9w2x+6NkTgbu5SnFsnbGmcmmjkaptXcB7iJh8nT0E6pHL/+sTuqVqa2kW449KW2tGYjzDH/fm5CNXGLgGnImgshJyWXVS1OU87jFGQoPCCL4jCEqwBX2syDUF3YzNBoWX4RHauxU8u6dR4xOsh2GxYYOyVrIYnIYSKW9tTEBSkQjG2Cj52YiLvHoYR4D6cbbpa/wWJpZwrFlLPdMyDkXZ+ZmoWOLSnLkCg2kNuWOj9ympGGXe3eiTfZG4ve3w4BaKjLNud5CR+Wig1oUJSKCSWzRwk4Co/O6o7Q4TbHAvargHZN/IIqEPll X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-MS-Exchange-SenderADCheck: 1 X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(8211001083)(6040522)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93003095)(3231311)(944501410)(52105095)(149027)(150027)(6041310)(20161123560045)(20161123564045)(20161123562045)(20161123558120)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(6072148)(201708071742011)(7699016);SRVR:CY1PR07MB2299;BCL:0;PCL:0;RULEID:;SRVR:CY1PR07MB2299; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;4:2YEzAH/ZAxrMSbt/nfzqyMq/2yTPYFrTKxRHS0tRfyNykeewVDNswnko0vBf6D8v1ZC4kH/N/tJlkSMEMF0cmWw3Q3m9Bk88J9wJW9LbIva5hRjwaLlZ4YEsjItXMSL5lUn0rpXIiFWoH6Ets2e3HC1hz0IHVtaSTidtwvL9/Lpwigf/HLTHbvr2eaTJFQj8cMd4rI9r7OWqV4cWz26+o/ksBeXaJnSZIoGt+s8QXmAKljt2pTKy6kNqSMOaT97f5PPBV1hFU3tQg9EqnPOXxg== X-Forefront-PRVS: 0749DC2CE6 X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;23:EBH6Vdetl/RpRuKhNBxDllLEpTDAcwi2knRUKT6J9ggeDXb1O86XTe4qw7ejudaYXqsdJ1TqvMC5QMAfO7YLo7EqNh0i3bYMbNElYjBsI0ve6c2LohSfpnbKYhW4ieZZqfUdwQXQb/aXkziGNOVEiepAwmJBbtqg1E+UMv7wjsdq2WBltsbXCxYTNgMUfNaFmlQa0JyE0utPSHeYNOYeO/5oAnObNVKbMhR+cbHDYrihgeDLOx36+fsRt3orWnQMKMelrwEn3EtRTQ2R8j/KfhRSFXpwJSRR5/LzKrbFa3siU8VhobOCsXQPf252vYuzYWBcEw1BIzjreh+2e0zY8+xlb9YJZ+OthPZZKdzoDqTL1WtEBBx6jSN8sudy0kyG0BHiwcCrU316v9k9zWaGvMVnbQMklRT0eeqxMkzBqyLwPDSk3PnS6NQ0sIlTZsZQAShmk1cv/PgbLxZG0nOXCbrY66Dbgnc4QTx5gVXV00rpqdIxzaCfoO4bl2H//9AdS+MondFy2t/rTGyg87CUfewjKsLeAlvJkRM3nMn/3Z0ah+OsDHImqDy6jvqVMnrLXCE55IO3mQ+cmi0Iel3DPVk1miSa8riGUvCOTJIu194NYtkUd7xsyCisLhPHXEP82/tbEbs9hwx1hluQArcimp/FWfryORRlU11PWV8Pjr7PVtDEmzMwXloEyH1+ECWJqhrYRZorpVU7lmb1rXs6MkIXlHs4Xwh1wgX21pMsi1U5gQvwohV1J6G6nRXDdlsp/JHfIhtN7Ajw0vsHD1DcMTCb8vjr/oEDYUtZdKigGeWVMWRDvh874R0aL3WBpgni7AvcXuPs1cboJ3YvB+BG823cL/hYGeXit8/nfKatROmmroYIlqUoIBO3lClWo++JEHCaPsrJFE0quvWGlig2AU7dFKM5ANS/HwR4PH3XOunGcipMmKbtQKGzAh44alzKfz9+Ed9AxqwQu6tLPnHPKCJWkpgh9Zr1eaaiY5n5UtSko6uPE29SK6KezOB2VZWfZI9DfnNTWRliwWePgfXnPA0CqUEAf3bS0kt19Giific= X-Microsoft-Antispam-Message-Info: C0+mq+g0HIuz2EzwnoW9mz8W8/aB1cV+ClLbCNLBBL+4WtWguNoE9EgibN73BasK6N91fd4QNpFGxf+cG/IZ+N3LSgeBuexJ73onGxwHLlvM0EP2C22s+KpcABG8tSQ51AM5e91CuLZOB81xOo89U45RW81fqkb5nyUJkayLv3C6JFkWJCuR9px6NsW+UDousXw2wBJ/azZYBZgp6761ynlhBDLIdwg1vVaEqvPsE+yZWlDPAyr7/qTn87WlPK6RYesqAMZ9QvuU9D/DCqb6EiLiakVTBAWcxPRNlyMyOUckHe1a7EVPD1+uJw8xtiDgpR9K45zT9hQFoGh5usND7Ajd4jQP5j8KbCjexZV1MA8lh2DyTXMkwupKCOT1rCDurV8KxAOx4bDDYpkakib64w== X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;6:g1MXz1x2lM/99rb+61b3H76+oqVa4ypgvVN0gQNJatxktegRQIXAx9SZ/hBIa0ilYc6pFZ/zzjUcIhisMvKem33V84NLL98HRZF9kXlSx+g091kNStrLQ5NbCiie6ypysf6WVTymuvUBDLBNn3kxuUCC7MCUfL8uESVDV/mC+qxzOirLfIbVgUutFNqwsr/Sew65QjI5ZTBNKGOdRWkAJoiXrBW2Zdl7paEq/N/2oS++g6BWBJ37tcq6F4jUMDKuguE5rRscqfJQO+FdUrgG1kkEGlkPJKrI1XUU/xFuqieR3/KcLnvIrgLMtx7ayjRWlVJe9SdaISaRTIaXI2xIZY9YseN/6LULBBWsp7HwDdOhAsGH2qBtrnUpZ4AWExNJEyWbUVwvSKoPRQ1659sTKgKGCdiVRHrWjm05E7agfEsAO968uD9vpb7ZW6rz6Hozj5YuhysoiCdh8mES4gnjJQ==;5:9WaiELliIDxIJFLK4JY5dDBBVxURcyvDn8Nh7y4AYJobCABu37u6NyRZ1TwgkPmJEuHGOnw08iWXhTzl35r16pt64vS07NsTl5ePJhYQU/V7KtNe5/ckjA8SfFb+ozmbmfyJrPDDsuzCFLhN4rOXAZIYQl/aItNslvviUjHMTKA=;7:t8myKNRyZ/pgKoca+XwJC71INjGPSv/IyiuZL3st6qsvBVK1pclty/OSosMZzwU8iFLd1kOgwXDVSaHfA7xVzm1L/6wbPGlacR8gAgWkGWSxfIATTkt/Xvic4DD+6wh+tcO5FVpANqShVThmWpPbThln4oSi3cz6/bVxoBDzCN+r2mrSy0hRlroajiIk/KBjOywfX9p55VrF9sA47TMrsmI7YLXwZrrxyUEs+Pny+EMkIKE8gFfDbIKzdyN6Dc92 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2299;20:D1G3Pw427WCTypQMQqKHBnePjFlElVGTmA0qXI1iXuUNSYtMOkTJEFfgJtzkWxEoSrUSx/QQEzUWlrGV3CJs2aZWHDgy9U1Lc4XETIo22NA//G00Y9o8EaE88MEjSpzjbqQJf6nJT/hrqnmoC7i17Vlv/mExMrwua7ry5smTatxJWU+yKyFJ1DRCsdWvbwjS2KZTds10qVFVXQEp2aoT9cFKAFrwpYvYebBPW6vDu6dR481i/34S2wegy32i/ov7 X-OriginatorOrg: cadence.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Jul 2018 17:21:36.5419 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: b357991c-c8cf-4b43-8678-08d5f640e8ce X-MS-Exchange-CrossTenant-Id: d36035c5-6ce6-4662-a3dc-e762e61ae4c9 X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=d36035c5-6ce6-4662-a3dc-e762e61ae4c9;Ip=[158.140.1.28];Helo=[sjmaillnx2.cadence.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2299 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP Patch series made against Bjorn Helgaas's pci next branch. It relies on Gustavo Pimentel's patch series adding MSI-X support in the PCIe EP driver framework, and implements MSI-X support for the cadence endpoint driver. - Use AXI region 0 for interrupt signalling - Write MSI and MSI-X with 32bit value rather than 16bit - Check for masking before sending MSI or MSI-X - Check link is up before sending IRQ - Use BAR5 for MSI-X vectors Alan Douglas (5): PCI: cadence: Use AXI region 0 to signal interrupts from EP PCI: cadence: Write MSI data with 32bits PCI: cadence: Check whether MSI is masked before sending it PCI: cadence: Check link is up before sending IRQ from EP PCI: cadence: Add MSI-X capability to EP driver drivers/pci/controller/pcie-cadence-ep.c | 129 ++++++++++++++++++++++++++++-- drivers/pci/controller/pcie-cadence.h | 1 + 2 files changed, 124 insertions(+), 6 deletions(-)