From patchwork Mon Aug 22 23:56:15 2022 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Andrew Davis X-Patchwork-Id: 12951506 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 93771C28D13 for ; Mon, 22 Aug 2022 23:58:01 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=lists.infradead.org; s=bombadil.20210309; h=Sender: Content-Transfer-Encoding:Content-Type:List-Subscribe:List-Help:List-Post: List-Archive:List-Unsubscribe:List-Id:MIME-Version:Message-ID:Date:Subject:CC :To:From:Reply-To:Content-ID:Content-Description:Resent-Date:Resent-From: Resent-Sender:Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:References: List-Owner; bh=uZN6TSU6ydZarOryRypniQXW4wxfBcdGPU4fpyxwslM=; b=qBXyrvqpmInRaN HMjc+KTXrpucmsgmGo9tgcBsZngBxowLFIWh/Vcs9Q6tqnpbKaO+fOYdtQojvHQLoN6UYl4jbNcnV xQu9E7uU7znmKJzFwRK/U0cOI22hFg3wUqz4A/VtlfDj8TY0M2bBFfZY8flNapywn655xqWoZgMub tYJOgjT/jlYe8fy1cZmgFZ90Mfso8rJVtk41QXMeKZ1Tx5o9tTHNqRgpFEbpm7rDdc/FspaM2+4wf GYQvyYRQ8k6oseM/hyyr3W782bGMMPhAtbXkKISt6UQCiA0fGZDr2wBUhcFkdbEgrUK0bdMpuIqIC QL27pK7oRWN30pNdoNVw==; Received: from localhost ([::1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.94.2 #2 (Red Hat Linux)) id 1oQHHa-00GDvl-T5; Mon, 22 Aug 2022 23:56:39 +0000 Received: from lelv0143.ext.ti.com ([198.47.23.248]) by bombadil.infradead.org with esmtps (Exim 4.94.2 #2 (Red Hat Linux)) id 1oQHHO-00GDs4-Uw for linux-arm-kernel@lists.infradead.org; Mon, 22 Aug 2022 23:56:28 +0000 Received: from fllv0035.itg.ti.com ([10.64.41.0]) by lelv0143.ext.ti.com (8.15.2/8.15.2) with ESMTP id 27MNuGWA101777; Mon, 22 Aug 2022 18:56:16 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ti.com; s=ti-com-17Q1; t=1661212576; bh=uRSflq3dI94CdsfcAqGZMQZPBgEhNCjV5o0i5fgeBdM=; h=From:To:CC:Subject:Date; b=ptH+8UbUYITe1Esjb7G/5an2OYxTFgGGcAosFSRSn2uvhutiCLPBag9rWnxKriy5l z266kpXtOUo4Gl+7k3VAsSdUgp/PtbzIjNoNvBDUQcrqTovT6kRdPXGANgYmGSoTIw EcD2hfN/4f+Cmm5oF5lmawYbjxy7WrGRsJpxWksw= Received: from DLEE111.ent.ti.com (dlee111.ent.ti.com [157.170.170.22]) by fllv0035.itg.ti.com (8.15.2/8.15.2) with ESMTPS id 27MNuGYd027535 (version=TLSv1.2 cipher=AES256-GCM-SHA384 bits=256 verify=FAIL); Mon, 22 Aug 2022 18:56:16 -0500 Received: from DLEE106.ent.ti.com (157.170.170.36) by DLEE111.ent.ti.com (157.170.170.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.6; Mon, 22 Aug 2022 18:56:16 -0500 Received: from fllv0039.itg.ti.com (10.64.41.19) by DLEE106.ent.ti.com (157.170.170.36) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256_P256) id 15.1.2507.6 via Frontend Transport; Mon, 22 Aug 2022 18:56:16 -0500 Received: from ula0226330.dal.design.ti.com (ileax41-snat.itg.ti.com [10.172.224.153]) by fllv0039.itg.ti.com (8.15.2/8.15.2) with ESMTP id 27MNuFhr037995; Mon, 22 Aug 2022 18:56:16 -0500 From: Andrew Davis To: Nishanth Menon , Vignesh Raghavendra , Santosh Shilimkar , Russell King , , CC: Andrew Davis Subject: [PATCH] ARM: keystone: Replace platform SMP with PSCI Date: Mon, 22 Aug 2022 18:56:15 -0500 Message-ID: <20220822235615.7788-1-afd@ti.com> X-Mailer: git-send-email 2.36.1 MIME-Version: 1.0 X-EXCLAIMER-MD-CONFIG: e1e8a2fd-e40a-4ac6-ac9b-f7e9cc9ee180 X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20220822_165627_147119_8E85B2A5 X-CRM114-Status: GOOD ( 15.07 ) X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+linux-arm-kernel=archiver.kernel.org@lists.infradead.org The KS2 boot monitor supports PSCI commands. These are already defined in DT for KS2. We can drop this platform override and remove related code without changing SMP. Do this here. Signed-off-by: Andrew Davis --- arch/arm/mach-keystone/Makefile | 4 +-- arch/arm/mach-keystone/keystone.c | 2 -- arch/arm/mach-keystone/keystone.h | 5 ---- arch/arm/mach-keystone/platsmp.c | 41 ------------------------------- arch/arm/mach-keystone/smc.S | 26 -------------------- 5 files changed, 1 insertion(+), 77 deletions(-) delete mode 100644 arch/arm/mach-keystone/platsmp.c delete mode 100644 arch/arm/mach-keystone/smc.S diff --git a/arch/arm/mach-keystone/Makefile b/arch/arm/mach-keystone/Makefile index 739b38be5696..0c1d54aec60f 100644 --- a/arch/arm/mach-keystone/Makefile +++ b/arch/arm/mach-keystone/Makefile @@ -1,7 +1,5 @@ # SPDX-License-Identifier: GPL-2.0 -obj-y := keystone.o smc.o - -obj-$(CONFIG_SMP) += platsmp.o +obj-y := keystone.o # PM domain driver for Keystone SOCs obj-$(CONFIG_ARCH_KEYSTONE) += pm_domain.o diff --git a/arch/arm/mach-keystone/keystone.c b/arch/arm/mach-keystone/keystone.c index 2c647bdf8d25..aa352c2de313 100644 --- a/arch/arm/mach-keystone/keystone.c +++ b/arch/arm/mach-keystone/keystone.c @@ -18,7 +18,6 @@ #include #include #include -#include #include #include "memory.h" @@ -103,7 +102,6 @@ DT_MACHINE_START(KEYSTONE, "Keystone") #if defined(CONFIG_ZONE_DMA) && defined(CONFIG_ARM_LPAE) .dma_zone_size = SZ_2G, #endif - .smp = smp_ops(keystone_smp_ops), .init_machine = keystone_init, .dt_compat = keystone_match, .pv_fixup = keystone_pv_fixup, diff --git a/arch/arm/mach-keystone/keystone.h b/arch/arm/mach-keystone/keystone.h index 438e531cc007..71ff8cd2ee4a 100644 --- a/arch/arm/mach-keystone/keystone.h +++ b/arch/arm/mach-keystone/keystone.h @@ -8,13 +8,8 @@ #ifndef __KEYSTONE_H__ #define __KEYSTONE_H__ -#define KEYSTONE_MON_CPU_UP_IDX 0x00 - #ifndef __ASSEMBLER__ -extern const struct smp_operations keystone_smp_ops; -extern void secondary_startup(void); -extern u32 keystone_cpu_smc(u32 command, u32 cpu, u32 addr); extern int keystone_pm_runtime_init(void); #endif /* __ASSEMBLER__ */ diff --git a/arch/arm/mach-keystone/platsmp.c b/arch/arm/mach-keystone/platsmp.c deleted file mode 100644 index 673fcf3b34b1..000000000000 --- a/arch/arm/mach-keystone/platsmp.c +++ /dev/null @@ -1,41 +0,0 @@ -// SPDX-License-Identifier: GPL-2.0-only -/* - * Keystone SOC SMP platform code - * - * Copyright 2013 Texas Instruments, Inc. - * Cyril Chemparathy - * Santosh Shilimkar - * - * Based on platsmp.c, Copyright (C) 2002 ARM Ltd. - */ - -#include -#include -#include -#include - -#include -#include -#include - -#include "keystone.h" - -static int keystone_smp_boot_secondary(unsigned int cpu, - struct task_struct *idle) -{ - unsigned long start = virt_to_idmap(&secondary_startup); - int error; - - pr_debug("keystone-smp: booting cpu %d, vector %08lx\n", - cpu, start); - - error = keystone_cpu_smc(KEYSTONE_MON_CPU_UP_IDX, cpu, start); - if (error) - pr_err("CPU %d bringup failed with %d\n", cpu, error); - - return error; -} - -const struct smp_operations keystone_smp_ops __initconst = { - .smp_boot_secondary = keystone_smp_boot_secondary, -}; diff --git a/arch/arm/mach-keystone/smc.S b/arch/arm/mach-keystone/smc.S deleted file mode 100644 index 21ef75cf5370..000000000000 --- a/arch/arm/mach-keystone/smc.S +++ /dev/null @@ -1,26 +0,0 @@ -/* SPDX-License-Identifier: GPL-2.0-only */ -/* - * Keystone Secure APIs - * - * Copyright (C) 2013 Texas Instruments, Inc. - * Santosh Shilimkar - */ - -#include - -/** - * u32 keystone_cpu_smc(u32 command, u32 cpu, u32 addr) - * - * Low level CPU monitor API - * @command: Monitor command. - * @cpu: CPU Number - * @addr: Kernel jump address for boot CPU - * - * Return: Non zero value on failure - */ - .arch_extension sec -ENTRY(keystone_cpu_smc) - stmfd sp!, {r4-r11, lr} - smc #0 - ldmfd sp!, {r4-r11, pc} -ENDPROC(keystone_cpu_smc)