From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755788AbbJUSso (ORCPT ); Wed, 21 Oct 2015 14:48:44 -0400 Received: from mail-bn1bon0098.outbound.protection.outlook.com ([157.56.111.98]:2896 "EHLO na01-bn1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750827AbbJUSry (ORCPT ); Wed, 21 Oct 2015 14:47:54 -0400 Authentication-Results: spf=none (sender IP is 165.204.84.221) smtp.mailfrom=amd.com; apm.com; dkim=none (message not signed) header.d=none;apm.com; dmarc=permerror action=none header.from=amd.com; X-WSS-ID: 0NWL2VO-07-KH0-02 X-M-MSG: From: Suravee Suthikulpanit To: , , , CC: Lorenzo Pieralisi , Will Deacon , Catalin Marinas , , , , , , , , Suravee Suthikulpanit Subject: [PATCH V3 3/6] irqdomain: introduce is_fwnode_irqchip helper Date: Wed, 21 Oct 2015 11:47:26 -0700 Message-ID: <1445453249-32557-4-git-send-email-Suravee.Suthikulpanit@amd.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1445453249-32557-1-git-send-email-Suravee.Suthikulpanit@amd.com> References: <1445453249-32557-1-git-send-email-Suravee.Suthikulpanit@amd.com> MIME-Version: 1.0 Content-Type: text/plain X-EOPAttributedMessage: 0 X-Forefront-Antispam-Report: CIP:165.204.84.221;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10009020)(6009001)(2980300002)(428002)(189002)(199003)(48376002)(2950100001)(92566002)(50226001)(101416001)(229853001)(47776003)(105586002)(106466001)(50986999)(575784001)(77096005)(46102003)(36756003)(5008740100001)(5001770100001)(5001920100001)(97736004)(86362001)(76176999)(189998001)(53416004)(5003940100001)(19580405001)(50466002)(64706001)(5003600100002)(5007970100001)(87936001)(19580395003)(2201001);DIR:OUT;SFP:1101;SCL:1;SRVR:SN1PR12MB0720;H:atltwp01.amd.com;FPR:;SPF:None;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0720;2:TcufPYV6EVftHwBn8GxevE2uLovA3P7gmobSQvJakFLvSsHyMN+C7Iru4TRS2gsahna+0PwIoF7CUYRE+nfWM7munmTzJITLiUGQRYDpuvQ3/WaQDfcZRywkuaCBX8TNobmzltlaazNXebxC26hYZjzoOwAtVlJpfzejpyzu4OY=;3:WDDb/POLSuO64MfjfA5vt+EpEgyL9YiDKamI0TbWVysg+qVztYqQlUgGELntejOdnOGtZZNtVOsThnny3C0VdF0SF38AVyu9CU4UR3xBtALji1z3fofuI1oAWdFGdy3QUfhT53/4nVelunazG4P77cp6VaQ3fWJUnO8W+Kz46fjcY1IaA6cj9HdChUEDU1eyaIOcGjrz6HKAiIFptXyQ+gtX+pGkL6ebPVX1zM//YC/FiCqiuBeVSkE4u9A9yC3/;25:CiFkiFapgA3AGt8QlSXGnN62M/ezPvz9KxZ4q0V14ay8ZPEuPGxlviOEpzxeegfR1g36wP6qszdO+qaBJ3h9legD1JynLZ3xREJDKJS7BLkByjSqZInloVMaBym9R7ZkuiWyQAhhYf58mNwIGdhf/kfixY7O/ns5FTlLSNiqjd7Fzd30wv4ym27xLQ19CNUnXdBIvd5l9MWZhJiS/6JSuNY2XiRweva4gxYmfgvWC7l8ZJy+rNB8I9jCTOL0rFWw5neTOcea+Q/n3JxkvAV4Pg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0720; X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0720;20:f+D3HJUXiX2gp2pBMm7gm+wFxN9fwgV/fQqhQZAhxXcmXihFVuo0VVKg6Wc9vRFradyMMet/mmIyJPGgIFIbW6SKqqfBwA9Cyppp5yh1ZVR8tZyDW5zqstoaP0ZbOdLQHcd4aY7PFp1wGpsc0cZfY9n3rCpVF4GXafysiWTzSCWsWIWhc3hJ3fEf+AKneMb0vW59USpKUMc6L337VWA3a+wmpXjcReO56seO/sPfyuxtpwgxMDo7hP5Y02bhMhloLnNc9QJBT9YfoNqQfUBx+OrubICOeUUbpksbKsvNFg3jgyvfQ51XIevt0dsgfD/74Rs96EwwOeEQoEmq78YKWza4qq5/BaeqF8JN+BnEwjiQWv9jLZATjMJjwK19+r5Rp/qouv36PNuK+6iZ+Lk7C6L6nf3P86jE/RlKCpTguuf01mR0y3Jq24QoxrS3ZAp26M9MACknNkZjpTG0jE+wh0YbjQcP4TxoU2q6mDDh+M1WXJ2emofOPLy2rn9OajzE;4:2k6jBkAY7uco8ovnwM5W2erHIr1WXmIr5kTyEnndsqAFO/8qCkYZIe8umwI1F00txAuTuTMmFKJq4uBd+mVaCFaN4EWqP9E5o/0+ABeFJQ18bvpRd4/XDiDpAaYiqmbRbkurHxzeeYW2195yRXkXdDuuU7fuZiiph/GEXMA6nfGoon7TWto8nEqWe9JsG0mVCX+FXXX0jvTkyNGaBErY7PeayAzQSbdQX75wwGDZUWnVvA9IoBda44+u9Pnm52L30biO9Ewh/JRnJmyQ/uy5itUMu8cu6cNhne9sYl6U2Q10fFyOKa/TP2Kf6HWt6vvmtHwvHRKU9nuQ2ViyhwkrqSbqG7QK+fi1gFQFCMuBTaGXp7ZqMxH1agZJYiN+zZLn X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(767451399110); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(2401047)(8121501046)(520078)(5005006)(3002001)(102115026);SRVR:SN1PR12MB0720;BCL:0;PCL:0;RULEID:;SRVR:SN1PR12MB0720; X-Forefront-PRVS: 073631BD3D X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;SN1PR12MB0720;23:9QiaoYRS2kCwCaNPI0EwMB0WYE4UyrQsOw7xsq4GR?= =?us-ascii?Q?9ea9ofVNTPEjzujfNKV7kdlOxQW5RKPwUAbN5PX6ujkZhhdEX5hGzl8l6bWy?= =?us-ascii?Q?89skt8Grz/mw2ddsF3Tx773Ywn2ZrCxjkoUl5hvB0SEr6XrIGXmBBaj8yge2?= =?us-ascii?Q?9K2wOBnIqYyzxmzyZw9aObDQWFMSbt5jkJsxDPMHxvD4YiPvxPFi10eHa9xY?= =?us-ascii?Q?Za6SaCol73+8Ft9nAo/CGXiy8lGUG2zCLQFkU8AeYu9HfiIn/YrS2e+oWmn7?= =?us-ascii?Q?SVIJImCfLGr+LlXeXG+Ku1q/p+0Kl6fiIhDfbwfxxjPSJeVnRequ9BaQ9nI+?= =?us-ascii?Q?U2zQixSB4fLz1jt/wgdd+gOu8ttbQl56Cej2V17/AIHFX9pCf6btatjFDhIo?= =?us-ascii?Q?ty+UR4ZuZ+iPoQIlcRAq5dLPFUNfF3wlLtylsgLHiFgj2tvRU4ADZftDYDLf?= =?us-ascii?Q?b+ABnWX+Xr8wr4GRvqKjKJYWV3mDWvJpJLW/Xz78vOZ9N52nlM8leorZWdzV?= =?us-ascii?Q?BBVBDCsmkahhvWpFQG55oiFXgV1IoODU5s1JuTp/2yMTx9mD2/viZ4tReSbs?= =?us-ascii?Q?Rd36qsLjLL2CbxY98Jc2bsrIwnBziBdx3+3c/V/0sh3kCB4hAoS/sT+N56uo?= =?us-ascii?Q?3uzjH1zyga7uPUWlp67P0doRQIWXFT8bo0JAxPjp+bMp/pYjdSJwsalXOJE1?= =?us-ascii?Q?tDX8NlczOqMGwQ2CEn+SuiUYdrMmJtMxvoOJXf1Oxc2RbSBuzOYcTmDlSb58?= =?us-ascii?Q?MdJVg+cS16MnT/kBxwotxn83+vb4xUIb8C6zBWsmSsevJ77Oty6Iq6ym5i0+?= =?us-ascii?Q?rfQ+BBA+PBtyxnyZkkd/R4M5eJ+UlrDRkyvdPp4QHQ+bi7KI5jCL7mmegGhc?= =?us-ascii?Q?Cr/l5m+iBH6lVpMwiItwVk0EUITJFbiahYfjUCa914X5WijIDbtVl4kv9cvS?= =?us-ascii?Q?W8AEFYFkZTVchpmg5UiUQeR6Yt3vdQbOVH5SU2TMtSm6f3Y8MtavFMvyoqlS?= =?us-ascii?Q?oTIbPwqJc58QLsG0QslmaQz?= X-Microsoft-Exchange-Diagnostics: 1;SN1PR12MB0720;5:lP0IZ5Wzzmx/BEm4qWCyUS2apUW1HWHiqkqX4L/DtHNoBs/vdPwedemyymjrAD3VP3msvVN/Mmv9pYgrrXbisABEEMJS48A1pyOYD9OymX293oSRZvbU65DFeBNRCZT0UYJzh/qt5hllWkjnGCO4NA==;24:RZxswEq2kM3WW+yPssAg5LTsXPLu9dC+rV4hrDpQfVFeo+6yKTGQ+tnG1TIH/zeouxDcPQKIuz94VeFi667v/NzEAYi53bhSNJ6DQsqi4+A=;20:9NaCnLtamBz5/b9oNR68JR1ns1juI8BgsGAHeXNTcGZGtolkJySbP4emiSxNUyG9EDAmm9ZOtfGDzleTN1LYwT3i4sErykRwMz3ce1dQYVxgIvys1ansAnRlNlE8LQKLqF8dxuVlueZLoes8Z/3CyHpNuAVKsHSK774qPZTssWSQWABJEURWC9WAcxftkmA2lmgSyj9GVL0QA1Jqoibt187zVj1YTsyIqH98r3Oe9pb/n3esKboTY3g9CRTqcjs3 SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: amd.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 21 Oct 2015 18:47:49.7730 (UTC) X-MS-Exchange-CrossTenant-Id: 3dd8961f-e488-4e60-8e11-a82d994e183d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=3dd8961f-e488-4e60-8e11-a82d994e183d;Ip=[165.204.84.221];Helo=[atltwp01.amd.com] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: SN1PR12MB0720 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Since there will be several places checking if fwnode.type is equal FWNODE_IRQCHIP, this patch adds a convenient function for this purpose. Signed-off-by: Suravee Suthikulpanit --- drivers/irqchip/irq-gic.c | 2 +- include/linux/irqdomain.h | 5 +++++ kernel/irq/irqdomain.c | 2 +- 3 files changed, 7 insertions(+), 2 deletions(-) diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index 1d0e768..6685b33 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -939,7 +939,7 @@ static int gic_irq_domain_translate(struct irq_domain *d, return 0; } - if (fwspec->fwnode->type == FWNODE_IRQCHIP) { + if (is_fwnode_irqchip(fwspec->fwnode)) { if(fwspec->param_count != 2) return -EINVAL; diff --git a/include/linux/irqdomain.h b/include/linux/irqdomain.h index d5e5c5b..4950a71 100644 --- a/include/linux/irqdomain.h +++ b/include/linux/irqdomain.h @@ -211,6 +211,11 @@ static inline struct fwnode_handle *of_node_to_fwnode(struct device_node *node) return node ? &node->fwnode : NULL; } +static inline bool is_fwnode_irqchip(struct fwnode_handle *fwnode) +{ + return fwnode && fwnode->type == FWNODE_IRQCHIP; +} + static inline struct irq_domain *irq_find_matching_host(struct device_node *node, enum irq_domain_bus_token bus_token) { diff --git a/kernel/irq/irqdomain.c b/kernel/irq/irqdomain.c index 22aa961..7f34d98 100644 --- a/kernel/irq/irqdomain.c +++ b/kernel/irq/irqdomain.c @@ -70,7 +70,7 @@ void irq_domain_free_fwnode(struct fwnode_handle *fwnode) { struct irqchip_fwid *fwid; - if (WARN_ON(fwnode->type != FWNODE_IRQCHIP)) + if (WARN_ON(!is_fwnode_irqchip(fwnode))) return; fwid = container_of(fwnode, struct irqchip_fwid, fwnode); -- 2.1.0