From patchwork Wed Aug 15 13:46:21 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Alan Douglas X-Patchwork-Id: 957926 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=vger.kernel.org (client-ip=209.132.180.67; helo=vger.kernel.org; envelope-from=linux-pci-owner@vger.kernel.org; receiver=) Authentication-Results: ozlabs.org; dmarc=pass (p=none dis=none) header.from=cadence.com Authentication-Results: ozlabs.org; dkim=pass (1024-bit key; unprotected) header.d=cadence.com header.i=@cadence.com header.b="GOER02EC"; dkim-atps=neutral Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by ozlabs.org (Postfix) with ESMTP id 41r9kR15NNz9sBZ for ; Wed, 15 Aug 2018 23:47:11 +1000 (AEST) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1729373AbeHOQjX (ORCPT ); Wed, 15 Aug 2018 12:39:23 -0400 Received: from mail-cys01nam02on0072.outbound.protection.outlook.com ([104.47.37.72]:55603 "EHLO NAM02-CY1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1729363AbeHOQjX (ORCPT ); Wed, 15 Aug 2018 12:39:23 -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=VMl8A2bcpcf6k5JU33oIgKiIhknUD78m2gLsQHEzt8A=; b=GOER02ECyVKo11MGmPfVOnWIJZ++deX4wCZxCPbsfaco1RXT8z/5HGVL58HBDr62+W5UZ6PNQ+Kgi9weGZktY0sPtbxQAa8yKxxN2XAw+Lea5oJyJAn+wqJqxnuN0Wn9hfAeUVKfu+dGz2vvoNJdLDlGwXLmBc2e/iopyU6oHak= Received: from DM5PR07CA0030.namprd07.prod.outlook.com (2603:10b6:3:16::16) by BYAPR07MB4711.namprd07.prod.outlook.com (2603:10b6:a02:f0::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1017.15; Wed, 15 Aug 2018 13:47:05 +0000 Received: from DM3NAM05FT037.eop-nam05.prod.protection.outlook.com (2a01:111:f400:7e51::201) by DM5PR07CA0030.outlook.office365.com (2603:10b6:3:16::16) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.1038.22 via Frontend Transport; Wed, 15 Aug 2018 13:47:04 +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 sjmaillnx1.cadence.com (158.140.1.28) by DM3NAM05FT037.mail.protection.outlook.com (10.152.98.150) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.20.1059.4 via Frontend Transport; Wed, 15 Aug 2018 13:47:04 +0000 Received: from maileu3.global.cadence.com (maileu3.cadence.com [10.160.88.99]) by sjmaillnx1.cadence.com (8.14.4/8.14.4) with ESMTP id w7FDl1SR002770 (version=TLSv1/SSLv3 cipher=AES256-SHA bits=256 verify=FAIL); Wed, 15 Aug 2018 06:47:03 -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; Wed, 15 Aug 2018 15:46:53 +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; Wed, 15 Aug 2018 15:46:53 +0200 Received: from lvloginb.cadence.com (localhost [127.0.0.1]) by lvloginb.cadence.com (8.14.4/8.14.4) with ESMTP id w7FDkd1Z019616; Wed, 15 Aug 2018 14:46:39 +0100 Received: (from adouglas@localhost) by lvloginb.cadence.com (8.14.4/8.14.4/Submit) id w7FDkb0m019579; Wed, 15 Aug 2018 14:46:37 +0100 From: Alan Douglas To: CC: , , , , , , Alan Douglas Subject: [PATCH v2 0/5] Add MSI-X support for cadence EP driver Date: Wed, 15 Aug 2018 14:46:21 +0100 Message-ID: <1534340781-19194-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)(376002)(136003)(346002)(396003)(39860400002)(2980300002)(3190300001)(36092001)(199004)(189003)(7636002)(336012)(54906003)(2906002)(316002)(426003)(305945005)(106466001)(8676002)(2616005)(186003)(105596002)(246002)(42186006)(2351001)(16586007)(26005)(5660300001)(356003)(36756003)(48376002)(50226002)(50466002)(6666003)(8936002)(14444005)(51416003)(87636003)(478600001)(486006)(4326008)(86362001)(476003)(126002)(107886003)(26826003)(6916009)(47776003); DIR:OUT; SFP:1101; SCL:1; SRVR:BYAPR07MB4711; H:sjmaillnx1.cadence.com; FPR:; SPF:SoftFail; LANG:en; PTR:corp.cadence.com; A:1; MX:1; X-Microsoft-Exchange-Diagnostics: 1; DM3NAM05FT037; 1:cm8X8ld8gJw5LNgaKO2UbrHeaOYDxTMPZ5wQGwL3qG8xDXaq2Fk6IasmEbB3/njXvjPYygZNFp124L1+/KBrFWy6tdo7mb+rjXmjYiRokZLDRYtDPEAd5d+W1FA/4Eju X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 93dbbc57-8c47-49c6-0a95-08d602b595e7 X-Microsoft-Antispam: BCL:0; PCL:0; RULEID:(7020095)(4652040)(8989117)(4534165)(4627221)(201703031133081)(201702281549075)(8990107)(5600074)(711020)(2017052603328)(7153060); SRVR:BYAPR07MB4711; X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 3:yLOqLhNnPjCNYGgExRdCg/zoVbKCLjoWlSeCQpLR/PMY2lTg0GHQPTyxwDn86Jau8CnQgrRpu/Tkhtp92eCiJZhWxxmJI/QBnb0oVHxCMxn613d8caSkaAxztyN0WfHP8eccMYg31jKGHKaUzTb5kdq/qSFq+VvXoSRC+cADf2zxnoiUwqPdf1Un5x+0oYTDjuKqKFef/ZxT0yc5GqNXZfPMaSf9IbqS+gOJ/zfmsfWKA+Sd3X2RxMfvYUyHNiv0J6uw+eZUtB1a80Rgsz+lRMCjPyqYb7RAVR+xBBtbns8/jZr2IViFtiUP+kVur5qvc77cmka4SqtJ0zuFVTI+Upm3UEo2bF6WUzXwSb4kqNc=; 25:O4v0Sa2N9FOgNet0saCbiKVhP8Zr6Q57u+1srN5z4EdiwwrUmXYoDrCwZV1UMk3uRoEL6rW0Y29zn/wo1gposBAPdTzs0rtMuycw64r9x4RbvpC915VlGTefIpLJQoQUZ1AbgN3zLwnaKtzj1Vu1qUFsrHq7+1TMCtJuX8HUbmCNCfQs3DOKxomZh77apo5u8PCLJFSfOqxuKtgt/1iCrh2fJrLUo2ltczlBpN22VG1SAspVzes5MrocFJsvQDLZnzXsMVeGInWDljh+ZFJKyE/1YmFed6eKnEBa9ncVErd74wbImGrxGWev6Yh5yS9qAdgGgX7sZP3nTwFa6bMiRA== X-MS-TrafficTypeDiagnostic: BYAPR07MB4711: X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 31:jIeWeFd/BdVAa+EOxhTm8oznmTc3d4pBSwUPy067FM8d07Vf3hg9Q6uzXi/voqLKoUEiuUQEPIHPgNFnAX9sdgF2WdaOfN4ijmGcCxGkjdhWDn1TlF8wqXNn46lsJftkFPQaGY7HWM8X+niHneEwEs+oEE9TUlbYmtQFhRfLArxx6sZOsw6PqhsMjBSGlibbu3dtS1cBBiY3IWyw+T5tpE1gY545tC7SHPXbB/cqYfY=; 20:lGnYf0f+poRrdWPYuCLIgmMvBlPj87X5RgRVHhKEEuRreXbZF3GrNIlwgmYnNmiQ1hVrFwpomAW54e8r16nZVJ3eV8mrdBGkqBLR5E7XPMYOGP9Hy/afIHLj/gpTo+tvPIrbKd42Pv+SeixdJQfhKGQ9F5/9KtPV6Qh4dcjsXEpxXH5oclqQg/Bqlj/YpKOyxiaNM95uglvHlY9lqNhV3FTL6scrYsNFkTqY+1HgJxr6jAmvKbnFyBrhnWn+wb0FA/9voRSezLn4I4bZDWYRZm9In8z55sKdxbO9xNaAvKsbCEog3VDhBL/VJOj+OqIJEtLOi7o09/NJGh7kmSZ0XchrvluCFaee4ixhbxoXP9NhqTr3XvzuIqsYKTEn5sybOUAdzXcD4UZhnxDf+yZUlX499cgYeQ9Ldtf4H/jq1Inb1nHq9U3ejwRX2tgDKI1VuefakblKei2YBSePP09mtRzXIuZK+mOx6FcqCDbx1A7UljlpVFHgua+XlLGf8W1E 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)(10201501046)(3002001)(3231311)(944501410)(52105095)(93006095)(93003095)(149027)(150027)(6041310)(20161123558120)(20161123564045)(20161123562045)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123560045)(6072148)(201708071742011)(7699016); SRVR:BYAPR07MB4711; BCL:0; PCL:0; RULEID:; SRVR:BYAPR07MB4711; X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 4:QYqC2nFcZC/dSJQY43Gl95jyhKJigHlRvCsIpLrEpdpEI+RCrWgNf52yp6N0/cpa6eMsm7a+ZYICIRkcNXFAb3qERSufDFdgL445R7LT4IP6BXxuyksBa5E+FoHMUAEMTPvgrTpBBxNvmnpK45y2K2iNd8BEC6bIkBt608PKhtDDTlz4WOuVZ2eaUld9KDBk8qTIpVwg9Pk/0FT699q5hy9JusQNkaHFwq4920Jl3beAu33XEpvoP0TMk+ACFysXmSDn/gC0O3BNl/ERnQNFJQ== X-Forefront-PRVS: 07658B8EA3 X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 23:pVM2+Uj+sSaZCF+5lrTNcElJiPlj4Yffe7KoUTp63XTBmnqDdVkiygjAs8F7NVlZXXAYJsVNsvTXq/uaoNIfeXW6bkD/gAsUck6cGqZScJLrr2VwmhR6sPQ/FVSgT5pi6BK+mVaCwcGr3t7fExZkQFXHDAWgpYKzqLktRulDM9+k+xFglwne/xOI35Kf+d2ixHh48W5HmmC2goCOH/udajGKXSJVtsYtrJfIGr+XZB2nbvS/2cDRhU0+S+Ya5NFdKiZT6fZ6LInxV4nuKGCIY4SgKmU1tdsPLNMcPcQfZp75CkTPNz6ZLY9Nr9PdOR6WpIyE1o3Ti+DEFM353UzIfJBK7EBmk4tlVRoF1t6ZUywtx4NHvFdw4reKDyljyaVfLPVHIfjWEs8boKTQqa/rQNcaEmEd2v7V1YxBMkDXk7gTc0KqFcm4PNGvFMDqUxJapa+hgbZJnC4WEAWibha7STVSBKyvT34RsAJjk4w4wH6OpFd7rkHXLp/+2GwLUbQH6yZqDQBuSZSYiTky+6YqdAdt17EXVkSQTt144aelP5omw3R/1IviE3eJu4Z2n39+Zr5mcP+o+uHUgXinD6LWyi2znojDdJDfubVyk/yGTPOiR37DuLf1P1kKtu+CkpDg2jZdlb2nFaBP7lwE9InIUTFcmYtg3gmyLOxEYlsN0G971nJTRVr6pM7SVlgI7Zentr1wsKWUOMBojIfi3cyvXWiq1kFHXAcy15a8xQF7YQDAcPD9FwGJoCCKW0x8wwgdo9gecnoylpcNaIKMahbCAB+GDF+rlYV7dDD3jtyMMFMsdKHCXymbq3kVrjYu3EVf6GxEgn1jR8jjwXw5CIRWZ/DMiWpKvL+ZGEP+h2Yyu87aa8I9wVVLev8VKFBaFiELc58BFk5P9S1LzgyyOnQPP86U7dCPbUY2ruyOHEHH+VxoEr2W1zlkUtvLfSaYZpda3KHUgCcBjmb9kS8ejAZSmMMjyvZFE8ijPrEOa0VVJQ3hkhJ3mr3xjJGdLa7OgRfrUuLxH8RIBsaYdS9HK+Zkt7CpE00JW/6/WigLkQ4q16851kAbwGBwsTSZia2rlAUK X-Microsoft-Antispam-Message-Info: NSxcTV7g0CH1HSX7jOVRXpdUhdkLs+PMdVhE1si3UX1S2FutY/kD/0pPqVpYDmPSuxlPdrD5kPKUo+Pe099giTIj63Cq3vG8AbIKDqHmeUJex/nPlqxamqiKIrqnrO1VB+9PEuQYbv/4jgQM1AyGOGJXf0Fmik09Ak2vj421RGyoSGKK+hvzWy8Y3fZFrB9W64x3OovoJWyB4Lw7LUG/4Aeb7vg01153s2wjQVDPlhSk8RzOTd1xqm5bVZMngbAbNVddPrQjm1qh2PvGb8xHLCmPwrNtuVPXBTKjbgKaCQhSRnrCEHQ5OR1KxobmMiFbTV1Fx14UjSryyhmzVkEUE4T88t5wpxkSphwdvrJz/ruDSrnIAXC17v3hSoBldRp6og11kKSiWgNFT3KoXwRbxA== X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 6:EeqWI14HG1Nb4KYx6q94cMoppHZs84ujRu2OD8CRNPMAuN0DDjjCtOroiPrIlHpISTIkbm/T9KWMYa8g2PBzrM/EF3Ok7dbXfy1Y+Mhnk4MFRN7QU5S0NO6SS5Hn9cLZXONepSssDsDyXWVPTQnHAcsXZDJyXmVPGfzRrS6pmSwftgm0+GL+pBUhHlJlsZG0dsn9oC8kgf/1YAWDuw3uFsba3ycCZE+5yiZnMzv19u8kbQWqNJ8yPayZl8r+cUgaZs+xszygJylr77nJJRqhIWg+jO6LkPP7lTNjK9f1sX8FDzutGTTTZaTI2AlmBtsLsAP9Q3l0ibke2xqGOOfhdar/McCM13vcrPb1AKWQ4sGSLIzNnAJXEjE37kxGy6EZd+UYfIlZNY2o7iUuo4AsY1x3DuETsHraJHQpTegez8Bk24uvdvOLF1/3bwaFXw6L/XAWxBT/xzEmaKlwBayJgw==; 5:JZs/rpnp+Qg346o/njgmTmB8F9A6mld4+kW1g3mp/X2KGPoFwj6tI+szzV8CQ/gfjBERW5RTVjWP4iC25i6eL8+lFO9bOdOAOpz1soxsK+Xns2FkKpG1Chcc6D+2c6/9GsVBIDcCk6MYJQlRNloWVAE6vzj5xno93x/SiwHr4nQ=; 7:n8PcouVEwFPfMjBAbDNEfFeMfLbhDOfDhx+y0sBPE4eMumS57U1UiCrGTLcwxXVAoxyivc3w0LMybFHyM2PbwZYa1vd3MxK/VLHkTgYQGlqfrOXnoNm5HKslLfM1uH1ds7TgI5kAhh7JUQbeatnY6oT6AjsVUr1om9rcipp9vswF0PnVZs62/+DS4Qwa9QA14d/LUjNxOD/DPW3aXYMUjqNDTimjHkI2FDICQA8SLhWYXTRuLOYrBsq5ydjSoy+a SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; BYAPR07MB4711; 20:TUDv3HAiqm6TkA4e2AvR88JU7xmHndpF4uxzyR946dxcTWFBstHXBa82MyrA7Inmi+EyxGfj2hO59NLaAbtL7Qr/+dPCpYdBatHPByfVmUJpmS/nuoo0nzqdEN1kB4I9/v1moON41lfJheaC0WG/B6akWXWq+XpVFeWcKbeXqd2auKnmctxL2VHqpm7UeETt43ca0gKzWLZFWw6VAPftnDbP0CLrAYWEY52YLtwR4zrSiZafjt9ROaTJPCKFZmRy X-OriginatorOrg: cadence.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 15 Aug 2018 13:47:04.3192 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 93dbbc57-8c47-49c6-0a95-08d602b595e7 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=[sjmaillnx1.cadence.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BYAPR07MB4711 Sender: linux-pci-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pci@vger.kernel.org The patch implements MSI-X support in the cadence endpoint driver. This patch depends on on Gustavo Pimentel's patch series adding MSI-X support for EP ("Add MSI-X support on pcitest tool") It also adds fixes for MSI issues discovered during testing of MSI-X - 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 Changes since v1: - Rebased on 4.18-rc1 - Update commit log to mark first 4 patches as fixes - Correct formatting issues pointed out by checkpatch --strict 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 | 131 +++++++++++++++++++++++++++++-- drivers/pci/controller/pcie-cadence.h | 1 + 2 files changed, 125 insertions(+), 7 deletions(-)