ia64/xen-unstable

changeset 13922:8101efde7493

[XEN][POWERPC] DomU real time clock based off of the real one in Dom0
Signed-off-by: Jimi Xenidis <jimix@watson.ibm.com>
Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
author Jimi Xenidis <jimix@watson.ibm.com>
date Tue Dec 19 09:20:58 2006 -0500 (2006-12-19)
parents d1f053ff43d2
children bcd4bf022047
files xen/arch/powerpc/domain.c xen/arch/powerpc/time.c xen/include/public/arch-powerpc.h
line diff
     1.1 --- a/xen/arch/powerpc/domain.c	Sun Dec 17 12:40:10 2006 -0500
     1.2 +++ b/xen/arch/powerpc/domain.c	Tue Dec 19 09:20:58 2006 -0500
     1.3 @@ -152,17 +152,20 @@ void vcpu_destroy(struct vcpu *v)
     1.4  
     1.5  int arch_set_info_guest(struct vcpu *v, vcpu_guest_context_t *c)
     1.6  { 
     1.7 +    struct domain *d = v->domain;
     1.8 +
     1.9      memcpy(&v->arch.ctxt, &c->user_regs, sizeof(c->user_regs));
    1.10  
    1.11 -    printk("Domain[%d].%d: initializing\n",
    1.12 -           v->domain->domain_id, v->vcpu_id);
    1.13 +    printk("Domain[%d].%d: initializing\n", d->domain_id, v->vcpu_id);
    1.14  
    1.15 -    if (v->domain->arch.htab.order == 0)
    1.16 -        panic("Page table never allocated for Domain: %d\n",
    1.17 -              v->domain->domain_id);
    1.18 -    if (v->domain->arch.rma_order == 0)
    1.19 -        panic("RMA never allocated for Domain: %d\n",
    1.20 -              v->domain->domain_id);
    1.21 +    if (d->arch.htab.order == 0)
    1.22 +        panic("Page table never allocated for Domain: %d\n", d->domain_id);
    1.23 +    if (d->arch.rma_order == 0)
    1.24 +        panic("RMA never allocated for Domain: %d\n", d->domain_id);
    1.25 +
    1.26 +    d->shared_info->wc_sec = dom0->shared_info->wc_sec;
    1.27 +    d->shared_info->wc_nsec = dom0->shared_info->wc_nsec;
    1.28 +    d->shared_info->arch.boot_timebase = dom0->shared_info->arch.boot_timebase;
    1.29  
    1.30      set_bit(_VCPUF_initialised, &v->vcpu_flags);
    1.31  
     2.1 --- a/xen/arch/powerpc/time.c	Sun Dec 17 12:40:10 2006 -0500
     2.2 +++ b/xen/arch/powerpc/time.c	Tue Dec 19 09:20:58 2006 -0500
     2.3 @@ -85,12 +85,6 @@ void send_timer_event(struct vcpu *v)
     2.4      vcpu_unblock(v);
     2.5  }
     2.6  
     2.7 -/* Set clock to <secs,usecs> after 00:00:00 UTC, 1 January, 1970. */
     2.8 -void do_settime(unsigned long secs, unsigned long usecs, u64 system_time_base)
     2.9 -{
    2.10 -    unimplemented();
    2.11 -}
    2.12 -
    2.13  void update_vcpu_system_time(struct vcpu *v)
    2.14  {
    2.15  }
     3.1 --- a/xen/include/public/arch-powerpc.h	Sun Dec 17 12:40:10 2006 -0500
     3.2 +++ b/xen/include/public/arch-powerpc.h	Tue Dec 19 09:20:58 2006 -0500
     3.3 @@ -108,7 +108,7 @@ typedef struct vcpu_guest_context vcpu_g
     3.4  DEFINE_XEN_GUEST_HANDLE(vcpu_guest_context_t);
     3.5  
     3.6  struct arch_shared_info {
     3.7 -    uint64_t pad[32];
     3.8 +    uint64_t boot_timebase;
     3.9  };
    3.10  
    3.11  struct arch_vcpu_info {