[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v1] xen/arm: arm32: Add support to identify the Cortex-R52 processor


  • To: Julien Grall <julien@xxxxxxx>, Ayan Kumar Halder <ayan.kumar.halder@xxxxxxx>, xen-devel@xxxxxxxxxxxxxxxxxxxx
  • From: Ayan Kumar Halder <ayankuma@xxxxxxx>
  • Date: Tue, 20 Jun 2023 19:28:54 +0100
  • Arc-authentication-results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=amd.com; dmarc=pass action=none header.from=amd.com; dkim=pass header.d=amd.com; arc=none
  • Arc-message-signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=Um1Q1Vanm/D1QbI7wp0XIu2hJX7VGk0raR4T4yWZFsI=; b=ZhlOcL8d0+DysBiTikokFYFzzbs0zlT/N2qU4s3b+JUEPMwasv/moOESx9mfw+GYj72CvI+gfBpKk6e5tyF+OmrAEWThpK3uJc1xyQXYPgSzqt5A9ZHWxno1WM8iqwZoBZy1fF2QeiGO3o8hghn55y1bjTqTX0eyR97uZTCDJ2hEtLf9D7u5DoWgHPiqpbAOAOeRPTUabY+rrpk3Fkcavj4oTbndqdeDpMAh4DJgKzmYvgBu9KfqAe9vfE3krWELtpPKQ+Y8wSr9L7/X4yElhMoEFKlg1/Gf08vXLhX0J0Fum05xbHR/MMnWU1P/SA0xuTP7yJjs+w+Jmbl9N9kcPQ==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=IjL8m6FAhVhybR9MP2n/maU9RhTAtTKr04Lkqj/hV18d4RBxwjpRHva6BP0m+tQeJy+q4ZdOzQVO2Mlnsspw2Qiy+MgQjL1e9Y6t1IMNEHkt5KcEtkxY0tseZ61guPhgtO7vmC8c81n4nap+W8ueAQ12AqVF9KLgP75u0Rs4zXrGHozLyJ3xj5JnLJ8vOeyqD9W/AKwqU+uBSHqYdE5SOtAl+aA+66iBMwgpjump9CT8vAUf9G/+EAfEEBLwpG7MF2v0heFhRtrw8dYWp3zWiduxLhQTQQ/gKFRhjSfmiSwqWUgLmr0V5a4LNt0E0EscEw5qLXXHrxzofFRZVFWaVQ==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com;
  • Cc: sstabellini@xxxxxxxxxx, stefano.stabellini@xxxxxxx, Volodymyr_Babchuk@xxxxxxxx, bertrand.marquis@xxxxxxx
  • Delivery-date: Tue, 20 Jun 2023 18:29:16 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>


On 20/06/2023 17:41, Julien Grall wrote:
Hi,
Hi Julien,

On 20/06/2023 16:17, Ayan Kumar Halder wrote:
Add a special configuration (CONFIG_AARCH32_V8R) to setup the Cortex-R52
specifics.

Cortex-R52 is an Arm-V8R AArch32 processor.

Refer ARM DDI 0487I.a ID081822, G8-9647, G8.2.112 MIDR,
bits[31:24] = 0x41 , Arm Ltd
bits[23:20] = Implementation defined
bits[19:16] = 0xf , Arch features are individually identified
bits[15:4] = Implementation defined
bits[3:0] = Implementation defined

Thus, the processor id is 0x410f0000 and the processor id mask is
0xff0f0000

Also, there is no special initialization required for R52.

Are you saying that Xen upstream + this patch will boot on Cortex-R52?

This patch will help for earlyboot of Xen. With this patch, cpu_init() will work on Cortex-R52.

There will be changes required for the MPU configuration, but that will be sent after Penny's patch serie "[PATCH v2 00/41] xen/arm: Add Armv8-R64 MPU support to Xen - Part#1" is upstreamed.

My aim is to extract the non-dependent changes and send them for review.



Signed-off-by: Ayan Kumar Halder <ayan.kumar.halder@xxxxxxx>
---
  xen/arch/arm/Kconfig         |  7 +++++++
  xen/arch/arm/arm32/Makefile  |  1 +
  xen/arch/arm/arm32/proc-v8.S | 32 ++++++++++++++++++++++++++++++++
  3 files changed, 40 insertions(+)
  create mode 100644 xen/arch/arm/arm32/proc-v8.S

diff --git a/xen/arch/arm/Kconfig b/xen/arch/arm/Kconfig
index 61e581b8c2..c45753a2dd 100644
--- a/xen/arch/arm/Kconfig
+++ b/xen/arch/arm/Kconfig
@@ -3,6 +3,13 @@ config ARM_32
      depends on "$(ARCH)" = "arm32"
      select ARCH_MAP_DOMAIN_PAGE
  +config AARCH32_V8R
+    bool "AArch32 Arm V8R Support (UNSUPPORTED)" if UNSUPPORTED
+    def_bool n
+    depends on ARM_32
+    help
+      This option enables Armv8-R profile for AArch32.
+
  config ARM_64
      def_bool y
      depends on !ARM_32
diff --git a/xen/arch/arm/arm32/Makefile b/xen/arch/arm/arm32/Makefile
index 520fb42054..2ab808a7a8 100644
--- a/xen/arch/arm/arm32/Makefile
+++ b/xen/arch/arm/arm32/Makefile
@@ -8,6 +8,7 @@ obj-y += head.o
  obj-y += insn.o
  obj-$(CONFIG_LIVEPATCH) += livepatch.o
  obj-y += proc-v7.o proc-caxx.o
+obj-$(CONFIG_AARCH32_V8R) += proc-v8.o
  obj-y += smpboot.o
  obj-y += traps.o
  obj-y += vfp.o
diff --git a/xen/arch/arm/arm32/proc-v8.S b/xen/arch/arm/arm32/proc-v8.S
new file mode 100644
index 0000000000..c5a566b165
--- /dev/null
+++ b/xen/arch/arm/arm32/proc-v8.S

Below you say the file will contain v8r specific initialization. So please rename it to proc-v8r.S.

Ack.

- Ayan


Cheers,




 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.