From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH] xen/arm: gic-v3: Implement correctly the callback send_SGI Date: Mon, 11 May 2015 09:34:02 +0100 Message-ID: <1431333242.2660.555.camel@citrix.com> References: <1430159464-24599-1-git-send-email-julien.grall@citrix.com> <1431093694.2660.468.camel@citrix.com> <554CC993.6040204@citrix.com> <1431100308.2660.523.camel@citrix.com> <554CEA6A.30907@gmail.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta14.messagelabs.com ([193.109.254.103]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1YrjA6-0007rd-Ny for xen-devel@lists.xenproject.org; Mon, 11 May 2015 08:34:06 +0000 In-Reply-To: <554CEA6A.30907@gmail.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: Julien Grall Cc: Julien Grall , xen-devel@lists.xenproject.org, Chen Baozi , tim@xen.org, stefano.stabellini@citrix.com List-Id: xen-devel@lists.xenproject.org On Fri, 2015-05-08 at 17:55 +0100, Julien Grall wrote: > Hi Ian, > > On 08/05/15 16:51, Ian Campbell wrote: > > On Fri, 2015-05-08 at 15:34 +0100, Julien Grall wrote: > >> On 08/05/15 15:01, Ian Campbell wrote: > >>> I think you should just cast to uint64_t and WRITE_SYSREG64. > >> > >> Right, I blindly re-use the WRITE_SYSREG as it was done on the previous > >> implementation. > >> > >> Although, the gic-v3 code seems to always use {READ,WRITE}_SYSREG. This > >> seems wrong too. I will send a patch for replace the calls by the the > >> 64-bit version. > > > > Thanks (although do make sure each register really is 64-bit...) > > I looked more closely to the call of READ_SYSREG/WRITE_SYSREG in the > GICv3 code. They are use for: > - ICH_LR: 64-bit on aarch64 and 32-bit on aarch32. Although, for > completion we would have to read ICH_LRC for aarch32. > - ICC_SGIR1_EL1: 64-bit on both aarch64 and aarch32. > > So the former is valid although it won't work correctly if someone > decide to use GICv3 on AArch32. Right, you would need a #define in cpregs.h for the arm32 case. > Although, I expect seen more issue than > this one. So I will ignore it. > > I will take care of the later in the new version of this patch. Thanks, Ian.