Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752055AbbHEJWt (ORCPT ); Wed, 5 Aug 2015 05:22:49 -0400 Received: from mail-by2on0136.outbound.protection.outlook.com ([207.46.100.136]:8678 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751174AbbHEJWq (ORCPT ); Wed, 5 Aug 2015 05:22:46 -0400 X-Greylist: delayed 1126 seconds by postgrey-1.27 at vger.kernel.org; Wed, 05 Aug 2015 05:22:46 EDT Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; arm.linux.org.uk; dkim=none (message not signed) header.d=none; From: Anson Huang To: CC: , , , Subject: [PATCH] irqchip/gic: restore global interrupts group settings in distributor Date: Thu, 6 Aug 2015 00:39:38 +0800 Message-ID: <1438792778-7586-1-git-send-email-b20788@freescale.com> X-Mailer: git-send-email 1.9.1 X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BY2FFO11FD049;1:lTi43m6m5SBtjTGVGPdkxkrDrnWe2EpmfXTOYkH9QhId1oCbU+j6YotdriwmmiDeAslDx0k9pv/ZYyDlUlhL4RXfgUHKxZXh451xRIwt6cB6K/bHu9eWVPHrbXVrDv2KcJnaqe5/aSOEAK+3SoRaNIK8kotEbxV4kLPy+D0vg/MLCdsaGcZUbc7BX2IB+hx/4w/dZDKvSvrJbmjFXJNyLiyQKmhWtBCWQZVH1Y/zkx1uYGEusljEELyahCfYVJ1SWY33Vv/8tQWiS2NARXA5sNoZ/k5Ajnh9AYkJasYOuznix4IrQvgI8a7ABI/dSafm X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(339900001)(189002)(199003)(189998001)(68736005)(4001540100001)(77156002)(105606002)(92566002)(81156007)(110136002)(5001960100002)(77096005)(46102003)(5003940100001)(5001860100001)(5001830100001)(229853001)(47776003)(50466002)(64706001)(97736004)(48376002)(87936001)(106466001)(62966003)(104016003)(33646002)(19580405001)(85426001)(6806004)(50226001)(2351001)(19580395003)(50986999)(69596002)(36756003)(42262002);DIR:OUT;SFP:1102;SCL:1;SRVR:DM2PR03MB493;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB493;2:NS7Il//PgifvPpqZK3OYzcoYnv2jqwYgHu5W9DzhoF6i6a5uEIf1NwS4SACpEcjv1lWDvaM19XFdD2LMiHXn/Z3teYsPunMqj+cGbalZIYsQJ2nQW7oBvVSS+nBM0vkUrTBpWnh+vgwNOwH3oWznoi307vOwjEViNLN+Kb9dcZA=;3:+4RuNhk+MW33cd21jnVhKrfPOKt1R1Uuwe4FXKZji2CSh8RgMhwfLHiUbbih9xfhcgJ50R16Gf/dYmcqUyEo+3hJBEnjTScu7kgR5doQNrFDx+r6N41eO5Z0VhadPx32isFChIOnLFGcIIPSMLAHGDfTGuUpSb1h77yAGft1WsL03ZOtxJuYfn1JAGMoPKC7HvnaX+YdgUVIt7x2RR0kU+KZGqBINd7Am4H7Mq4B3pw=;25:S5mFdrNcsF7q6sKY3lY0SxTEGXXA/Xclj/lOtGNQNXojV6qndYve9ynA3qp6c6tQpantru8e1VoN3lNL9CudChIU1rKUfe2suNQr66emTz5MTcOcXQj9GW00bQslLbI5RkloWyX7NazepxCYm+gkm1BGKfb+0d7eTa8ZsqdxR28f/7xN2ayEXvw1U/Fbj5a1By+YMjyxq1fb+eygqtZ2unSYQDbTVGYNn+wysdejrKQWTQM8Bk9yj+0SYnWifT2BSl/PY0FPh9bBw2tukLDCTg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:DM2PR03MB493; X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB493;20:6zMZaP3ddhYZ0h/9qoKzJC6/eaJZLJggxkdv5UfFjmhGJUVAZzBvYSvoSBnzdI3dRpDvFzos8x2kaXXzaPB1pjv4XH4TByXRsgUo0visyYQT0ZMr2Sh+4p7RjTF0jjw5BnqcwCSSQEY4wWgKjWacmZ+tpMJcgsIq6mbE3ktS14w9TOeR5V7Ihh+2k4uXdH6vcox8y4A/IJnn7zyysrRk7e1HmNnJcsUqmPfrR3Efc9gYowPMaSLDOt8FMFXiYTqwfCEeELcskv4n7Kea9s2KAvSx8YTWlZf3qKKr7XhSFDNS+kimqDNFtwd32OB/vwmwpWVqTySukh4zvUl4wo30gd5ovMBlvCVuoshFxYOvZqs=;4:JdpVIJQuawfqRVVSjQcOkMBlw0GnCFAT4THA1BvGdTcesL4VTw4othObWvs/qKmU00cqpHk90mVN8LcvloV9bo9DDnO023Icx9r82pj+9dPnVCzRZ6trPEEMSKJiFfSmO2e8bM0YsVG4tWh2EsOpRk84TVIbvumStsHAlxbNl1M6n5NX2RwvoH+7Lspeee0gICdK8iJWpwp+QfAuWaxW1fHfDek64WFvb5VTyOrmdWP/A6rq+gw5GiXFCfN6T1LJauzKkQQ3Jo5bi8uu/GSHwERskewA63xp58rdcMqYh+o= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:DM2PR03MB493;BCL:0;PCL:0;RULEID:;SRVR:DM2PR03MB493; X-Forefront-PRVS: 06592CCE58 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;DM2PR03MB493;23:Z5kXDae43W9D3Skn7/Fvf6m/Z738nFbxEMgSisf8I3?= =?us-ascii?Q?b5d5bVXgTmISvw68fHJG1ORzmj5iL2NuMWzv8Ydv+k1InWYc79cDLzrZ3R+K?= =?us-ascii?Q?9AfY3XdLH8hUh5b6oxvjqSFwkxuxBtvcEs5rUaCELqzXmddfLAjlBe6YuCsx?= =?us-ascii?Q?yIi8/TgiAkVs8wrcfEf8lqVwC6nEKq39DSsYNx8AMwUnY65qyX42+mI53aj0?= =?us-ascii?Q?JHZ0jLNuuHUpxeayt8ApYVB0xDipyKgOhNJJkpSJNFrE7HebM1y/BXZVaroD?= =?us-ascii?Q?kcstsDw9HvOKTxAODlPIsUMtPFkjNRhXDCs787PsQZlxAWmBsrF1ObTEFTh4?= =?us-ascii?Q?4dZXWqg3xBCILl6J6QoJ3+tLR6UYjdBHICocQ+kCwy6j59uzLzTGHYtWiD2n?= =?us-ascii?Q?HEz5av2WXF1WaBYWM4NZrwbwXrnYAcqLihepGZP7Dd18qa6TMXI5koWZ+A+f?= =?us-ascii?Q?HzF7DXqej6FOmq4L8cAasRglaj5bz0TOrtutjiZuKcchcJ7Wjjobhnsz1FPR?= =?us-ascii?Q?uVQvCK+Th3MzmEI9WRHcF+6zmNA+Kj1+TccFcnDHaz89QtqHKNpTj3EItLg5?= =?us-ascii?Q?l/TeaMUDc5y1mpHlAevAzs8fWFSub62Z8Xi/gfvSXXASu12SWpMzqbyx7hUy?= =?us-ascii?Q?/PtSj0/zd80dFOqQ/f6wM0C8/x1WqVxIUKDQsfHxf5jKWF5na6pXidyC9kUl?= =?us-ascii?Q?nQiRWhAG8/+dGIimDRx5qhFKHWy8Do4nLNxLlzFVnSuwP4qqVj+0hCVM7RyX?= =?us-ascii?Q?RmQp4Z1FiaBNwCzWJfnwrgPz98CeFMRGTiXM9eVC9RSzL29UcxKNMqX+oy6R?= =?us-ascii?Q?sKnXcrPeNBc6bxDpqoNvU0t0ernF2XB8Mc0k/HipTFOp6HNxVM5dJQLyt/Cl?= =?us-ascii?Q?PZTWdpeETFLQ5u00Zi3ip8eUTOWJB9dU2UIMwUbs3bMkxSeIuL1W6YDzbDtx?= =?us-ascii?Q?LzUtRXjvo7xkxIJ0Fm1qwCW7l7QZjMZJO3gy9O2Xwv6nzXtfy7z9eJz4CeUp?= =?us-ascii?Q?nzPlEuc/kN5zo8SKjoGBq2YabITUKzDeniHu2k13BRsGU6GN5k0xsK83bJPm?= =?us-ascii?Q?DtVU00kIJGzhIQyHeoAE/+iMg4?= X-Microsoft-Exchange-Diagnostics: 1;DM2PR03MB493;5:sfCELenBlr18Aclx3IS4TkA7p5KpkNiJZVVMAqdQFnRahWHHNU/mfMJWxGoBLmB5q8DpeqHbe55qFIgpXgjG7w8ryeBKaHCanh6wpEG4nFZtFrYDQlGgV9sWeb7qvZ3YnSl1EqujJcdD3Bhqi8Rsgw==;24:ioUyhTCQv6aW0T8NB6GIhh6SVPTfC4tIPP3kpXluvY3kqvikSwbRrcOWjzlQeL2o2DOVDcZzpubRJ5UCFjDct29UJJUMDb1grC6qUTS5OuE=;20:ugg/YC6wAU4yQT6+hhP+bh9+EsG0TkS6fvVo8am93v9DBosISoE4E0PfzL+BCaLbr3R6ZfX+20hOC/xCJVyG7g== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 05 Aug 2015 08:48:23.9947 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM2PR03MB493 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1442 Lines: 43 In GIC's distributor initializtion, all global interrupts are set to group 1, however, after suspend/resume with ARM/GIC power off/on, distributor does NOT restore these global interrupts group setting, it will cause system fail to resume. This patch adds global interrupts group setting restore for distributor. Signed-off-by: Anson Huang --- drivers/irqchip/irq-gic.c | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/drivers/irqchip/irq-gic.c b/drivers/irqchip/irq-gic.c index a530d9a..c8fa6ee 100644 --- a/drivers/irqchip/irq-gic.c +++ b/drivers/irqchip/irq-gic.c @@ -532,6 +532,16 @@ static void gic_dist_restore(unsigned int gic_nr) writel_relaxed(gic_data[gic_nr].saved_spi_enable[i], dist_base + GIC_DIST_ENABLE_SET + i * 4); + writel_relaxed(GICD_ENABLE_GRP1, dist_base + GIC_DIST_CTRL); + + /* + * Optionally set all global interrupts to be group 1. + */ + if (readl_relaxed(dist_base + GIC_DIST_CTRL) & GICD_ENABLE_GRP1) { + for (i = 32; i < gic_irqs; i += 32) + writel_relaxed(0xffffffff, dist_base + GIC_DIST_IGROUP + i * 4 / 32); + } + writel_relaxed(GICD_ENABLE | GICD_ENABLE_GRP1, dist_base + GIC_DIST_CTRL); } -- 1.9.1 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/