From patchwork Wed Oct 7 03:48:11 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Scott Wood X-Patchwork-Id: 527102 X-Patchwork-Delegate: scottwood@freescale.com 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 1528B140D88 for ; Wed, 7 Oct 2015 14:58:03 +1100 (AEDT) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id EB54B1A0F78 for ; Wed, 7 Oct 2015 14:58:02 +1100 (AEDT) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1on0130.outbound.protection.outlook.com [157.56.110.130]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id C62401A016E for ; Wed, 7 Oct 2015 14:48:43 +1100 (AEDT) Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=scottwood@freescale.com; Received: from snotra.am.freescale.net (192.88.168.49) by BY1PR03MB1483.namprd03.prod.outlook.com (10.162.210.141) with Microsoft SMTP Server (TLS) id 15.1.286.20; Wed, 7 Oct 2015 03:48:39 +0000 From: Scott Wood To: Subject: [PATCH v2 07/18] powerpc/85xx: Implement 64-bit kexec support Date: Tue, 6 Oct 2015 22:48:11 -0500 Message-ID: <1444189702-17241-8-git-send-email-scottwood@freescale.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: <1444189702-17241-1-git-send-email-scottwood@freescale.com> References: <1444189702-17241-1-git-send-email-scottwood@freescale.com> MIME-Version: 1.0 X-Originating-IP: [192.88.168.49] X-ClientProxiedBy: BLUPR08CA0034.namprd08.prod.outlook.com (10.141.200.14) To BY1PR03MB1483.namprd03.prod.outlook.com (25.162.210.141) X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1483; 2:gciml+6LgVZfBrkVOVuhiN0xzMfSX4f7BTa0Sp9tjyy9lxZKsdWNM9dnSkGKFBV4Y6BjD0iMjDTT1NUqCIXhbw01LW5K0+Od+4M3RdQd9TFshzd6mxnEpX233Lfn+5IZEE3CUAQMQ2Y9AFxFaPYVcqfmIsA4b1KFeldmuwWOASI=; 3:H+iGc4ramUoX+sh+icEsyZ7DnWYgk9WjviX+BFDzyAsjkPtho+xzJPNvh+UPkuqJKi9XpEHMTsmsXcdh+sb8aZqGNzjYBlFWcsCLqjJjEUaRzyTcw/zMstSHbtk60V3nYgNfzBTuzrFtC8NzOTlmhw==; 25:2Pq5tYJz5Hd2atwC4LTcio5X4utRchETehvSvHAZ3fGOolYbTod3D/2TAuOyMJ/PTOb8abZ5/l1mx55/Tr9IjQJOXwdC/F//J2S3Yv638oMHdFTgW8uyEZ3NsYr3Eqyn1V36EyvMrtOH44cU/dfd4HhWA1+DNoopeGWxbZA/zGzt76KL1hdx5HyDLeGY2RjyGH2/6DAZl7HGq+AAxtOwCzOx55eLRaZNRQiy7YjYqxr56SudLG2eQVW758TPVaxV28dy/x7X1HqKkLJBZq2HtQ== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY1PR03MB1483; X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1483; 20:V80zvgKEEicEos+VNLD0QD+5Yyh2ZWaS40vuFsJJ8Wc2n9dlI8L8IYa/31amcn2eoCK5fiBGaZcZ7m7QHprHLASvI73DnUtypzM/B7WXwgCXijZ5XetR9lMDETFK5dNh0HQSodBmb0rTp2EW7aZqyYea82a4+RW3icPgm1WUuKpLkvT+whaFIIKo9RLAiStFMfZa5OlLGrhyauTXrDw95Nu8a58h/yCTYqHNMIo3vMztleBl4rRJKUeD2lD5+N84kUjDvsaidW0wE0jrB+3a5Seu7rVptbnfva/5+OJSyyxz0WFYMqmrHRCru1tTZVOHokVRoUDsXDZ2fQrR5VUy7gFqkRDrx5XdL6qe6cnEAKmcu16zh0flRIycglDPNfj8geNBXz5i+rPpsBou2xF/jYxXllEiXjHU2y56op1cpocx139TAtbrQIHP00GkN7gBIchccK2zgWYyZ/i5H9HcseegpOgJClKZL12HdcDwSd5CJSik2hdg6K7f7qaRUi5H; 4:0W7VIpVtk5ELkB8jbP612ELtTeJoV9bDpad0bdopeLBv5wGGSAuHwbr+jk7kfYC/xO/dKIlUZLwE8YYYDlOCGD0q69gd68KPP8nR7yEbwMS3v/B8P1YupbibG1oxGZh25lY41nRMml/sMW+RFYhsW7i/ZUaT0ruP8bvGZyCxMC1Vjo8TimxPukvvuXl4DysZXpLi8AWY0rZTSynBJo1UCz4Ln5S4WTBC2NzrEQB6yKtmHJv7kOh+M2+N2vbKuIrvoQEUaqsKn6tawbAOuz6bO4Hgs816sxuPPVVlxveXZFDoklE2Vv7a0DKVVHQwcez4iIEZwtKmRG0s1lYnsV6JOp9lmVHyBuYd//gOaDQDn+Y= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(520078)(8121501046)(3002001); SRVR:BY1PR03MB1483; BCL:0; PCL:0; RULEID:; SRVR:BY1PR03MB1483; X-Forefront-PRVS: 0722981D2A X-Forefront-Antispam-Report: SFV:NSPM; SFS:(10019020)(6009001)(199003)(54534003)(189002)(122386002)(19580395003)(5007970100001)(5003940100001)(189998001)(19580405001)(107886002)(105586002)(46102003)(106356001)(50466002)(77096005)(40100003)(2351001)(110136002)(50986999)(64706001)(42186005)(87976001)(86362001)(5004730100002)(47776003)(5001960100002)(76176999)(229853001)(101416001)(50226001)(92566002)(5008740100001)(2950100001)(66066001)(33646002)(36756003)(81156007)(5001920100001)(97736004)(48376002)(4001430100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BY1PR03MB1483; H:snotra.am.freescale.net; FPR:; SPF:None; PTR:InfoNoRecords; A:1; MX:1; LANG:en; Received-SPF: None (protection.outlook.com: freescale.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BY1PR03MB1483; 23:JTVRycaEsFcD4jtC0ViOlLIQFSQh2ordRaV205zd8?= =?us-ascii?Q?kUdnerbrIElwEtapPO/HttwhC3McDtmvzU3kmXTJFbn+hyntbCaO2x4ksil+?= =?us-ascii?Q?TgRxA1o9EfbUHzwl0DK7h9R9XirVufD+ShVW1kXi4XdPBoIl8WhEEWYpotUI?= =?us-ascii?Q?k/9UBCMCC4EssS5W7jPYbMUM5yjUFEzCh3GfC5ordg3bLx7YGUnN5m9VHEU2?= =?us-ascii?Q?QppBjjijMf0NsLnbMoSDv3ST1uiWst43DEGLSwFqIJ7M+yhNTvQRWzOmwNKa?= =?us-ascii?Q?P3h+pn08AaM5DhocEFRtof8AJ37U7+b4GcQkOkpqwY7A8W2Kt5XVIZSq4FuH?= =?us-ascii?Q?pdcog+/gpSHNlB97zCPLJfjb1t9/ukaWeJUI9KhaM8avgNzUuWqd3xe/MaFj?= =?us-ascii?Q?QNYxYAlD/KSVZLAMs2Wu9OS8pF/MRAVK1yPSJ7dTKYVnv3KsIbVaeXEIOh4e?= =?us-ascii?Q?qHE++aSAEsIrmsEoOLxx2GEU01rS3446IFpSHwbT/QgzFLzVoPt8ZcWGjWBE?= =?us-ascii?Q?bUhfvQNEuMsqqU+TyuC9BdahVnR3NtHQcF5LrwZRq46aEpdEcE08TmP48hTG?= =?us-ascii?Q?/mKO+f4QiidWUUD/xL/uN6/C/MLFgHGxr87/5aAV6BVbfAOTGHIJWcau7i6h?= =?us-ascii?Q?5ZH5GMMgzmAyWRP1fyGXJr6LC6gTDfxmplAtcNKkXcXmYj5ToA3RtncBlK6d?= =?us-ascii?Q?MFf+lAjn1OWppQ7hSnxG0VSl5VtLOT2Q88QzUIhPKHkD46Bzs8+BEvhgx7TF?= =?us-ascii?Q?ONFKyq6HKos+8UHyzW88ycBaQFkoh+iLOV4cnGBsOILa1rFUcjviV2cshR0b?= =?us-ascii?Q?781lDFzG9VFl+njWr3tJsTiZvbu9kIn5cPjbwMdDEw/CRA3uNZXETxcqGwKd?= =?us-ascii?Q?E4aO7s9Mxf2bXcvLi6SYdBXDKpbNKdVln+mE/FM8Sizn+xETg3hyf4IAUa5n?= =?us-ascii?Q?UWXfjqym97QtfZHZcG5dTLnk2MLf1sfWXRLi3bLTplqZJBZI+YkKp4szh/ME?= =?us-ascii?Q?TSydp3xWwRs0i39qOauCk07GPzjd0trbveN/bk385nuElhitrubpFLBXzAWd?= =?us-ascii?Q?8z+WrxcOQLT3CFdWRwDz0YpoYO/l8Kkhw1IR1D7Jyd78GP3TKVcAZwEUmtRz?= =?us-ascii?Q?6v95e410X5eKK8QH2sqTNMMbYR/uMSm?= X-Microsoft-Exchange-Diagnostics: 1; BY1PR03MB1483; 5:psDaChSAeKg9NOFo099jWmmusGBb8AkSHOZc6ECV6l0p4Y2bGXavEEWVF4hayHuct1HsG69zoGA3yzXuwGIiyTE04eL0Clm1RBTVCiOWMeAockreRnyKKDNQv+6fl3AOhlXDqfsXkMG0hxkekvaJIw==; 24:GQKKgcjcm/TUdrQ4dz9hKQdtg2yKgsxjucK9g9IPhaizLjSnNv9loYC1L5ww+xlzJa4E4v0XnwwDOg1nE6JdTL3g0TuZd73bYz7GyLCxmQ0=; 20:so7/Ypdadj23xdlf4FCapI28YBg6iNct4neL05uoxYug+VEcTo/yW+jFOddAsSZRbItmJM9OFqLue40Nbn/wFA== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 07 Oct 2015 03:48:39.8259 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY1PR03MB1483 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Tiejun Chen , Tiejun Chen , kexec@lists.infradead.org, Scott Wood Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" From: Tiejun Chen Unlike 32-bit 85xx kexec, we don't do a core reset. Signed-off-by: Tiejun Chen [scottwood: edit changelog, and cleanup] Signed-off-by: Scott Wood --- arch/powerpc/platforms/85xx/smp.c | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/arch/powerpc/platforms/85xx/smp.c b/arch/powerpc/platforms/85xx/smp.c index a0763be..2e46684 100644 --- a/arch/powerpc/platforms/85xx/smp.c +++ b/arch/powerpc/platforms/85xx/smp.c @@ -351,6 +351,7 @@ struct smp_ops_t smp_85xx_ops = { }; #ifdef CONFIG_KEXEC +#ifdef CONFIG_PPC32 atomic_t kexec_down_cpus = ATOMIC_INIT(0); void mpc85xx_smp_kexec_cpu_down(int crash_shutdown, int secondary) @@ -370,9 +371,18 @@ static void mpc85xx_smp_kexec_down(void *arg) if (ppc_md.kexec_cpu_down) ppc_md.kexec_cpu_down(0,1); } +#else +void mpc85xx_smp_kexec_cpu_down(int crash_shutdown, int secondary) +{ + local_irq_disable(); + hard_irq_disable(); + mpic_teardown_this_cpu(secondary); +} +#endif static void mpc85xx_smp_machine_kexec(struct kimage *image) { +#ifdef CONFIG_PPC32 int timeout = INT_MAX; int i, num_cpus = num_present_cpus(); @@ -393,6 +403,7 @@ static void mpc85xx_smp_machine_kexec(struct kimage *image) if ( i == smp_processor_id() ) continue; mpic_reset_core(i); } +#endif default_machine_kexec(image); }