From mboxrd@z Thu Jan 1 00:00:00 1970 From: Julien Grall Subject: Re: [PATCH v4 10/17] xen: arm: define guest virtual platform in API headers Date: Tue, 12 Nov 2013 19:45:05 +0000 Message-ID: <52828541.8000707@linaro.org> References: <1384277936.10204.111.camel@kazak.uk.xensource.com> <1384277960-14426-10-git-send-email-ian.campbell@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <1384277960-14426-10-git-send-email-ian.campbell@citrix.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: Ian Campbell , xen-devel@lists.xen.org Cc: tim@xen.org, stefano.stabellini@eu.citrix.com List-Id: xen-devel@lists.xenproject.org On 11/12/2013 05:39 PM, Ian Campbell wrote: > The tools and the hypervisor need to agree on various aspects of the guest > environment, such as interrupt numbers, memory layout, initial register values > for registers which are implementation defined etc. Therefore move the > associated defines into the public interface headers, or create them as > necessary. > > This just exposes the current de-facto standard guest layout, which may be > subject to change in the future. This deliberately does not make the guest > layout dynamic since there is currently no need. > > These values should not be exposed to guests, they should find these things > out via device tree or should not be relying on implementation defined > defaults. > > Various bits of the hypervisor needed to change to configure dom0 with the real > platform values while using the virtual platform configuration for guests. > Arrange for this where appropriate and plumb through as needed. > > We also need to expose some 64-bit values (e.g. PSR_GUEST64_INIT) for the > benefit of 32 bit toolstacks building 64 bit guests. > > Signed-off-by: Ian Campbell > --- > v4: dropped a spurious aarch64 ifdef > improved some comments and expand the commit message to clarify that this > is just implementing the current static de-facto setup. > put back PSR_GUEST32_INIT which disapeared somewhere along the line > --- > tools/libxc/xc_dom_arm.c | 4 +-- > xen/arch/arm/domain.c | 8 ++++-- > xen/arch/arm/domain_build.c | 13 +++++---- > xen/arch/arm/gic.c | 21 +++++++++----- > xen/arch/arm/psci.c | 2 +- > xen/arch/arm/traps.c | 2 +- > xen/arch/arm/vtimer.c | 13 ++++++--- > xen/include/asm-arm/domain.h | 1 + > xen/include/asm-arm/event.h | 3 +- > xen/include/asm-arm/gic.h | 3 -- > xen/include/asm-arm/processor.h | 7 ----- > xen/include/asm-arm/psci.h | 5 ---- > xen/include/public/arch-arm.h | 58 +++++++++++++++++++++++++++++++-------- > 13 files changed, 90 insertions(+), 50 deletions(-) > [..] > diff --git a/xen/include/asm-arm/domain.h b/xen/include/asm-arm/domain.h > index 67bfbbc..53847a9 100644 > --- a/xen/include/asm-arm/domain.h > +++ b/xen/include/asm-arm/domain.h > @@ -112,6 +112,7 @@ struct arch_domain > spinlock_t lock; > } vuart; > > + int evtchn_irq; IRQ code uses unsigned int. Can you use unsigned int also here? With this minor change: Acked-by: Julien Grall > } __cacheline_aligned; > > struct arch_vcpu [..] -- Julien Grall