From mboxrd@z Thu Jan 1 00:00:00 1970 From: Ian Campbell Subject: Re: [PATCH v3 14/15] xen/arm: vgic: Drop iactive, ipend, pendsgi field Date: Thu, 19 Feb 2015 16:09:05 +0000 Message-ID: <1424362145.30924.108.camel@citrix.com> References: <1424098255-22490-1-git-send-email-julien.grall@linaro.org> <1424098255-22490-15-git-send-email-julien.grall@linaro.org> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: Received: from mail6.bemta4.messagelabs.com ([85.158.143.247]) by lists.xen.org with esmtp (Exim 4.72) (envelope-from ) id 1YOTi0-0005Wg-7A for xen-devel@lists.xenproject.org; Thu, 19 Feb 2015 16:12:12 +0000 In-Reply-To: <1424098255-22490-15-git-send-email-julien.grall@linaro.org> 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: xen-devel@lists.xenproject.org, Vijaya.Kumar@caviumnetworks.com, tim@xen.org, stefano.stabellini@citrix.com List-Id: xen-devel@lists.xenproject.org On Mon, 2015-02-16 at 14:50 +0000, Julien Grall wrote: > The current VGIC code doesn't support to change the pending and active status > of an IRQ via the (re-)distributor. > > Futhermore, all the access size wasn't support correctly and some > registers was implemented as write-ignore. The latter make very > difficult for a kernel developer to find that we don't support R/W to > those registers. > > Make the support consistent: > - read will return 0 (RAZ) > - write will print an error and inject a data abort to the guest > > Also, those fields was never set and field such as ipend and pendsgi was > doing the same jobs. > > Rather than wasting memory, we should better drop it. We could re-introduce > them if we need it when the support will be made. > > Signed-off-by: Julien Grall > > > case GICD_ICACTIVER ... GICD_ICACTIVERN: > if ( dabt.size != DABT_WORD ) goto bad_width; > - rank = vgic_rank_offset(v, 1, gicd_reg - GICD_ICACTIVER, DABT_WORD); > - if ( rank == NULL) goto write_ignore; > - vgic_lock_rank(v, rank, flags); > - rank->iactive &= ~*r; > - vgic_unlock_rank(v, rank, flags); > - return 1; > + printk(XENLOG_ERR I think you meant XENLOG_G_ERR here? If that's the case then I can fix + ack as I commit. Ian.