Merge pull request #83 from avpatel/master

Resync mainline
Merge pull request #84 from avpatel/master

Syncup mainline tree with changes from xvisor-next tree
Merge pull request #85 from avpatel/master

Syncup mainline with changes from xvisor-next tree
Merge pull request #86 from avpatel/master

Update last commit tag for v0.2.1
Merge branch 'master', remote-tracking branch 'upstream/master'
Merge branch 'master', remote-tracking branch 'upstream/master'
[ARM] i.MX timer: increase the minimum time for a timer expire.

We need this time to have a minimum value to get a normal
behavior on real hardware.

Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
[ARM] Add i.MX25 3DStack evaluation board from Freescale.

Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
[DRIVERS] i.MX: Add full serial driver for i.MX.

This driver is still not complete an rely on the boot loader to set
the baudrate.

Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
[DRIVERS] i.MX UART: disable TX interrupts.

The code does not work on real hardware for now.

Need fixing.

Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>
[LIBS] Fix brief description of fifo APIs

Signed-off-by: Anup Patel <anup@brainfault.org>
[LIBS] Add generic last-in-first-out queue APIs

Signed-off-by: Anup Patel <anup@brainfault.org>
[x86] Rearranged the interrupt code.

o The interrupt code has been rearranged to encapsulate
  the interrupt frame part of the arch_regs. No need of
  stack manipulation now, compiler does it for you.
o Added functions to dump registers of a given VCPU.
o Page fault and other exceptions calling register dumps.
o During interrupt handling, frame pointer is also saved.
  This was a major problem until now causing the stack
  to go haywire.
o Since hw-error code is not pushed on regular interrupts,
  IRQ_HANDLER macro has been modified to push a fake value
  in the stack frame. This is to keep the size of arch_regs
  constance on exceptions and interrupts.
o EXCEPTION_HANDLER macro doesn't do it since hardware
  automatically pushed hw error code.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[x86] Multiple reads on i8042 in one interrupt

Read i8042 until all data bytes are read out on a
single interrupt. atkbd_probe atleast completes now
but connect is still not called.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
Merge pull request #16 from hschauhan/x86-next

X86 next
[CORE] Fix timeout returned by vmm_waitqueue_sleep_event_timeout()

Signed-off-by: Anup Patel <anup@brainfault.org>
[x86] Implement arch_vcpu_preempt_orphan() for x86_64

Signed-off-by: Anup Patel <anup@brainfault.org>
Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[CORE] Mandate arch_vcpu_preempt_orphan() for all architectures

This patch finally removes the dependence on timer expire APIs
and make arch_vcpu_preempt_orphan() mandatory for all architectures.

The APIs removed from core code include vmm_timer_event_expire() and
vmm_clockchip_force_expirey().

Signed-off-by: Anup Patel <anup@brainfault.org>
[x86] Fix min_delta_ns for HPET clockchip

The core code does not use clockchip expire callback for immediate
timer events, instead it call set_next_event() with minimum possible
ticks.

The current value of min_delta_ns causes ramdom hits to BUG_ON() in
hpet set_next_event().

This patch fixes this issue by making hpet min_delta_ns equal to
100 microsecs.

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARM] i.MX25: Fix DTS tree for real hardware.

i.MX25 PDK only has 64 MB DDR

Signed-off-by: Jean-Christophe DUBOIS <jcd@tribudubois.net>