arch/x86: initial Intel64 support

First "complete" version of Intel64 support for x86. Compilation of
apps for supported boards (read: up_squared) with CONFIG_X86_LONGMODE=y
is now working. Booting, device drivers, interrupts, scheduling, etc.
appear to be functioning properly. Beware that this is ALHPA quality,
not ready for production use, but the port has advanced far enough that
it's time to start working through the test suite and samples, fleshing
out any missing features, and squashing bugs.

Signed-off-by: Charles E. Youse <charles.youse@intel.com>
This commit is contained in:
Charles E. Youse 2019-07-04 20:17:14 -07:00 committed by Andrew Boie
commit 4ddaa59a89
26 changed files with 733 additions and 117 deletions

View file

@ -8,17 +8,15 @@
#ifndef _ASMLANGUAGE
#define z_is_in_isr() (0)
static ALWAYS_INLINE void
z_set_thread_return_value(struct k_thread *thread, unsigned int value)
{
/* nothing */ ;
thread->callee_saved.rax = value;
}
static inline void kernel_arch_init(void)
{
/* nothing */ ;
/* nothing */;
}
#endif /* _ASMLANGUAGE */