Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752384AbdHHMXb (ORCPT ); Tue, 8 Aug 2017 08:23:31 -0400 Received: from mail-by2nam01on0053.outbound.protection.outlook.com ([104.47.34.53]:41517 "EHLO NAM01-BY2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752075AbdHHMX2 (ORCPT ); Tue, 8 Aug 2017 08:23:28 -0400 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Robert.Richter@cavium.com; From: Robert Richter To: Thomas Gleixner , Jason Cooper , Marc Zyngier Cc: Shanker Donthineni , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, Robert Richter Subject: [PATCH v3 2/8] irqchip/gic-v3-its: Initialize MSIs with subsys_initcalls Date: Tue, 8 Aug 2017 14:22:52 +0200 Message-Id: <20170808122259.6299-3-rrichter@cavium.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170808122259.6299-1-rrichter@cavium.com> References: <20170808122259.6299-1-rrichter@cavium.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [78.55.120.224] X-ClientProxiedBy: AM5PR06CA0030.eurprd06.prod.outlook.com (10.167.168.43) To CY1PR07MB2346.namprd07.prod.outlook.com (10.166.194.145) X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: deaa4d45-45e2-4419-9714-08d4de58459a X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(300000500095)(300135000095)(300000501095)(300135300095)(22001)(300000502095)(300135100095)(2017030254152)(300000503095)(300135400095)(201703131423075)(201703031133081)(201702281549075)(300000504095)(300135200095)(300000505095)(300135600095)(300000506095)(300135500095);SRVR:CY1PR07MB2346; X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2346;3:e35t/2SAJeiOhBKkW+rSudKju3w/EPz0xojXZPHGm2Lx2LGM9iFcTF7MZWVtzWnTPVk+3rdBsSOuIZ3858Q+VI6cbr749uBwj3mFKnARK3KDUkQuHP1+/MkRBEcCNQ1dJrKtdzdu+iTOU+5zdlopK0u2PzIDOx3Ys7Pirr17+diA8zpGir1VqbC1P3Hc6fCs1dPNUam1wLzleB/biXIStBkdSlVb1bece+HTDCTrYcSHZQWA/KaWqNmCoQlDhvdR;25:m22EbR549+qlGSiY5hqZR7Yz4psWG8GljARw32Kp1Y4EiX/0qAsN3vrebC1pxtdsrlfOxOetIMuRFxS5eNeKxANr5IZgolsjh6aOj96tswNwocdqf+4WDJ4nCZUNWIXAdnuEgkSAX1PN/l1kLrdXBw2q435lRsxAPE7krNSKvThhKF1W9VkX6sCKuHtnE5mm+0Hn4ASiuZO2mZ91FltltiMypsqmAW5hrEL0hYlbqGF1+hn9MJPLC4wrz8xllHFjdyrDMfGj9LhHFNSiDE+FnTBsEa5YTPYtG1wzuRNMVclfM0y/18nLBq2czmqBipNn5F8zgO4rXStYDZ3eC2t7Mg==;31:0MkcDhi8op2rAenFwRKltL5oUZa2BprNzQxdqWUluGpTArvI1R6ITPETFbf2l4dUtLqWnfrEzd5MUsUoiSjDmsBkZxBdeToANFpwZytUiEx0MnxMz0UW5tjylZ/cQ3ZKuWa8v6w64Qkh76ZGKpcNBeFyBA7J88w5H7XmJDEJY1WS2FR2i2LtG04O1vMADvLuqJISfn/5XXB/XEQjVbW6TigTrFC7ocYcGNLbLmtGNLI= X-MS-TrafficTypeDiagnostic: CY1PR07MB2346: X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2346;20:JAZc5h6dnLH3yPR7Cn29N1zC1tub5X1X/A+TXSC+jkmi6K/jf1rpOQwqnxyp7Y9JgYlM/z+IgWYR9CFrTvfYjVtZwfHoTD+qX4lJjWOt22XAEVWOpk1uj0+jJtryVZuNWR40aKvW3q8d8bOhG2F3JpefUoJyXDR+z0S5nLdpUaLm6M/mn7Pwz3AVRNX2GsLcChuyBuA1Ku/JS/h8qv6BSCqFA3PF+0q47tKHc/OPKHCD19EK4ZwmIkoxoBObJd5gP9rxXQzelAvBjf+cYnzLYXmngQTc9WIC+cp4aYbwqb/0UNZEFSsuugVWJdQyIgJNxxEAEU7tjWGckMk+AtDj/T3ea5sVEKuVTkTMiHS/FtGY2YY6lOv/H2iSf1g/0FK7wpaikU8byVz1IJlgNcRYpoRifi79mVOSqg/mSmMz8wkth8DH6RiM7HWle5ogQWhCovkdd2VIMQptCeZAtA9+ow/uTMm3wwVcp/lRiODlPHKhmeWSPsqkmvA48ghRJ6oJ;4:4zbeo2kMYiZuEieBb5FidaA8FuRBjsnhVdQt/86MPIGYJZ3JfKcZpUuzlhsU+hU9GkXwSTmBSL/YBNqcvly3fp56uKjp3iYje3i8uD4RZ/w33p6L3sa6F0htaJLaYISsKxE33DpTLY4/FEl2VEmRFaNPl6FVhRSv7Y+HN4oV1xGG47YUQ8hx097TfAtuZx6Pk3VLAoXTIT5cl9uS3NDSoF28q40VUG/BWwca6Q7GqPvjhvOF03U2bJd9wlZuyyNi X-Exchange-Antispam-Report-Test: UriScan:; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(100000700101)(100105000095)(100000701101)(100105300095)(100000702101)(100105100095)(6040450)(601004)(2401047)(5005006)(8121501046)(100000703101)(100105400095)(93006095)(93001095)(10201501046)(3002001)(6041248)(20161123558100)(20161123562025)(201703131423075)(201702281528075)(201703061421075)(201703061406153)(20161123555025)(20161123560025)(20161123564025)(6072148)(201708071742011)(100000704101)(100105200095)(100000705101)(100105500095);SRVR:CY1PR07MB2346;BCL:0;PCL:0;RULEID:(100000800101)(100110000095)(100000801101)(100110300095)(100000802101)(100110100095)(100000803101)(100110400095)(100000804101)(100110200095)(100000805101)(100110500095);SRVR:CY1PR07MB2346; X-Forefront-PRVS: 03932714EB X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(7370300001)(4630300001)(6009001)(39840400002)(39410400002)(39850400002)(39400400002)(39450400003)(199003)(189002)(33646002)(66066001)(106356001)(68736007)(2950100002)(189998001)(54906002)(6116002)(3846002)(97736004)(72206003)(6666003)(81166006)(50226002)(6486002)(25786009)(5003940100001)(107886003)(38730400002)(4326008)(305945005)(50986999)(101416001)(5660300001)(42186005)(81156014)(230783001)(2906002)(7736002)(6512007)(36756003)(76176999)(1076002)(105586002)(7350300001)(6506006)(48376002)(47776003)(478600001)(53936002)(50466002)(8676002);DIR:OUT;SFP:1101;SCL:1;SRVR:CY1PR07MB2346;H:rric.localdomain;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR07MB2346;23:xhzEeh3ACgH0VHIFLmomv+JNmqyoEwfnaMvm/Qemv?= =?us-ascii?Q?spU13W7knAN+mzn2YuUgMyL01Ufp9URLEZEbI2h0HNjQkTPmdn2Xm8PHPSzx?= =?us-ascii?Q?eK3JtxGF1h7rYuq58hoKNs4bmTGhawBN8IZVYMJSCnRFVJnIX8cA4q9lD9Pg?= =?us-ascii?Q?XVXEY3Tu/yEnxzUrj7QCJon/Wcn6LuMwTWT9JwoR5QR2QIqjTZWmwP2GZ/Nl?= =?us-ascii?Q?IOkkgHy5iscaDJlM/ImxEAJaF1ljw2SDIArpQKuFM6uhhhhTrEL9Q+G/X+0n?= =?us-ascii?Q?oHS/dCFPBzkjyNE0VjjjGukEsb9ccQwrR8/PCiNYd/pXSi91BEt8T8I7cHeJ?= =?us-ascii?Q?qZPBWGJh+DiKSWa0LVaOrzi2RUXZ61MfhUWiL7WWoHeoDIpu+2ZHFAYH7I5z?= =?us-ascii?Q?797j5CotI4vj3B5TzGbQdz+3nDqLU2+PHiHcEmASI4p0gCbnCzJ8/i6lAZvm?= =?us-ascii?Q?7IkCoUJWlAwiiYOHzY5KR2+xR25H62w/c8SYKWd49tsyN+UCBYyqdPG0D3kO?= =?us-ascii?Q?iO94oMISJxqcBIvn6B3zsmb53WDnbFEtjGJVw0qVJd/WGvavuN6GUFy9dkvI?= =?us-ascii?Q?AfXII9t6u/kVEXENizCTbZtmOhT5u9IXi/iPl1g/WN+IYCjiFRQF/HI+U67s?= =?us-ascii?Q?hOfnrNUN9kLR2FuAU5DoEoROghNKP/zLGQ1iDng1dIJ2k0giWYmja97RrcsL?= =?us-ascii?Q?YnOprLUDF3z6Hido7Zy7yC6bpssNa5CnCvcIdQRDs6Rs5WatPa/MWMco0eLZ?= =?us-ascii?Q?UgdJroY5cSSYdXbeAR54yQ9k0foWQxvV3ny8FrnI7zp9oR5+Uh7sLZtvfUu5?= =?us-ascii?Q?dFKoKBxSGDBrFJkz5FNpQmPDnPf1/Pt2fFKkSNE7u2KfpKPIvCW8jo/3qL3o?= =?us-ascii?Q?0PpramhBgejMIvGQveJK9FD/AxnH53zZ2MVIsUNDHCeVq/Q+C3SOz0MC8Y2H?= =?us-ascii?Q?LYUP4d96WW9KllsZJrCMjWKFLrtgjonz/aODOSx8DONX88tiD8Mwgw+dbvhC?= =?us-ascii?Q?JwB/9jF0A9IggyL4wRwh2pLeZ8qYS8NlLs3Y6kHfr5J58dIEE3imz0dnimXs?= =?us-ascii?Q?pJRvtsVtxCbZOkGz8hG8geV35ibhbo77lxJZ9hRInzxoeQrx7XIn1ydfgRYb?= =?us-ascii?Q?rom5upzmIxGw/nmX8XCnUZVt3aFL9fHFPSSBuGm0w5LF5s3wiNnfyO8qV7pZ?= =?us-ascii?Q?dvJBmDmUU9mzw4PSQwPYRDZxs4AhStFWB9fTuqeoAorIhxR7+kkZAoSG+tcb?= =?us-ascii?Q?B0Vc8Kz/GI1B4Ukp52CwcGeOwplFBRMJ95kPAhLQa29MF7OgOe3bQcTb0YFQ?= =?us-ascii?B?dz09?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR07MB2346;6:eH23Bib+kbydEcH2DBv+QrZB7R7W8wq7gPVF/H2cb3wDiWaBXYj9xL6dJobeZpLPYI/xNzbogKf/X5AnDraRvXXVwPu1R4HFsuFI0xjGZ081qiZrug+b6AW74mKoT4NokJOkWuN0fPKCyr4hQKvweDckkzv37td+WZHxIGtISOoxuSmaaC0Yo/koAXF3SJ4yMIjsWpfUV4yRa2y5t7EgI4ld86LszHETnQIfXc1XfrEF3Mb7zmxpWIze9fwawqTNn8fiYO3jyQBwCZWXHz/bPvAsSCIWqmHAwWm7qcom3J3LZ+GX2RtSyA5ICYXijiFjZAQr7YqiAdrABsBHiyHRRg==;5:qDH5QPIcT9iNXsM6m/csihxdEYhmn+vYBfQlsrKIHefrknx+ZrzyXtaREPSkiuM2PGbd8RhEm7K6blcH3xvaG44Ksfeuwe1QYtYABUFqIJ5uxXtByPQgy3R9Mix+n2TVf4xobBV/MfHf5T3mu/VWFg==;24:uRwyEHtHji1mPvL0+4RiOhsU3Z4V75EGE0G79OPeV9dsQF1BptmkTqNdMeb4iMpOw4rFtrhd3daBKW76lLlbCq8/9wf3EvX1v9ntBcOK6DA=;7:p5RoxESikS63H+4LVbFRgck2ZWnN5iBRWiU83/akFLhs4E014hKDHm2Rhk1t6kG6tH74kSL4fqh3NdbDdC4YmNFF1RHrBNaoaRJSpQZl45Muqsh/7QqLVcu8fRaVMELDwbn0cPfmHWoHRaIo7+49OyY3ZeYI9j1qrYfQ29lgFt8VxnplKXQ+JGVvryQBT4E5HjpBhR3HyHLif4hC9dzDeBHRhsJqnqvn2Y5oyPaQcUE= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Aug 2017 12:23:25.6860 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2346 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1244 Lines: 33 This allows us to use kernel core functionality (e.g. cma) for ITS initialization. MSIs must be up before the device_initcalls (pci and platform device probe) and after arch_initcalls (dma init), so subsys_initcall is fine. Signed-off-by: Robert Richter --- drivers/irqchip/irq-gic-v3-its-pci-msi.c | 2 +- drivers/irqchip/irq-gic-v3-its-platform-msi.c | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/irqchip/irq-gic-v3-its-pci-msi.c b/drivers/irqchip/irq-gic-v3-its-pci-msi.c index 77931214d954..5940fdf0036e 100644 --- a/drivers/irqchip/irq-gic-v3-its-pci-msi.c +++ b/drivers/irqchip/irq-gic-v3-its-pci-msi.c @@ -193,4 +193,4 @@ static int __init its_pci_msi_init(void) return 0; } -early_initcall(its_pci_msi_init); +subsys_initcall(its_pci_msi_init); diff --git a/drivers/irqchip/irq-gic-v3-its-platform-msi.c b/drivers/irqchip/irq-gic-v3-its-platform-msi.c index 249240d9a425..6ebc871ac63f 100644 --- a/drivers/irqchip/irq-gic-v3-its-platform-msi.c +++ b/drivers/irqchip/irq-gic-v3-its-platform-msi.c @@ -166,4 +166,4 @@ static int __init its_pmsi_init(void) its_pmsi_acpi_init(); return 0; } -early_initcall(its_pmsi_init); +subsys_initcall(its_pmsi_init); -- 2.11.0