From nobody Tue Apr 23 18:07:27 2024 Delivered-To: importer@patchew.org Received-SPF: none (zoho.com: 192.237.175.120 is neither permitted nor denied by domain of lists.xenproject.org) client-ip=192.237.175.120; envelope-from=xen-devel-bounces@lists.xenproject.org; helo=lists.xenproject.org; Authentication-Results: mx.zohomail.com; dkim=fail; spf=none (zoho.com: 192.237.175.120 is neither permitted nor denied by domain of lists.xenproject.org) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail(p=none dis=none) header.from=gmail.com ARC-Seal: i=1; a=rsa-sha256; t=1561147472; cv=none; d=zoho.com; s=zohoarc; b=W5ZEaPeSnCFeRLME+kMHG+sr61xiOur25A/KPOUWqEX/ySu5H5wxSOiyXYKcdUlsfQDLRMFNu5EErYFVc7k62ycckv3hTDItUEQp0jDfhjJmtjKcgWZUFWuc4EdPPP25W7lMINSLkMgFXWY1tdBibxJkYJpPqfXGDtcPH2oFamI= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zoho.com; s=zohoarc; t=1561147472; h=Content-Type:Content-Transfer-Encoding:Cc:Date:From:List-Subscribe:List-Post:List-Id:List-Help:List-Unsubscribe:MIME-Version:Message-ID:Sender:Subject:To:ARC-Authentication-Results; bh=N5CvoGkg3XQ/6ag/FwHnEnOQSBQ0bEg7r49T5d9J7DM=; b=OhdCgX/ZI1Gm26qHF7IWb82UVfU3JQ34WWgw9aINGiZXYr3LF3Jteb2AZqAKUQJ9qeJ+JLvLMhzsECLMUTh6DsgI8m94HaO/7P7vMAb8KaHkVVt5uBhr6wHad+bhBEIfo6ma3FWiTp+V6PkuVzKt/gDbszfMnfQm0OuA/ArCiGc= ARC-Authentication-Results: i=1; mx.zoho.com; dkim=fail; spf=none (zoho.com: 192.237.175.120 is neither permitted nor denied by domain of lists.xenproject.org) smtp.mailfrom=xen-devel-bounces@lists.xenproject.org; dmarc=fail header.from= (p=none dis=none) header.from= Return-Path: Received: from lists.xenproject.org (lists.xenproject.org [192.237.175.120]) by mx.zohomail.com with SMTPS id 1561147472215861.3668484802483; Fri, 21 Jun 2019 13:04:32 -0700 (PDT) Received: from localhost ([127.0.0.1] helo=lists.xenproject.org) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hePk1-0003dB-8v; Fri, 21 Jun 2019 20:02:33 +0000 Received: from us1-rack-dfw2.inumbo.com ([104.130.134.6]) by lists.xenproject.org with esmtp (Exim 4.89) (envelope-from ) id 1hePk0-0003d6-SO for xen-devel@lists.xenproject.org; Fri, 21 Jun 2019 20:02:32 +0000 Received: from mail-ed1-x543.google.com (unknown [2a00:1450:4864:20::543]) by us1-rack-dfw2.inumbo.com (Halon) with ESMTPS id 80774518-945f-11e9-8980-bc764e045a96; Fri, 21 Jun 2019 20:02:31 +0000 (UTC) Received: by mail-ed1-x543.google.com with SMTP id w13so11724837eds.4 for ; Fri, 21 Jun 2019 13:02:31 -0700 (PDT) Received: from debian.fritz.box (200116b8668690001e4bd6fffef946e6.dip.versatel-1u1.de. [2001:16b8:6686:9000:1e4b:d6ff:fef9:46e6]) by smtp.gmail.com with ESMTPSA id e19sm579203eja.91.2019.06.21.13.02.29 (version=TLS1_3 cipher=AEAD-AES256-GCM-SHA384 bits=256/256); Fri, 21 Jun 2019 13:02:29 -0700 (PDT) X-Inumbo-ID: 80774518-945f-11e9-8980-bc764e045a96 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Qv5gft6V51d/FbS1RmsZMbr3hsnYZikVWsXJiUeJ2BI=; b=H+Ac7x7kZdbezeXG/Lw8A76p7OYHhVc5a7wvCo6tfU8OPEYkAsuWjV4B/wPj5Fp9zx 9V7SfRVuS3+zlqr2NR6uLOpeOC6Yd+5IMSALPVdZOaOonBmyrJxuFUmGcPztBANn9PGO aXdAx8JRLdTTHlV79MsCiQGVCNIyFYf8vAolh2eOcA/fJYoaIUCMXy9rSlKE3WGK8cgD Ib+xwGYGqDSUVFgMvcrMIeWArBQqGGcSVIxshoFqLdGN2ncTNY9Mr2ZQTgPZQufcDP97 WiTnPaTglAUBayv6uKaXxrlDOa3GM+ZiAtDUL5jlQLFUwZdDHftIApeIPpHhBIEHB0kl ZBEw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=Qv5gft6V51d/FbS1RmsZMbr3hsnYZikVWsXJiUeJ2BI=; b=It08hqrbgY96BI4HAwxOACF/rPFrgssxeqp+QnpjaJ+whniCcMKIl+5UM0uVaIHRj9 N3MHS6/zd1MFtyNXV6pr0T7mwjrjRrlp72d5Yqwguoa2ijYnXqT3ykY+/LQ38Q4bIAnn MbLgdv0ZD1xq118y4zNq4zmKWQpXf7L8sKPcCakzbdGrmAZNVCg/1uG+6tCh/zezSbzf oltjwhuMITW6xdeUTD2Lq2joo9PqQfH3dtXlqyuvRxQWMH7C3kvZwBx/VgZuHfwwSoqk AwP93mtHOUXYiMgP0OB6SVj09/A/pG4rvfcddoylIWWtjL1gcQFvztLCyvhjIPcx/D9b Gqmg== X-Gm-Message-State: APjAAAU+JR7fGUR+TSNHthTh+6P160EYufM847jbf/AXSmZMBYPBm3lh i23xfiogMV/z7LwpPPc4fubmWgMr X-Google-Smtp-Source: APXvYqzQIwZqR0/MsHu5jt3WIQOviWG+BhjiTqTawX1kzvDZVlUak7HxG+phIep79XZ+Hv6uqybpog== X-Received: by 2002:a50:f49a:: with SMTP id s26mr76983562edm.191.1561147350285; Fri, 21 Jun 2019 13:02:30 -0700 (PDT) From: Denis Obrezkov To: xen-devel@lists.xenproject.org Date: Fri, 21 Jun 2019 22:02:19 +0200 Message-Id: X-Mailer: git-send-email 2.20.1 MIME-Version: 1.0 Subject: [Xen-devel] [PATCH] xen/arm: Switch OMAP5 secondary cores into hyp mode X-BeenThere: xen-devel@lists.xenproject.org X-Mailman-Version: 2.1.23 Precedence: list List-Id: Xen developer discussion List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Cc: julien.grall@arm.com, tim@xen.org, Denis Obrezkov Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Errors-To: xen-devel-bounces@lists.xenproject.org Sender: "Xen-devel" X-ZohoMail-DKIM: fail (Header signature does not verify) This function allows xen to bring secondary CPU cores into non-secure HYP mode. This is done by using a Secure Monitor call. Signed-off-by: Denis Obrezkov --- xen/arch/arm/arm32/head.S | 11 ++++++++++- xen/arch/arm/platforms/omap5.c | 5 +++-- xen/include/asm-arm/platforms/omap5.h | 3 +++ 3 files changed, 16 insertions(+), 3 deletions(-) diff --git a/xen/arch/arm/arm32/head.S b/xen/arch/arm/arm32/head.S index 5f817d473e..120e034934 100644 --- a/xen/arch/arm/arm32/head.S +++ b/xen/arch/arm/arm32/head.S @@ -36,6 +36,10 @@ #include EARLY_PRINTK_INC #endif =20 + +#define API_HYP_ENTRY 0x102 +#define AUX_CORE_BOOT0_PA 0x48281800 + /* * Common register usage in this file: * r0 - @@ -113,6 +117,12 @@ past_zImage: =20 b common_start =20 +GLOBAL(omap5_init_secondary) + ldr r12, =3DAPI_HYP_ENTRY + adr r0, init_secondary + dsb + smc #0 + GLOBAL(init_secondary) cpsid aif /* Disable all interrupts */ =20 @@ -159,7 +169,6 @@ common_start: PRINT("- CPU doesn't support the virtualization extensions -\r\n") b fail 1: - /* Check that we're already in Hyp mode */ mrs r0, cpsr and r0, r0, #0x1f /* Mode is in the low 5 bits of CPSR = */ diff --git a/xen/arch/arm/platforms/omap5.c b/xen/arch/arm/platforms/omap5.c index aee24e4d28..6b5cc15af3 100644 --- a/xen/arch/arm/platforms/omap5.c +++ b/xen/arch/arm/platforms/omap5.c @@ -128,8 +128,9 @@ static int __init omap5_smp_init(void) } =20 printk("Set AuxCoreBoot1 to %"PRIpaddr" (%p)\n", - __pa(init_secondary), init_secondary); - writel(__pa(init_secondary), wugen_base + OMAP_AUX_CORE_BOOT_1_OFFSET); + __pa(omap5_init_secondary), omap5_init_secondary); + writel(__pa(omap5_init_secondary),=20 + wugen_base + OMAP_AUX_CORE_BOOT_1_OFFSET); =20 printk("Set AuxCoreBoot0 to 0x20\n"); writel(0x20, wugen_base + OMAP_AUX_CORE_BOOT_0_OFFSET); diff --git a/xen/include/asm-arm/platforms/omap5.h b/xen/include/asm-arm/pl= atforms/omap5.h index c559c84b61..732b27f403 100644 --- a/xen/include/asm-arm/platforms/omap5.h +++ b/xen/include/asm-arm/platforms/omap5.h @@ -22,6 +22,9 @@ =20 #endif /* __ASM_ARM_PLATFORMS_OMAP5_H */ =20 +/* Secondary cpu omap5 specific init routine */ +extern void omap5_init_secondary(void); + /* * Local variables: * mode: C --=20 2.20.1 _______________________________________________ Xen-devel mailing list Xen-devel@lists.xenproject.org https://lists.xenproject.org/mailman/listinfo/xen-devel