[x86] Fix the page unmap and subs. corruption

The invalidate page instruction wasn't behaving as
expected. Because of this the TLBs used to pollute
and give unexpected results like corruption. To get
away hack was put in to not unmap the pages once
mapped.

Until the invalidate page is fixed, shoot down the
complete TLB and freeup memory and virtual address
space.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[x86][DOCS] Update instruction run under AuthenticAMD.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
Merge branch 'x86-next', remote-tracking branch 'upstream/master' into x86-next
[x86] Fix single tlb flush for given VA.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[x86] Pass on multiboot header info to cpu_init.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
Merge branch 'x86-next', remote-tracking branch 'upstream/master' into x86-next
[ARM] Support for bootloader provided DTB files

To achieve linux-compatible dtb-based boot-flow, we verify and preserve
the dtb file provided by the bootloader. This is done by overwriting the
builtin dtb post basic sanity checks on the possible dtb pointer in r2.

In arm32ve fastmodel boot-code we do not pass any external dtb, so we
ensure that the GPRs r0-r2 reflect the same.

Signed-off-by: Sukanto Ghosh <sukantoghosh@gmail.com>
[x86] Have command line and memory size from multiboot.

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

X86 next
[ARM] Zero-out bss section at booting time

This patch ensure that bss section is zeroed out at booting time.

This zeroing of bss section is very important for real HW since
it ensures predictable contents in bss section.

Signed-off-by: Anup Patel <anup@brainfault.org>
[ARM] Fix external DTB loading at bootup time

The patch "[ARM] Zero-out bss section at booting time" with
commit ab4688ba40ddc417f1e5b0d6cd8afd9b895d584e corrupts the
address of externally provided DTB via bootloader.

This patch fixes this issue by explicity loading address of
external DTB from _boot_reg2.

Signed-off-by: Anup Patel <anup@brainfault.org>
[DOCS] Update v0.2.2 release notes for arm32 and arm32ve

Signed-off-by: Anup Patel <anup@brainfault.org>
Merge branch 'x86-next', remote-tracking branch 'upstream/master' into x86-next
[CORE] stdio: Add support for early prints.

arch_defterm_early_putc does prints to early console.
The console can be setup using the early_params patch
sent earlier. early prints are used only when architecture
defines ARCH_HAS_DEFTERM_EARLY_PRINT

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] Add no space error code (ENOSPC & VMM_NOESPC)

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[LIBS] Add isspace and whitespace removal function

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[CORE] Add macros for used and aligned gcc attributes

__used, __aligned(x), and __section(section_name)

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
[CORE] Add support for early parameter parsing

Early parameters passed with command line can be parsed
with this infrastructure and associated action can be taken.

Signed-off-by: Himanshu Chauhan <hschauhan@nulltrace.org>
Signed-off-by: Anup Patel <anup@brainfault.org>
[DOCS] Update v0.2.2 release notes for recent feature addition

Signed-off-by: Anup Patel <anup@brainfault.org>
[CORE] devtree: Add bootargs attribute for passing early parameters via DTB

Signed-off-by: Anup Patel <anup@brainfault.org>