From patchwork Tue Jul 5 01:46:59 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Qiang Zhao X-Patchwork-Id: 644454 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [103.22.144.68]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3rk9xY3yl3z9sXy for ; Tue, 5 Jul 2016 14:33:37 +1000 (AEST) Received: from ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3rk9xY3CRrzDr1d for ; Tue, 5 Jul 2016 14:33:37 +1000 (AEST) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org X-Greylist: delayed 8388 seconds by postgrey-1.35 at bilbo; Tue, 05 Jul 2016 14:32:34 AEST Received: from NAM01-SN1-obe.outbound.protection.outlook.com (mail-sn1nam01on0084.outbound.protection.outlook.com [104.47.32.84]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3rk9wL3kd8zDqqS for ; Tue, 5 Jul 2016 14:32:34 +1000 (AEST) Received: from DM2PR03CA0041.namprd03.prod.outlook.com (10.141.96.40) by BN1PR03MB251.namprd03.prod.outlook.com (10.255.200.18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.528.16; Tue, 5 Jul 2016 01:57:49 +0000 Received: from BY2FFO11FD039.protection.gbl (2a01:111:f400:7c0c::176) by DM2PR03CA0041.outlook.office365.com (2a01:111:e400:2428::40) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.528.16 via Frontend Transport; Tue, 5 Jul 2016 01:57:49 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; nxp.com; dmarc=fail action=none header.from=nxp.com; nxp.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BY2FFO11FD039.mail.protection.outlook.com (10.1.14.224) with Microsoft SMTP Server (TLS) id 15.1.534.7 via Frontend Transport; Tue, 5 Jul 2016 01:57:48 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id u651vc6o015381; Mon, 4 Jul 2016 18:57:45 -0700 From: Zhao Qiang To: , , , Subject: [PATCH 2/2] qe/ic: refactor qe_ic to simplify Date: Tue, 5 Jul 2016 09:46:59 +0800 Message-ID: <1467683219-29326-2-git-send-email-qiang.zhao@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1467683219-29326-1-git-send-email-qiang.zhao@nxp.com> References: <1467683219-29326-1-git-send-email-qiang.zhao@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131121574683714921; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(2980300002)(1110001)(1109001)(339900001)(199003)(189002)(50466002)(68736007)(48376002)(2906002)(356003)(8676002)(50986999)(76176999)(189998001)(87936001)(86362001)(81156014)(2201001)(5003940100001)(81166006)(106466001)(33646002)(229853001)(77096005)(105606002)(69596002)(19580405001)(19580395003)(85426001)(11100500001)(97736004)(92566002)(5001770100001)(4326007)(36756003)(2950100001)(586003)(47776003)(50226002)(104016004)(7846002)(305945005)(8666005)(6806005)(8936002)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:BN1PR03MB251; H:az84smr01.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD039; 1:8i2tFZh1PukQHPxKWeRjyCUrW+bXpRbmI7r4jQG7X71/2ASQLVB2S0G4zGE89L7dsS5tdOkzqdF+CbgLjVmC28zCTMLMCyDvXxnxKfxhaBOTgJORzlM5mdopD3czviwfzUDpUgwDIIque2jX5RMWvNB401OHpvauExnLeznpbumvriwJfcfSeOetrtV355dsXgLsToWMgEoxWxjdPxSliYJ+Ve2efDLhGq+kQgeuXn1nR21+C3t3wN9V/wqHjqaXen6M0eWEaF6/sh8yAkGMdZGO+GLy7mopLlH0U1sIfKWlEF//zc/ydvDen0nQUWs0drwkjo3IUmTKeegoL0AHMsJYiKboWHKCHRVbMk4FmXZHW7kDTZ5vMzoTqrN2YvVi95oW/hNdceb0N9gFAiI582U9FCWGPs6BoY5LK/sDOVDDNtAG4JCL5ixH7y/XWyOHOFoRbxfwTjcIXt5Rp0wMJPSslsOHeYsXM/JPLShe1l982kat4zDtkrIoyeMMJ4xqdkE62hzO31Rkg1i+I8v9XX2OY3LCRxBj1yUg6Zk92QXBkTOFSsTiV8CaMMe1mxIwo62zudGJbZ4GuuHqykssM3w5XQ7DGvGmM+euwTnzqX8LDYVN5mSIW3uEjKoP/LWUTUgH8T5BtMMvj7iekmHF5XTcVfmQnxGakWvHa92G9abO7MR/B6Igx+GnSip/4dNZTu64xoHM0RbPAVOaUqhpZ7njM44O08VSe7KNmNmjosMrmi7LxMytyxTAO7oGFeiN MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: cbec8ae2-d43c-4674-a569-08d3a477c3e0 X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB251; 2:yj+G1TI7h9kNmn0ULvJHjdHGJAWNUlIijJkuCCBznMG5PYxlFArB3iFuUC8KJajEHSuvo1+vFOaoC28D7NLJzfauEkNJ1p7R7RH+3NKluPKRKcHWKjIQWruUYabLu1Qc94j/t+b4rY/OE5xcxOtuxH22uYqElX+3ZnFm5UjNLzCKjicjE4D/eBm2B6ViZIbE; 3:+njIolFH/M2XXpBR1Vs5Gl6yASOPCn4XgD0c2Y+7HAfbqqo1rgYdV1xyoa073y2NYevEt2vQsJSwCdqymRnzMX38eV15Buk6COaW+K1TmQF9EXzoSyyAKLLCPCIE7W3y3Nv5Ll+7yaRpjAz4LpIG6V2NrCdLRqVFdyXAT61fwCVIANmZuB8CRPaWI+21dypdCbzreyMPiouWqO9vFiX0G8Qt2kOTIKnLvKxcpEOt2v0= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN1PR03MB251; X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB251; 25:5oqDUBJ1SaE2YRw6HGNyJIGljyHjj26ZeCwuexyw5C6PZUb9hw73I/bbYEgpSu1BHylSeO1CqiGcD/j9wniOwGz5cBSr9iENXM+R/eSic49y4BH9S9esFKSazIsV2o2F+CnoBQKHiwMUKZlo6/Sr+2OUmpvrroQZJxVYgUOvSYeF4s3nru3LVjVywVx4ZKxnDms/yekvDWSyO9DVQHNtP1A9pS7jc5YKWH1oibiMV2tq9tRUGxkYtF3xGiyVxwZlBe4bvHR2SN5LvMkBZkk+V1bVfdyBRnoN8s4+Mu5Hx3MDNMIUyOYmfrVtQbzPUm3hKSaVpUxIp8wuaZymQokb2GygOD7/hOs32RgUCBKPTDW52yXqCiHs86jO3aDWRFxkvwvsR8x5PMe4OCZsCspo+hwjIC1WJx3ExHyj+idgmrRV3qns5I3FWbqCnXtWHGvaNJNnmX9Y8Zk1x6WdQbbHjiYSDhO/FUbjZsGBkBrrZ1zFzHMDjtNdqP+sW2bRjnFdYshkUJpIriZ58aCX29I7sWZxq3G+Ai4CoR32BGtvWexhiaeoDVTydA5F8n93Y9al4ImJwkWEnYthld6KAzgc7OvGW+W9jXFwxQF0LrHgg4TP0iYohPPToN4G7B92WtKAUlzfPIByxIQbADiD2OXZBOjpFgXvXI52TFNmEHUjhSlV46kj4TmmscQc+//HITWnICF7d2OoYuRo7hKFszKVJQ==; 31:90YyZar4F24zNJssORpwzFW/1pR3Xm9eQ5yqNhh/UUSvNfspx3BX1cLq1SbEWzYXyPByEVK3OOq9zBTmR7gzLObOXRBwCOqZT14O7Bv7VIwERk9PffBynVytU8DDfbi8VUTi62OxFHibrkQRiA1tpp2SkxJZe1bENcAazEoJRHO0V3S2CP86DUSBvvqnDQpoLV8l2Um469TYuzKgtKewpw== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(13023025)(13024025)(13018025)(13015025)(13017025)(5005006)(8121501046)(10201501046)(3002001)(6055026); SRVR:BN1PR03MB251; BCL:0; PCL:0; RULEID:(400006); SRVR:BN1PR03MB251; X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB251; 4:rd27XxtqERaryJ6iA95CYNT3F3n3DMxzrV776SHi3csGNx65lmcxCeE3tUHkJkD4PJJ13A2B6eddfJ8sw0PKS6Da+Y4GjJH2+rWpfUW1Gkq11lCPqCO3SP4IIFgQBf/36QshI1bNVDwfDEeKaa7plie0hF5HkgboAieDRfvGgvWSIoD8FPeVytfHNe0aTZg+8SDRy7njgvGWDgB4YI5yjPjpxo5DjDXAUhNKA+fat9lnEYRXdWGT5YukZCvrtaBFbX19bBiX2mrykerhSwFfH08WXyENh68sMznCYsZJgRcw4aEniQdYlOv7nf4AyvdOL6iyU279RO+AoE1ug1TUWMJNQz2X3h7BvaTbjEsBbYrnlC33mXvea/t0aZWZXkMyJ7DxiGVWaZQ45dHFal9ivke6V7jA89PQF4TfniqKLQTM95zsawvS5f5fsE0x2Y2f7pp/b3s7iijs0as8SlDP7BmRS722FPttiWJNl03Nq2uqm5RSr64Rjv94PTlDPMtrxDBTYVRzeHCR+b4EX9CO7g== X-Forefront-PRVS: 0994F5E0C5 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN1PR03MB251; 23:MqxcZX168ReF77aJ1LS7TtP94LmCoxGod2C/CVHiNS?= =?us-ascii?Q?AB++VUhH7XR6AvNgEdqiffyRHGemkl0zYeDkynToDiuZqLKVHOLeCi9edzke?= =?us-ascii?Q?cYBMq3TPq45+wO9l0ENetQjrHuKs8RnfIbG7ohdT/+iPrTitBpGTdgQFV9s7?= =?us-ascii?Q?coH1kl109pYtt5YWduUbDLr71cArl9KS2ToDNU5LNlXUiIKZ60b6zrz+zHW5?= =?us-ascii?Q?MJSjtG0Tw6SkWSWdBRgkg24gnj6coQRWcviV0jx/xTdZx/ByzMs3bB/nMRV7?= =?us-ascii?Q?JLMselXVRvnRExkbB9yiP+Lf67dAySIOCqsxaPdHxRQ6k3SyTwhSQuQ5BSqI?= =?us-ascii?Q?mGTF3VzyK1dwiVSu0AOP510lWqOwM0QgLdgCyS3as+sGIW2m/JTw7JRck61P?= =?us-ascii?Q?BBKWa3C7nzNMR3L3MmuLp0R4m9ACUIxjodC39UBRVBugfdLVGrLq00oday2N?= =?us-ascii?Q?0YSOgx3Yjyp9BQ5yDJ8oQ2Km6UzBK8mC0FCnQwiCtL0kg4C1ZWqW1VR4txtZ?= =?us-ascii?Q?rFvyq/rWs6fMNCjw54nIV5CpOCabE3SvmeuRFVUJFAXVsiLQxpml/chsMiBn?= =?us-ascii?Q?vjABP3Fas9749QW+K0xbBps2wjZLNZo8Xnj1zyWbFGHjf3k8iunTLat4m0j1?= =?us-ascii?Q?6nfq8lqVixaNdVLVPqAAGIs9h4gH3Ssr0kxlMV1mKqO4Kw1mcV02bANyTXI6?= =?us-ascii?Q?f3KkLpuLk0gi/amJPOP3zvA3yEh0cSmy6KeOBitxxWwpTmPFfnXm10Rkay1F?= =?us-ascii?Q?6l+1OOJdj/a1JGPlVmoQj5CcbQbUZwFQPlLO/K6pA1aywQJlPNn3ur2P5lYC?= =?us-ascii?Q?WyxRmIxv4tlo1TTQyP8LRvFDKvvlG6xzW3saxQPf1NrfFeJ10sAyyJjsjNSH?= =?us-ascii?Q?dd+KiLoCEh5vbqI2jb01Ab9YabluK7wuXX0HQbjp++r8ckbmAzHmaw8WSNHq?= =?us-ascii?Q?8Pxbz9to0cJC+EcxvCkDpSrbH9HbPcyNYGsZEK0XQH0EgmgMQKnK5f0yHeBB?= =?us-ascii?Q?f+aerBJlC7RHX/WKBtOxjiqaEIyTBJKE4sO235vedUCJXw0jC7ADRukZdvy9?= =?us-ascii?Q?EXJTVC86g/OvfUpcfyBZB2qtwcqJP7NeNNIzhb/FtJPmrME43xbFh6J/lI3/?= =?us-ascii?Q?mqSMR1rj0swyp2/iFrL61Ksw01r0TDVyjiPQzP/YTSExvrsDTd99tRyUm1bK?= =?us-ascii?Q?ASEQP9XHlvYLM=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN1PR03MB251; 6:h2GZKgDtF6yUZvuk34tPBv9AfQJ/kB8ZXBpAK6QMqNIlHZz0G/l6ydaDEBszlrVDcShplhRFV69UbVkvfl92ga6b7FrQWOC9zQjKi4MKzo+1bScdecdmmUVfRID3gEP9juRaFLm6gqCc5/7C+yrxfAPmdUX0RwFY/UdzqpvvzxRUQgnGhfubqEFG8YST61sIShFMN367m0rh2LpISchnU4OoaetnFP3mda35UTuuhIsXmLdlgZa0o+4Ih5nb5PxjVonWvdzuG2Yzjvmi/fyaWSoNMr9d4yL9lWKq+kWsdXQ=; 5:yvNcJyGbOm3nRWBBGFtwkA3eq85HVvWRZ4bJFKhbHkU71Luoy3nafxyUygsI0tpfpROCfCLPp9mJ/ek7kVAHFsmvPFy8T9rh98E3gk/+oAzKJrcdxo4E9hD3eAlfR/aGA3nfQWFdzO00dySXWaZh7/fjAIRa7K5vjwbHgcm5k14=; 24:CXcS89dAckitg1nL+5BdnLoXGCkxMRVb5U/TeevBzw2xF1FlTvjDpvq4Ktdy/rgFhOF1DLfIxkuQApv34RpM6l0cGuDccnpgPT6ROb2jD+c=; 7:/OK5x3WhRZE59SPtEaWp7KNPFaqg70lfL7LKWlSllpBd+jo1jp0AvFJKp9PWRcrmZjv9rp8pWqfA+NMOKxVgmFAhMgklKeWCdlsgPCG2RTn+VWeV11w9qYrw+iuhj+nHZmZp3gBd7aqyk6/1g81VQrkRp2jeOZuPD10KfSpjnzrX8MtJ2ytIuqjsHgLZ8o2Z0qykjNF9BKq3c/YbdPKXBxXlfdk3gzm4ULUFiiz57tHzwvULjHoYWKlS9WHlixt5 SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Jul 2016 01:57:48.2622 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN1PR03MB251 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Zhao Qiang , linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, xiaobo.xie@nxp.com Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" there are init_qe_ic_sysfs and qeic_of_init, refactor them. Signed-off-by: Zhao Qiang --- drivers/irqchip/qe_ic.c | 83 +++++++++++++++++++++++++--------------------- include/soc/fsl/qe/qe_ic.h | 7 ---- 2 files changed, 45 insertions(+), 45 deletions(-) diff --git a/drivers/irqchip/qe_ic.c b/drivers/irqchip/qe_ic.c index f7f9a81..46652c0 100644 --- a/drivers/irqchip/qe_ic.c +++ b/drivers/irqchip/qe_ic.c @@ -317,27 +317,35 @@ unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic) return irq_linear_revmap(qe_ic->irqhost, irq); } -void __init qe_ic_init(struct device_node *node, unsigned int flags, - void (*low_handler)(struct irq_desc *desc), - void (*high_handler)(struct irq_desc *desc)) +static int __init qe_ic_init(unsigned int flags) { + struct device_node *node; struct qe_ic *qe_ic; struct resource res; - u32 temp = 0, ret, high_active = 0; + u32 temp = 0, high_active = 0; + int ret = 0; + + node = of_find_compatible_node(NULL, NULL, "fsl,qe-ic"); + if (!node) + return -ENODEV; ret = of_address_to_resource(node, 0, &res); - if (ret) - return; + if (ret) { + ret = -ENODEV; + goto err_put_node; + } qe_ic = kzalloc(sizeof(*qe_ic), GFP_KERNEL); - if (qe_ic == NULL) - return; + if (qe_ic == NULL) { + ret = -ENOMEM; + goto err_put_node; + } qe_ic->irqhost = irq_domain_add_linear(node, NR_QE_IC_INTS, &qe_ic_host_ops, qe_ic); if (qe_ic->irqhost == NULL) { - kfree(qe_ic); - return; + ret = -ENOMEM; + goto err_free_qe_ic; } qe_ic->regs = ioremap(res.start, resource_size(&res)); @@ -348,9 +356,9 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags, qe_ic->virq_low = irq_of_parse_and_map(node, 1); if (qe_ic->virq_low == NO_IRQ) { - printk(KERN_ERR "Failed to map QE_IC low IRQ\n"); - kfree(qe_ic); - return; + pr_err("Failed to map QE_IC low IRQ\n"); + ret = -ENOMEM; + goto err_domain_remove; } /* default priority scheme is grouped. If spread mode is */ @@ -377,13 +385,23 @@ void __init qe_ic_init(struct device_node *node, unsigned int flags, qe_ic_write(qe_ic->regs, QEIC_CICR, temp); irq_set_handler_data(qe_ic->virq_low, qe_ic); - irq_set_chained_handler(qe_ic->virq_low, low_handler); + irq_set_chained_handler(qe_ic->virq_low, qe_ic_cascade_low_mpic); if (qe_ic->virq_high != NO_IRQ && qe_ic->virq_high != qe_ic->virq_low) { irq_set_handler_data(qe_ic->virq_high, qe_ic); - irq_set_chained_handler(qe_ic->virq_high, high_handler); + irq_set_chained_handler(qe_ic->virq_high, + qe_ic_cascade_high_mpic); } + return ret; + +err_domain_remove: + irq_domain_remove(qe_ic->irqhost); +err_free_qe_ic: + kfree(qe_ic); +err_put_node: + of_node_put(node); + return ret; } void qe_ic_set_highest_priority(unsigned int virq, int high) @@ -490,37 +508,26 @@ static struct device device_qe_ic = { .bus = &qe_ic_subsys, }; -static int __init init_qe_ic_sysfs(void) +static int __init init_qe_ic(void) { - int rc; + int ret; - printk(KERN_DEBUG "Registering qe_ic with sysfs...\n"); + ret = qe_ic_init(0); + if (ret) + return ret; - rc = subsys_system_register(&qe_ic_subsys, NULL); - if (rc) { - printk(KERN_ERR "Failed registering qe_ic sys class\n"); + ret = subsys_system_register(&qe_ic_subsys, NULL); + if (ret) { + pr_err("Failed registering qe_ic sys class\n"); return -ENODEV; } - rc = device_register(&device_qe_ic); - if (rc) { - printk(KERN_ERR "Failed registering qe_ic sys device\n"); + ret = device_register(&device_qe_ic); + if (ret) { + pr_err("Failed registering qe_ic sys device\n"); return -ENODEV; } - return 0; -} -static int __init qeic_of_init(void) -{ - struct device_node *np; - - np = of_find_compatible_node(NULL, NULL, "fsl,qe-ic"); - if (np) { - qe_ic_init(np, 0, qe_ic_cascade_low_mpic, - qe_ic_cascade_high_mpic); - of_node_put(np); - } return 0; } -subsys_initcall(qeic_of_init); -subsys_initcall(init_qe_ic_sysfs); +subsys_initcall(init_qe_ic); diff --git a/include/soc/fsl/qe/qe_ic.h b/include/soc/fsl/qe/qe_ic.h index 1e155ca..6113699 100644 --- a/include/soc/fsl/qe/qe_ic.h +++ b/include/soc/fsl/qe/qe_ic.h @@ -58,16 +58,9 @@ enum qe_ic_grp_id { }; #ifdef CONFIG_QUICC_ENGINE -void qe_ic_init(struct device_node *node, unsigned int flags, - void (*low_handler)(struct irq_desc *desc), - void (*high_handler)(struct irq_desc *desc)); unsigned int qe_ic_get_low_irq(struct qe_ic *qe_ic); unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic); #else -static inline void qe_ic_init(struct device_node *node, unsigned int flags, - void (*low_handler)(struct irq_desc *desc), - void (*high_handler)(struct irq_desc *desc)) -{} static inline unsigned int qe_ic_get_low_irq(struct qe_ic *qe_ic) { return 0; } static inline unsigned int qe_ic_get_high_irq(struct qe_ic *qe_ic)