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

Re: [Xen-devel] [PATCH] xen: arm: document which hypercalls (and subops) are supported on ARM



At 11:59 +0100 on 08 Aug (1375963190), Ian Campbell wrote:
> ping?

Acked-by: Tim Deegan <tim@xxxxxxx>?

> There was some discussion but I think the conclusion was to go with this
> version, but no acks yet.
> 
> On Mon, 2013-07-22 at 19:17 +0100, Ian Campbell wrote:
> > From: Ian Campbell <ian.campbell@xxxxxxxxxx>
> > 
> > There are many hypercalls which make no sense or which are not supported on 
> > ARM
> > systems but it's not all that obvious which ones we do support. So lets try 
> > and
> > document the hypercalls which are useful on ARM.
> > 
> > I'm not sure this is the best way to go about this, I'm open to other ideas.
> > 
> > Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
> > ---
> >  xen/include/public/arch-arm.h | 66 
> > +++++++++++++++++++++++++++++++++++++++++--
> >  1 file changed, 64 insertions(+), 2 deletions(-)
> > 
> > diff --git a/xen/include/public/arch-arm.h b/xen/include/public/arch-arm.h
> > index 8aa62d3..b4a20bb 100644
> > --- a/xen/include/public/arch-arm.h
> > +++ b/xen/include/public/arch-arm.h
> > @@ -27,8 +27,8 @@
> >  #ifndef __XEN_PUBLIC_ARCH_ARM_H__
> >  #define __XEN_PUBLIC_ARCH_ARM_H__
> >  
> > -/* hypercall calling convention
> > - * ----------------------------
> > +/*
> > + * `incontents 50 arm_abi Hypercall Calling Convention
> >   *
> >   * A hypercall is issued using the ARM HVC instruction.
> >   *
> > @@ -60,6 +60,68 @@
> >   * hypercall arguments are always little endian.
> >   */
> >  
> > +/*
> > + * `incontents 55 arm_hcall Supported Hypercalls
> > + *
> > + * Xen on ARM makes extensive use of hardware facilities and therefore
> > + * only a subset of the potential hypercalls are required.
> > + *
> > + * Since ARM uses second stage paging any machine/physical addresses
> > + * passed to hypercalls are Guest Physical Addresses (Intermediate
> > + * Physical Addresses) unless otherwise noted.
> > + *
> > + * The following hypercalls (and sub operations) are supported on the
> > + * ARM platform. Other hypercalls should be considered
> > + * unavailable/unsupported.
> > + *
> > + *  HYPERVISOR_memory_op
> > + *   All generic sub-operations.
> > + *
> > + *   In addition the following arch specific sub-ops:
> > + *    * XENMEM_add_to_physmap
> > + *    * XENMEM_add_to_physmap_range
> > + *
> > + *  HYPERVISOR_domctl
> > + *   All generic sub-operations, with the exception of:
> > + *    * XEN_DOMCTL_iomem_permission (not yet implemented)
> > + *    * XEN_DOMCTL_irq_permission (not yet implemented)
> > + *
> > + *  HYPERVISOR_sched_op
> > + *   All generic sub-operations, with the exception of:
> > + *    * SCHEDOP_block -- prefer wfi hardware instruction
> > + *
> > + *  HYPERVISOR_console_io
> > + *   All generic sub-operations
> > + *
> > + *  HYPERVISOR_xen_version
> > + *   All generic sub-operations
> > + *
> > + *  HYPERVISOR_event_channel_op
> > + *   All generic sub-operations
> > + *
> > + *  HYPERVISOR_physdev_op
> > + *   No sub-operations are currenty supported
> > + *
> > + *  HYPERVISOR_sysctl
> > + *   All generic sub-operations, with the exception of:
> > + *    * XEN_SYSCTL_page_offline_op
> > + *    * XEN_SYSCTL_get_pmstat
> > + *    * XEN_SYSCTL_pm_op
> > + *
> > + *  HYPERVISOR_hvm_op
> > + *   Exactly these sub-operations are supported:
> > + *    * HVMOP_set_param
> > + *    * HVMOP_get_param
> > + *
> > + *  HYPERVISOR_grant_table_op
> > + *   All generic sub-operations
> > + *
> > + *  HYPERVISOR_vcpu_op
> > + *   Exactly these sub-operations are supported:
> > + *    * VCPUOP_register_vcpu_info
> > + *    * VCPUOP_register_runstate_memory_area
> > + */
> > +
> >  #define XEN_HYPERCALL_TAG   0XEA1
> >  
> >  #define uint64_aligned_t uint64_t __attribute__((aligned(8)))
> 
> 
> 
> _______________________________________________
> Xen-devel mailing list
> Xen-devel@xxxxxxxxxxxxx
> http://lists.xen.org/xen-devel

_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel


 


Rackspace

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