From patchwork Mon Dec 26 08:32:44 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Qiang Zhao X-Patchwork-Id: 708761 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher ADH-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3tnCLz5tj4z9svs for ; Mon, 26 Dec 2016 19:48:11 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3tnCLz5328zDqHZ for ; Mon, 26 Dec 2016 19:48:11 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from NAM01-BN3-obe.outbound.protection.outlook.com (mail-bn3nam01on0602.outbound.protection.outlook.com [IPv6:2a01:111:f400:fe41::602]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3tnCJL5qsQzDqD7 for ; Mon, 26 Dec 2016 19:45:54 +1100 (AEDT) Received: from BN6PR03CA0057.namprd03.prod.outlook.com (10.173.137.19) by DM5PR03MB2473.namprd03.prod.outlook.com (10.168.233.19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.803.11; Mon, 26 Dec 2016 08:45:48 +0000 Received: from BY2FFO11FD014.protection.gbl (2a01:111:f400:7c0c::164) by BN6PR03CA0057.outlook.office365.com (2603:10b6:404:4c::19) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.803.11 via Frontend Transport; Mon, 26 Dec 2016 08:45:48 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) 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.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD014.mail.protection.outlook.com (10.1.14.76) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.1.789.10 via Frontend Transport; Mon, 26 Dec 2016 08:45:47 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id uBQ8jWWZ023295; Mon, 26 Dec 2016 01:45:41 -0700 From: Zhao Qiang To: , Subject: [Patch V7 2/4] irqchip/qeic: merge qeic init code from platforms to a common function Date: Mon, 26 Dec 2016 16:32:44 +0800 Message-ID: <1482741166-33164-2-git-send-email-qiang.zhao@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1482741166-33164-1-git-send-email-qiang.zhao@nxp.com> References: <1482741166-33164-1-git-send-email-qiang.zhao@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131272155481777925; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.168.50; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(7916002)(336005)(39850400002)(39400400002)(39410400002)(39380400002)(39840400002)(39450400003)(39860400002)(2980300002)(1109001)(1110001)(339900001)(189002)(199003)(105606002)(38730400001)(106466001)(33646002)(36756003)(5003940100001)(48376002)(77096006)(76176999)(50986999)(8656002)(50466002)(47776003)(85426001)(626004)(68736007)(4326007)(189998001)(2906002)(92566002)(50226002)(8936002)(5660300001)(104016004)(81156014)(8676002)(81166006)(2950100002)(97736004)(5001770100001)(86362001)(356003)(305945005)(7059030); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR03MB2473; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; PTR:InfoDomainNonexistent; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD014; 1:X4VHF3BEE/GwC7x340or2HQlnu67ETwVwYh8/jf8QKWMOTr8nY7CMTdBTImolBGDE2dyjUoCAbGRUAJmGIFtEeQ/PLupMdq0GW9OXphaMp2F8HYfr1R63MohyKvhssFxJvqJYd1RLzNKSzKL+aSi8gMzyVnTgg0t3D5HKWo5kHXU+miHSJYaONbjlx6v98JRow73Aa7bNpWi10j5X6ytPkkNEKx283O37rJPYU9ct08j8Qz7xBymy3QDo7CcQ3bleY7J446/74Qr2XRe85FR2O6h8PyTZrQV4uY3mO4a1lK/rLGQPvj8xtPUqAZ748TFpP5KiiNNtIMGDsp1vbmN4LLkl/4YCSkVQKGc22KGTu+qYbjRfa/parWVrHYJNruNLGUwD/NhHOuOnrTZnEtdSrz1dSo0BOIvf8a+Fu11Rmh0fg6u0B/kl2eakL1Vfn1vUlNpQ6jnA590y/mPdDbQuZVZWJ5ggM17bk+h+bGiJj+pc6D2UVKP6FAH0aV+Jlsy5CW4f/2V9vLg6RX4PAWgmjX2C4tFXi7vSQVFjpnaR9gy2NvPEDu24MLNNiZOgeA2VelCrOrGfDbosBbUikyDzo0IqH5SrStBJsBky2aXjOFi9F0H1ZNuLiSeKy04MOyjVbC9oNSukmS6NXeZw2tvWxU+r4XIrCF37X90YFTvO/llbFGsgCrpIqktQexXuZqogh+5vcov+qY9g01hZHtQKgixTWeKvvy+bvqyrzr2e4djIcK9EFJElqbIXmR8EDe5 MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: cd2a86ef-d077-47fa-c5a3-08d42d6b96d8 X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(22001); SRVR:DM5PR03MB2473; X-Microsoft-Exchange-Diagnostics: 1; DM5PR03MB2473; 3:LKgKx+b/phJa0WgPJNipJ1v0fHhhg37kbVkZ2rG4BS7aFyUktQfna4YgO4TQ0tX5II/P2AT+OP/67agE8P/1+o4bMjvBJ76VBP4npKMARh9Kvdfu+AvzSP8Po+vYAn6u9kf3Gl/BaoJCRuYoBaV8j/16G0CzABNKvzRG9SiMYehKAwXxPuO83sX9NjHFKhE7dXAEYWFp2q0NFpE5VAExgS21lbSwXs2QccMayUp0atKFi84tsuzqJ+6+l5fNLLrqI2ba3iv30eAjuKm+4lhs4Pos1TBeb871eUpWYhkw4LxP+BfNb/F2AHrnRoYh+ZF32G/EYkDEniwAWOa610HNW1ETpfvtQ367XZuYDjsCRk8wqE5MpWS7nVyUbqVs6fAq; 25:85o3YUS+tHgcnAtzEsm6Bn6Oys1UHip8K/o6uOdoCWoI5mkME533RWqZ72SVY7TgjL77K/vKFM3kyDCO4n/fR9pPeW7tCFD8jBtV9h+rlLknz6/wxYtNoi85TAX1j3pgDwTjQ5SPAhpFWm/PJOHR+KtbUiKSv2XwcZSvtwLcIe/a1xU/ST1BY9z8IcRk8Pt4k5XryLIovh4TTRUIQ/1tVBVVoYXHFzHkl3pIaUjvt7ksRuT3KdjgdFDT0pt45jgt/6RFTt+PAcwR38bcKokECkfqdb3aZUTfnjqT/WXhKtGG9K1wgMYXlHBhjP+qhKgEba9YtP3fuTGQUFOUKM1gEc96rj+u3/bByD9iqQPZDzYQfAcDMUxE1v+X4ZGnsoooFGMsOF6RVnTSEcwGtOptOEFXv3sqIgV03EIgv8Y/kkxfSWzRttFop8RYMsLxBMIX9xFDgf3ZiGoHLFUCZWnZcg== X-Microsoft-Exchange-Diagnostics: 1; DM5PR03MB2473; 31:yLq/Qqou74wzoxYeySygI2rPjba2JZnKDPtChZ/Jk4qgz0OTxt63bfur6F9LBDYbFpCsfihJD0Q/b9ftfVaZjnc9zo+Lv945Y4kIg2+wfJ/cGiVvNiwCPqdCJjvBoWaW2B6822bFNp7Jtc8k/DEQps8bChQ+czREjzOO/z3TKGrHLnY7XXTEvKcS4NLsgbo17tT3JvFnBgw/fjO4sIQclGOVl1ITOP3YGz46BcO5j5dUBDWm3ybVeYf842U8u995HK+pOVjJzIG847Kwf29a3Q== X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6095060)(601004)(2401047)(13024025)(13023025)(13015025)(13017025)(13018025)(8121501046)(5005006)(3002001)(10201501046)(6055026)(6096035)(20161123561025)(20161123559025)(20161123556025)(20161123565025)(20161123563025); SRVR:DM5PR03MB2473; BCL:0; PCL:0; RULEID:(400006); SRVR:DM5PR03MB2473; X-Microsoft-Exchange-Diagnostics: 1; DM5PR03MB2473; 4:EfkU9paatb4XBX3HSj0JtuzBV7nXC5cMV8PBaHfVChQwIFUg5AIQkjYutdOQJRvUTxl2qO8CSn933loULeRS8DHujdYHxuoanObn6IgtdYNstlpEsi4a6D9zSmb+8YF/Az455FJgCeHfesIqPOsXrzaQaI80u/Ob+Jrc34v75KY67koiuJS4hQovtt0DDZCEnNbzn8segHZu7xeRIlaOySDk4vs89gYaTqP3ZFrRADxacayN6ot7oBS0DgonMRMRoIZqH/W8fDB7SmWHUHD25MCYHu80uD/7SO6HNV/Y9cSLbWPaZuhHXq/Nfgqxf4DfkfVbaMvvv1lTTwYo+6qsRjjEFrND2ttzhRifFmDmhGpKR181EywKcJvBRjjs99QMYseC3GZGtjXdz8MdkefqX8F2hbHG7b6skZQ5muSEC6KjzREiVm7HLWpximZiCcdaRej+ip0spd7Kvmz1CVZdNL7kf2y4J3+OglELmesUDojtuzERzNE6JLgrOpabGO7dHAOB7wT56ti7NeiIiA/Zr/XI5QKEtYi43XdLpT+T9DVxcCPhV5+h9M0Vms3VLQlV21mXf+v18ByvDYNQ8QV6nKslMGP8w0RUUgJq9ShaGbWgyUebYxu78yBIB7qIGzf+5TlU52U3kAVqcesUGR15Yo/7p0O2ifq42eiAFwuy5C3DUzbPi/D2iPYw0NklECzUB7sH7dTnDr7zrp6bts4ym8FrTA3fyfWx33dnjacapytLfpY/zp15ljUVOzKFT5qA X-Forefront-PRVS: 016885DD9B X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM5PR03MB2473; 23:1p8MVAfdlvMV//LNw6Ibb5R6cSZn0kex1BX5HzgpL?= =?us-ascii?Q?Y4RCY6wMnJwzHt+87trCNEJjJytbuLXB5uVcOt7kw0qr6SYPsx7Q7iHgRl+J?= =?us-ascii?Q?uwMp+53L10q+lC/G269XcB4W9JVQbm4+cOl/3Fd+yNaLYZZOiwZPjf2NSQWk?= =?us-ascii?Q?IcC1mzumBkLH07+5802iaPMshimOB7VBJY2MtwEY8FBnUjeNmgUvRnQ2jley?= =?us-ascii?Q?jiKna/rxs9rzcvLOkP+WxZzM0R3HCuikdNgw0kgUr7QGDzZ0En9SY93HNJST?= =?us-ascii?Q?Ny6XdwEltWEitOmbw11EYUyTDGuuGe/Y8ExTXuAeXn4T0eC8R1pCsu0f6mqM?= =?us-ascii?Q?lnJkSRdfhESzlRf+M8kxp4q07FM4w5sqDL97BBtxCICRLsYdXxiLJN4mX1Jk?= =?us-ascii?Q?CTmOHDirMIKlHYaZuOaJY58CrArEMgDVgu6ENaIio6iHIBYUFWT26mXHT5zf?= =?us-ascii?Q?/9Efm8bsTU4xZRVmLM7sCyN6WnoTMMTSzOasc7M0N03fVe1SnHqYGabHoSve?= =?us-ascii?Q?+0C24HY194AHcri24n9d3oUoMDTPLrnNonK8Wgssp064/NfXJbGsFEQslzdP?= =?us-ascii?Q?QApvqSd2AEyKYR0+NQxC/hfFRBpQO+pVLFyMjYmR2i1DBNJBaGkT19u5N0eg?= =?us-ascii?Q?SMxW3Fz7DPvhmUwhsJ5uc22rMR53jNZYbpZfHYi3iZ0GKNyG1AKgu7tbB8Ja?= =?us-ascii?Q?xTTmzEknJsemCUhvZUuvmNQMjkk7ExkmJ1Ejpdg9J1nFknsokjoP0m3I4Q1/?= =?us-ascii?Q?6gFMOk1Df3QlA5cw8cqonfbBbtHoAKFRMVKlyMMu/wpGQbHOKq0wHVZr3Cc+?= =?us-ascii?Q?VYjXMKf1uoKIcZG5ZFPmxG5gweQ/DcYA2h3/FVN4ZXhR3StcL/pIZfde+BZf?= =?us-ascii?Q?PFp//ZkfiLJ0XZcj3t2i19LoMCCDSEhZeGmY5fd/kAdhHHMz8ZARvtbMewHH?= =?us-ascii?Q?ASC8RhH0VTsv4DxdQq/ORjaBU+yFwpSS6YjRGOJ/lVxVOWfPA5M6CaHEot+i?= =?us-ascii?Q?9MhxbRtg3Duv6tLSUj9/PSpwxn5raEOTOOpqUJeM3MzA46kjmPwTuvH7s3OT?= =?us-ascii?Q?7RQ+IEfvpsC8IG1v3STgGzL8MA6BUh+Fl3tX+XX7YaTZGVwn8WTck9BzoDBI?= =?us-ascii?Q?BguIhsIuwpC7C7NN/yDYlAQt35FBfRXtzT3TgdeJFQq2BSP28nESuY1phC79?= =?us-ascii?Q?5alGF2vQDajaiSsUS2lxEOjy3eikz8dKP/4ZvRX8A4BsFBwYWcHZsMGzwsHj?= =?us-ascii?Q?6KhuUSoLL2GkN/9Bcc=3D?= X-Microsoft-Exchange-Diagnostics: 1; DM5PR03MB2473; 6:ILRAjHO2+cCUIXAeCN4SzD3qzldoc/FmODjSGaK1YJVgsFgyTghB+w84L0Mr3W5pnWTI4W2d1+yO2oAIkrXGBgtgZSIOx3lQXPb3g0dlFva6S3kFV3ZCTHoQ0q2oSPesvyBMyDDrsszXNr41J0HhSy/zZ2e3gzrvivLF8MQaxtrd5Iih/FXyjDT+uaBupoRnr0Vv85nLCssxU2ibIrH8gxDxroCvV2JOURmPj7fzwGKVlFl2/e8xpe4PS4jgeevHr25c80YeWFj11DdejVP87RXuo5Y5WBVkoZmo+wLT+zz3O6+K3FqoGFNefeidwGiSBVNFZhyJhnIUWuYlIFd4CFwzG98F7JKs5/vFd9FGF8yqq63h9QkNynxMhrvKwdHl3kV2YXarE6U5hRJ1Y3RWyrIzxoAt3d309IlsPlEQtpfOmLLJw2ZLmL8e7ya+oRE5; 5:X8uCQQd/AOXwI4b0NvBlEg3BaBaq1Uj/mCSug6CkYVHISj3qAcTCdw33oGaj8Dwk13urwuWV4Nz/fdBn6/2VjJuH1p+T3nnQHZB1hjaJ1r35BjwZpJuylbqIEEGVuX5lncNeZJBYrYe/b61cAoJyEmXGwgC3snc0gduMNHErA+TC025kN7UMX0hH6dEg8f3L; 24:Hm9cblPmNUE4PgF/5leoLxfNKU5mGbolGW8e14eNOeg7s3NVPKI94Quus9255XJR0AY1YKy8c/GDgttt7FfVYST8diX3BE+SpDxORrrRcoQ= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1; DM5PR03MB2473; 7:odvurJZLIydOjFVOlxBMgfxlpj0Q4gX6z0ECQaVovWP8HCVpXUvezPLeR1RjyIHsTnB3G4QNEsmMbMW192/6amSGXxRucgFUCc4wo6Ajjs2ofWjIbS5vLt2adKFABQbTb10tCYcPx42IHkSvFT+CqOyPe0Hlz42tgT6FcqCa2h+/RnxQ1GcYJigCIu/B2oCn1MADJjQasP3Gi88wjE3G1e5IVeOEuipjYV+CIPsjEBSsbQV1aXhdxAAUNNrOuWlajsJWMDK0TEF+wrKZ0Fez6qwuryhM1O+RI7eozgKey1uTWL4YT6KJLdrRcKoFwgo90LTn9rX6yRBMY2cMLg7nLI73JOxMU/j3qhFjaKQTeuj7xlLkV2IAnlBROKfeDqmz9B78J3v+XasrIKqvslbkg33LawBFGBoZK6ydGovdKz70cHPiUzr67IP5HCHrYamIRQSB/IbinI5fyeAsIYRzLw== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 26 Dec 2016 08:45:47.9749 (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.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR03MB2473 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: linux-kernel@vger.kernel.org, Zhao Qiang , linuxppc-dev@lists.ozlabs.org, jason@lakedaemon.net, xiaobo.xie@nxp.com Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" The codes of qe_ic init from a variety of platforms are redundant, merge them to a common function and put it to irqchip/irq-qeic.c For non-p1021_mds mpc85xx_mds boards, use "qe_ic_init(np, 0, qe_ic_cascade_low_mpic, qe_ic_cascade_high_mpic);" instead of "qe_ic_init(np, 0, qe_ic_cascade_muxed_mpic, NULL);". qe_ic_cascade_muxed_mpic was used for boards has the same interrupt number for low interrupt and high interrupt, qe_ic_init has checked if "low interrupt == high interrupt" Signed-off-by: Zhao Qiang --- Changes for v2: - modify subject and commit msg - add check for qeic by type Changes for v3: - na Changes for v4: - na Changes for v5: - na Changes for v6: - rebase Changes for v7: - na arch/powerpc/platforms/83xx/misc.c | 15 --------------- arch/powerpc/platforms/85xx/corenet_generic.c | 9 --------- arch/powerpc/platforms/85xx/mpc85xx_mds.c | 14 -------------- arch/powerpc/platforms/85xx/mpc85xx_rdb.c | 16 ---------------- arch/powerpc/platforms/85xx/twr_p102x.c | 14 -------------- drivers/irqchip/irq-qeic.c | 16 ++++++++++++++++ 6 files changed, 16 insertions(+), 68 deletions(-) diff --git a/arch/powerpc/platforms/83xx/misc.c b/arch/powerpc/platforms/83xx/misc.c index d75c981..c09a135 100644 --- a/arch/powerpc/platforms/83xx/misc.c +++ b/arch/powerpc/platforms/83xx/misc.c @@ -93,24 +93,9 @@ void __init mpc83xx_ipic_init_IRQ(void) } #ifdef CONFIG_QUICC_ENGINE -void __init mpc83xx_qe_init_IRQ(void) -{ - struct device_node *np; - - np = of_find_compatible_node(NULL, NULL, "fsl,qe-ic"); - if (!np) { - np = of_find_node_by_type(NULL, "qeic"); - if (!np) - return; - } - qe_ic_init(np, 0, qe_ic_cascade_low_ipic, qe_ic_cascade_high_ipic); - of_node_put(np); -} - void __init mpc83xx_ipic_and_qe_init_IRQ(void) { mpc83xx_ipic_init_IRQ(); - mpc83xx_qe_init_IRQ(); } #endif /* CONFIG_QUICC_ENGINE */ diff --git a/arch/powerpc/platforms/85xx/corenet_generic.c b/arch/powerpc/platforms/85xx/corenet_generic.c index 1179115..1d96c3f 100644 --- a/arch/powerpc/platforms/85xx/corenet_generic.c +++ b/arch/powerpc/platforms/85xx/corenet_generic.c @@ -41,8 +41,6 @@ void __init corenet_gen_pic_init(void) unsigned int flags = MPIC_BIG_ENDIAN | MPIC_SINGLE_DEST_CPU | MPIC_NO_RESET; - struct device_node *np; - if (ppc_md.get_irq == mpic_get_coreint_irq) flags |= MPIC_ENABLE_COREINT; @@ -50,13 +48,6 @@ void __init corenet_gen_pic_init(void) BUG_ON(mpic == NULL); mpic_init(mpic); - - 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); - } } /* diff --git a/arch/powerpc/platforms/85xx/mpc85xx_mds.c b/arch/powerpc/platforms/85xx/mpc85xx_mds.c index d7e440e..06f34a9 100644 --- a/arch/powerpc/platforms/85xx/mpc85xx_mds.c +++ b/arch/powerpc/platforms/85xx/mpc85xx_mds.c @@ -283,20 +283,6 @@ static void __init mpc85xx_mds_qeic_init(void) of_node_put(np); return; } - - np = of_find_compatible_node(NULL, NULL, "fsl,qe-ic"); - if (!np) { - np = of_find_node_by_type(NULL, "qeic"); - if (!np) - return; - } - - if (machine_is(p1021_mds)) - qe_ic_init(np, 0, qe_ic_cascade_low_mpic, - qe_ic_cascade_high_mpic); - else - qe_ic_init(np, 0, qe_ic_cascade_muxed_mpic, NULL); - of_node_put(np); } #else static void __init mpc85xx_mds_qe_init(void) { } diff --git a/arch/powerpc/platforms/85xx/mpc85xx_rdb.c b/arch/powerpc/platforms/85xx/mpc85xx_rdb.c index 1006950..000d385 100644 --- a/arch/powerpc/platforms/85xx/mpc85xx_rdb.c +++ b/arch/powerpc/platforms/85xx/mpc85xx_rdb.c @@ -48,10 +48,6 @@ void __init mpc85xx_rdb_pic_init(void) { struct mpic *mpic; -#ifdef CONFIG_QUICC_ENGINE - struct device_node *np; -#endif - if (of_machine_is_compatible("fsl,MPC85XXRDB-CAMP")) { mpic = mpic_alloc(NULL, 0, MPIC_NO_RESET | MPIC_BIG_ENDIAN | @@ -66,18 +62,6 @@ void __init mpc85xx_rdb_pic_init(void) BUG_ON(mpic == NULL); mpic_init(mpic); - -#ifdef CONFIG_QUICC_ENGINE - 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); - - } else - pr_err("%s: Could not find qe-ic node\n", __func__); -#endif - } /* diff --git a/arch/powerpc/platforms/85xx/twr_p102x.c b/arch/powerpc/platforms/85xx/twr_p102x.c index 360f625..6be9b33 100644 --- a/arch/powerpc/platforms/85xx/twr_p102x.c +++ b/arch/powerpc/platforms/85xx/twr_p102x.c @@ -35,26 +35,12 @@ static void __init twr_p1025_pic_init(void) { struct mpic *mpic; -#ifdef CONFIG_QUICC_ENGINE - struct device_node *np; -#endif - mpic = mpic_alloc(NULL, 0, MPIC_BIG_ENDIAN | MPIC_SINGLE_DEST_CPU, 0, 256, " OpenPIC "); BUG_ON(mpic == NULL); mpic_init(mpic); - -#ifdef CONFIG_QUICC_ENGINE - 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); - } else - pr_err("Could not find qe-ic node\n"); -#endif } /* ************************************************************************ diff --git a/drivers/irqchip/irq-qeic.c b/drivers/irqchip/irq-qeic.c index 48ceded..1463731 100644 --- a/drivers/irqchip/irq-qeic.c +++ b/drivers/irqchip/irq-qeic.c @@ -598,4 +598,20 @@ static int __init init_qe_ic_sysfs(void) 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) { + np = of_find_node_by_type(NULL, "qeic"); + if (!np) + return; + } + qe_ic_init(np, 0, qe_ic_cascade_low_mpic, + qe_ic_cascade_high_mpic); + of_node_put(np); +} + +subsys_initcall(qeic_of_init); subsys_initcall(init_qe_ic_sysfs);