From patchwork Tue Aug 8 12:22:56 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Robert Richter X-Patchwork-Id: 9888041 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork.web.codeaurora.org (Postfix) with ESMTP id 42B1960384 for ; Tue, 8 Aug 2017 12:33:59 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 326CE28817 for ; Tue, 8 Aug 2017 12:33:59 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 24FBF28854; Tue, 8 Aug 2017 12:33:59 +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=-1.9 required=2.0 tests=BAD_ENC_HEADER,BAYES_00, DKIM_SIGNED, DKIM_VALID, RCVD_IN_DNSWL_NONE autolearn=unavailable version=3.3.1 Received: from bombadil.infradead.org (bombadil.infradead.org [65.50.211.133]) (using TLSv1.2 with cipher AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.wl.linuxfoundation.org (Postfix) with ESMTPS id 681CD28817 for ; Tue, 8 Aug 2017 12:33:58 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20170209; h=Sender: Content-Transfer-Encoding:Content-Type:Cc:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:References:In-Reply-To: Message-Id:Date:Subject:To:From:Reply-To:Content-ID:Content-Description: Resent-Date:Resent-From:Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID: List-Owner; bh=t1JKJb8ixbKOFRY2eyyNE/4MZPsNH59S81XgNUpFJog=; b=megWO5GspdND3B TUyHxF2LYgOArgRyMpaDfHavinRxbRbuk0Mvj+ALAF4CO4lo9tL/HGp/+iL0/6L3avqYm9YoC/61B 6jdFhbCpdJRR3yySd3nl8hYfpzNHc2L51HxCSKdj5JmWLwRw194ql16vVQXIeFYRbQwCOxDsyZXk0 9wm6b2w2Na62/xLbRoXSiueRy9ud7foAWqRMphZYS4IATp5w2S1zbGh1zAsKHCSJ/DL8DLpR9qW2R iu2ir2Z178h5FttI4NHrnqi0TB6XAFY782U39Xt+dq7IelYXrO28Fg+fvGzmDN20xh8+Yf29D/x5c rSJp6BAIrm0MMcA2CXgQ==; Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.87 #1 (Red Hat Linux)) id 1df3hk-0003N5-WD; Tue, 08 Aug 2017 12:33:49 +0000 Received: from mail-by2nam03on0041.outbound.protection.outlook.com ([104.47.42.41] helo=NAM03-BY2-obe.outbound.protection.outlook.com) by bombadil.infradead.org with esmtps (Exim 4.87 #1 (Red Hat Linux)) id 1df3YO-0004A1-7w for linux-arm-kernel@lists.infradead.org; Tue, 08 Aug 2017 12:24:11 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=CAVIUMNETWORKS.onmicrosoft.com; s=selector1-cavium-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=StnG54B2ZHb1osWdT3ug5IWj/zz/3ReHoiKFtC4Y4rE=; b=onP0eet9YFkVV/vEeipeY0yjGDcpKU6gRv72CVPtfS+BUPKPbZ/1KpaxhO/suyHqXuKuKPISw08PricVay7cIlMyOfxDGP6r6P6FLsLKqxh5GkgdG8jXwRKENOIIAROlAniPs1fnHKgC0Xkzo/1bgFYyPFRosSHTDEpbAUOay9c= Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=Robert.Richter@cavium.com; Received: from rric.localdomain (78.55.120.224) by CY1PR07MB2346.namprd07.prod.outlook.com (10.166.194.145) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.1.1320.16; Tue, 8 Aug 2017 12:23:36 +0000 From: Robert Richter To: Thomas Gleixner , Jason Cooper , Marc Zyngier Subject: [PATCH v3 6/8] irqchip/gic-v3-its: Initialize its nodes later Date: Tue, 8 Aug 2017 14:22:56 +0200 Message-Id: <20170808122259.6299-7-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 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: 6ad3bcbd-715c-442c-08ae-08d4de584c35 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:WsQxQqddVIlXcOF1NS1zL84Whof2XkHGTVETgBi8n3PkzgZ55eWsLZiC8Kz0Mh1DL8wsXNAIgBXY2XbZh1NE0zGzmKBweHrYeWLIwitsYpDjC577rk5vwIW74wLcVCAmnX0P8estk0H4nG8kYnVBDBHt7ZdTKPmKP0U/5jNshQsKFz5OmQStsaCyDSyVKqwx8X0410U0CAsqVvD9GJUOJI/EnZaHejh5RJI+B/hkQkIHCYilf+EiJMymENWj8feG; 25:vckWvOv3h8tws2cHPI7CRNaLTaE6nBS1x4/2FCqQ4CbXjRcsbURyXZsOtTvDD4UA09WhTgNU+n9XS2TY+6SgCKuTSErYVE67bA/fcVNSsVPwvLsiP1f9thh53d1OsKjPblu1+KdlebeO8gVf3j5z2TQ/8Du6XpS/bj1StkHxCe6yMyIWNVCR3bX2iHXC3Pz1mZIjjrPiqTN0sNtdoludAMBgz839blDzlpiid7zLGxCdsbRj7cK4Q8kkbIvDbr7uIWez0UKx/ftM6MkxKsgL/d6Wn56rDLTUFWB6p+yStJjgLGk4szxRixGFIhWkJXfmDmOcdyFZJLtjViIXV2HGmQ==; 31:OSC8BM0rgTTABP70j4FZm8U7Ll4lkEaEOPPD1vGOaf1ZbwtdAkbe8IXBcJbzF2Zm5QtXdP9/7+L++TJd7gAlSveDvuT1L59q11vBpiFErUTGB1m8VfJ7mV+as2yKOMY2wm1anwF1Ycavt7WHAsezd7pllLGz/48LrRu9X7hwqwoV3GXksQq28LDITzEUBai6JeXJeLsibLViHGubnk+of4ogRPkkRSvuwMN9nA16yaY= X-MS-TrafficTypeDiagnostic: CY1PR07MB2346: X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2346; 20:eFcXmpr6CWQfs1bORA9PJ8GKjrVS1byfiSHwJdLuJUwb28WymS2BPw1V3tuOl+hhpIBDIiM648Ua0gqbGG/gXA8rk9E/HzDDN0etkDSOJ8z0NDUBL1Yyjbr5+mAPWHq9rRJ73mEamVm0P5582xS4DJ9bpgj5RYGrE0xG71H6U5zeN4m8TYlMETaob8AyFyYIqmDJeUinUJq2RlzXh1b7khdKLguT5ET06Dr6nJbuWlimfSy3j0wTvt80zKUjIZlXbLdbQO81csxx7tJksz2G1C+hdAfFBv4xhLq9MSv2pJVyU1X1ulawUyFp0zqyg+E/ipKqRQBLr3yp38rix0rgy4EZ5cQtMkRiL3z2t0KVfLqYXTGjYOn4t3KdkezSRQxw4Xa/GNJh+K4AMC5Z9duViTne7rFVEVbTGSqLiBPg7hF3mHR7ICidhuJfrvApD9lw1JZ0vvRNiwQLqftSaV5DDmbeA1kHLkTwm9PPWW6fV6rkhBEnEZkt0FZZTtZ+U3eF; 4:8stfcFv+G741O/ruMry3gaCup4uO8VAChKTT77l3Hneuu3UWFzX6wBVMZOnY7BAh7i/VPSPVh4OweZcAuVf0b1kUzgSvHU7xG8dHgLL9xX8LW3+6g90ZXIyqe+Uslc4EXye/9Ss0PU7gB3qUNL4BdpcILcOcaQROHTaQEH0O3//kPgZ8CUDLeQe9kvG/VAb7Z6kydewh3SGzZVHGXIUShiSdh6Lbk/+jeLgapVWXBTNpvhGW6m9NBvvnv9MPlFT2 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; Received-SPF: None (protection.outlook.com: cavium.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR07MB2346; 23:GaNxsMxSv7ZGZ5Lr8EmIVPQ9wdpg4lodFEA0KFw+0?= =?us-ascii?Q?T0NhYJLKVLhRpob5lNE48V9p3MvZ99f06m4ofIxBcAuEYTa+LH/jm8UTM+xV?= =?us-ascii?Q?wGFLUBkSXnhujmBamj1fxjKg/YfZPQp6Pa8eI0+zIZQW7yIjb7a4/iN7R6gV?= =?us-ascii?Q?rH73Tj77vH44LgHIpl0L37sGzUF1nY2zpViFKN+Es73e/QST+VZwL/xw87LU?= =?us-ascii?Q?Z51vavZ/YfipA9kdBdWGStTmWcFM0KoJkkKWlfJDfHU4NofNFSEx95F5yhcX?= =?us-ascii?Q?g/8Mg1CQGoXYxNEtCxjfmCzQ7UOTM0Y4WFbj1xF/U0YtAILour6JXPsYM+KG?= =?us-ascii?Q?T5yeBQR/n/6hY05dNPW2OWhLcKhBL+QqTO18Z0gEJNwnqjhF809Y092Wp3am?= =?us-ascii?Q?FhZqRmHiU+vJpW82SmsPyAgSgd+deiGCxKzCcR+JeK/drI2GTVO7dWDGa3nD?= =?us-ascii?Q?ZIOdO5xdedCuP1lD9L9A01DXMnir8UIvBzF4h23X+LtPoGOj0V5ZrixsUH6o?= =?us-ascii?Q?WgIe7VR9V7FUBh5WcPSf0cGamQF8i5o3IADApU8a6hZ5SjB1hkNGds12UhxT?= =?us-ascii?Q?pMag6+NuWG4j40dt7FETn6CPAtH3yBmdQFrKQzeIpzNyx2iarWptu4Rl3AUv?= =?us-ascii?Q?EQVsjXdkJlTDlcXl9QWR0LiysnLyiIy1TFCCGTrDAXJc3Z3vOziHGryF9W2q?= =?us-ascii?Q?yWaJRJj/HrKBDpRf1v+iMZxmQX9LarA1W12VcV5uTLLTJbJoawLYspI+M664?= =?us-ascii?Q?QQDZCNa0S7iMF6ATsqYldzfZRP3fQoZ4+G1YLUjnHPFbcO8sV6ly9Q1DGwNz?= =?us-ascii?Q?2RVZXZWB2oAKRwJ3yx2JCllr7d8F6XVLLv0hVbjRID4vn0VT7jim0pYFuVBh?= =?us-ascii?Q?w54JLcD591BLprv5f9oSWc15fHG5G02nklDFnbiaTc6vIsSqGmjNY/YSFXWf?= =?us-ascii?Q?L5Al4koAmt3DA08p9w2wf8j/JwVz3XNtfnjcE7pnqyQKj29dfAQp+9OUEiVp?= =?us-ascii?Q?u4zk7jD+47uF9rZSsyfBM86JVUC4IAXaAwUwz3MLowtZyaAMpWsd6WfUeSwU?= =?us-ascii?Q?CuULbS7UOf3kRl/S/CuczgNREGnH+eH25wcyLvGAW32+/Ucx9MjWdEIO6dEq?= =?us-ascii?Q?Z03ptM4jsNj+4ICWGg/4CIjoS0Aj24WJ54rMIPfHOdPiBmxJnb426WjapC07?= =?us-ascii?Q?oB2vdJU19xhY0Mw7lYN2Rs3gCjRF9Il+X9FrkwLV0C5chE0JbArvuSlidba9?= =?us-ascii?Q?9UaAmzKCv5YvJ2W9lv8FBEtkSGTJl9hJv6g/JiiyVeZduTtb7z0hhiZbpVYB?= =?us-ascii?B?dz09?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR07MB2346; 6:MVBIguhYLQS3CRFP5PEF0tZAOnU5NGY5fmd5R5QLA2ksbImIV4n7KpG7W9HVNbh0LIVVIofaWNGlEeayvxAJVCWXh7AwUo5hSDtVc9k3RK8raoshwJkkULQWiuN9m8i25YV7gRIyFDkKl1h84AyOGyYKZ9QD7MxzsH8zYyftUL5l3LKDKods0ZM4xN2zNsg9bw6wNPW0hUBp72X4+ajVGm0gOpugw+d/C05NRdq1Oc0/sXN4/iLbXt/4P8VCMPZmCGvRGRgryaeDMYiBlH9ztR8zM+s62IKzqsUMj3bd4f/16MJ30XPLCpZVSp39Dpq7xhol/AQ4FOHdUucG+7rkzg==; 5:AXQT56+hVBn7orC/FZTNJNYcE4TKUXsmk6S1iNsZxPB6KKJH4NxUCqeaNTK78B0TRA4u6ihqkR+PJr05J62HM+EbXsB8h/5HO3vTmmmzp3j8xKGIL9VomKp/Gb02p1EgRtWzqN+/9jkCZNOFDFdpqw==; 24:Tpp0czz/pkS+MXRotVzvZw+jhNlL5/6JPI2SY6K/qEGPFj+q5oo2wNDDo30ZMh6pWVeR0+SGmbCIiRh+gO3omnar4ofkzDW9AocW14aiw5Y=; 7:aTeGdgHMaCtY0edhr1rW/uKdzQtRKwB9IgGiG+0WhUt7Z1cRopWxh+UkBr7o3tIQj+a9t8bYpzrHIte0mdqC16X2zZlzS0OO8cn0Wp26cVwiIpC1syTGQ6vgbwDGHadNuLY5p8FDUrKKsi+g/auep5Brue+tLTm5s4+JDB73UqfJYTz6D5EDQa1ktdlzxm3jf3JK618oP88qcEi2w7KHYr6h8QBjrWgmjlueAddCgiM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: cavium.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 08 Aug 2017 12:23:36.7645 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR07MB2346 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20170808_052408_541975_52EA8220 X-CRM114-Status: UNSURE ( 9.99 ) X-CRM114-Notice: Please train this message. X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Robert Richter , linux-arm-kernel@lists.infradead.org, Shanker Donthineni , linux-kernel@vger.kernel.org Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Virus-Scanned: ClamAV using ClamSMTP Use an initcall to initialize its. This allows us to use the device framework during initialization that is up at this point. We use subsys_initcall() here since we need the arch to be initialized first. It is before pci and platform device probe where devices are bound to msi interrupts. Signed-off-by: Robert Richter --- drivers/irqchip/irq-gic-v3-its.c | 3 ++- drivers/irqchip/irq-gic-v3.c | 5 ----- include/linux/irqchip/arm-gic-v3.h | 1 - 3 files changed, 2 insertions(+), 7 deletions(-) diff --git a/drivers/irqchip/irq-gic-v3-its.c b/drivers/irqchip/irq-gic-v3-its.c index 5e2d4f2876d8..488f811d5978 100644 --- a/drivers/irqchip/irq-gic-v3-its.c +++ b/drivers/irqchip/irq-gic-v3-its.c @@ -1994,7 +1994,7 @@ int __init its_probe(struct fwnode_handle *handle, struct rdists *rdists, return 0; } -int __init its_init(void) +static int __init its_init(void) { struct its_node *its, *tmp; int err = 0, err2; @@ -2036,3 +2036,4 @@ int __init its_init(void) return 0; } +subsys_initcall(its_init); diff --git a/drivers/irqchip/irq-gic-v3.c b/drivers/irqchip/irq-gic-v3.c index 1476ce12b3b8..32bdfd656ea7 100644 --- a/drivers/irqchip/irq-gic-v3.c +++ b/drivers/irqchip/irq-gic-v3.c @@ -1167,9 +1167,6 @@ static int __init gic_of_init(struct device_node *node, struct device_node *pare gic_populate_ppi_partitions(node); gic_of_setup_kvm_info(node); - - its_init(); - return 0; out_unmap_rdist: @@ -1459,8 +1456,6 @@ gic_acpi_init(struct acpi_subtable_header *header, const unsigned long end) acpi_set_irq_model(ACPI_IRQ_MODEL_GIC, domain_handle); gic_acpi_setup_kvm_info(); - its_init(); - return 0; out_fwhandle_free: diff --git a/include/linux/irqchip/arm-gic-v3.h b/include/linux/irqchip/arm-gic-v3.h index 15cbedbd82f1..3c375c593800 100644 --- a/include/linux/irqchip/arm-gic-v3.h +++ b/include/linux/irqchip/arm-gic-v3.h @@ -493,7 +493,6 @@ struct irq_domain; struct fwnode_handle; int its_probe(struct fwnode_handle *handle, struct rdists *rdists, struct irq_domain *domain); -int its_init(void); static inline bool gic_enable_sre(void) {