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

Need guidance to support reading GICR_TYPER (64 bit register) on Aarch32_v8r


  • To: Julien Grall <julien@xxxxxxx>, "Stabellini, Stefano" <stefano.stabellini@xxxxxxx>, bertrand Marquis <Bertrand.Marquis@xxxxxxx>, "Volodymyr_Babchuk@xxxxxxxx" <Volodymyr_Babchuk@xxxxxxxx>, Henry Wang <Henry.Wang@xxxxxxx>, Penny Zheng <Penny.Zheng@xxxxxxx>
  • From: Ayan Kumar Halder <ayankuma@xxxxxxx>
  • Date: Thu, 13 Oct 2022 12:47:39 +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=q51t3g8JHDy475L9KMyzHLlrXzyn638WimG9W/daC24=; b=Fd8RGOU3ocI84wuSuStxPtGjgIm28Z9AtT9hcCLkvsSdhp4Io2OcwLqF1GMwWhAxq6XQAOJfKcGEHgxPFeOfSzBaDfuewzQ6aqRR+RbJCynWcjy+/n/lYRJA2U2a48Av2KyXdi/VdqaBdEKg2Ao36f/adnEJXZ91A2ByDwW3iNuTFMkh0KYfVizNpnBQA6KJ9kVNHEuh1oheQ+4Gmbgw7rnurFNZVAuvom7B1E5FqQhu40iz2ZeIHcTR80yfUqzh8DR58eJsPooC+KpB8TS+VtMj3arMIq3HOKRI5x+MOWsEjE0qnKl/9AVm8upC3znWvZcc1mOaC88VA8CEWFowdw==
  • Arc-seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=DwkRU0fIxBfOtIXYXPBnOL1ps62i71kOd4TWmabXXW8VG/JvHBnIM1dlwpEiPHOICwJpUCKLk3gbfGZLr3PlTXy5uMRCpcIdoNA/DDUtm2IsvsMaD3fFsaFd3LxKFfW3jZMW5M86sn3+h/zYUEE9h0st6eFMLx+TVoZ8YRjkpdejcMXz/MTKtfxMdNzfe4DFkH8oh1DsOkWhWcxOh+xcJQ+dnykrnv/JJyDaz2spVsdMGZjGvlkq7zmvtGcwaLwI0pUdh7v/aUpjEkks2d1ngLmpCJoledMuq9E7R2Jxr9mZOJdQ4Hhz3Bh7Bd/4UfmefoTimfJXmcG5MC+xyoyO9Q==
  • Authentication-results: dkim=none (message not signed) header.d=none;dmarc=none action=none header.from=amd.com;
  • Cc: Jaxson Han <jaxson.han@xxxxxxx>, "xen-devel@xxxxxxxxxxxxxxxxxxxx" <xen-devel@xxxxxxxxxxxxxxxxxxxx>
  • Delivery-date: Thu, 13 Oct 2022 11:48:04 +0000
  • List-id: Xen developer discussion <xen-devel.lists.xenproject.org>

Hi Arm mantainers/Folks,

Please refer to the discussion https://github.com/zephyrproject-rtos/zephyr/pull/51163 .

We intend to run Zephyr as a domU guest on Xen on Aarch32_v8R fixed virtual platform.

Zephyr is trying to read GICR_TYPER which is a 64 bit register using ldrd instruction.

As GICR is emulated by Xen, so this instruction gets trapped with HSR = 0x9200000c.

As ISV is 0, so Xen cannot emulate this instruction.

The proposed solution is to use two sys_read32() on GICR_TYPER to return the lower and upper 32 bits.

With this, HSR = 0x9383 000c, ISV=1 so ISS is valid.

Now, for Xen to emulate this read, I have proposed the modifications (in my last comment).

1. Does the proposed modifications look sane ? Or could there be a better alternative ?

2. As there is no 32 bit variant for GICR_TYPER, so does it make sense to read this register at all ?

Kind regards,

Ayan




 


Rackspace

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