ARC: ===== OS ABI v2 ===== asm-generic unistd.h

-Everything needed to switch to asm-generic unistd
-bootup printing to show that OS ABI has changed
-NR_rt_sigreturn value changed thus fixes to create_sigret_stub()
-NR_sigreturn doesn't exist anymore so handler nuked
-NR_mmap defined thus needs a dummy handler

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: ===== OS ABI v2 ===== asm-generic/{fcntl,stat,posix_types}

Since the ABI is changeing due to unistd, we might as well move to
generic versions of these headers althoug this requires corresponding
work in uClibc as well.

stat in particular is interesting as it will allow us to make the stat
family of syscalls a simple pass-thru w/o need for any itermised copy
in userspace, hopefully speeding it up.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: ===== OS ABI v2 ===== pt_regs Modified

pt_regs placeholder changes: SP moved before orig_r0 and orig_r8

Why:
-------------------------------------
pt_regs contains the register info and some kernel internal info
(orig_r0 and orig_r8). The idea of this commit is to aggregate the
register info together, towards start of struct and have all the control
info together towards end.

This way, in future, we can update the kernel control info placeholders
(add/remove) w/o affecting the ABI.

Additionaly it allows to easily do batch copies of pt_regs for say
signal handling and such, w/o worrying about leaking kernel control info
to user space.

This however breaks the user space ABI for tools which rely on pt_regs
layout for retrieving regs values (gdb/strace). Thus they need to be
updated.

Additionally, struct user_regs_struct modified to include struct pt_regs
directly instread of open-coded copy of struct to contain all pt_regs
changes to jus ptrace.h

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: ===== OS ABI v2 ===== Minor other updates

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: struct user_regs_struct cleanups

In user_regs_struct, the opencoded struct pt_regs/callee_regs now
replaced with a actual structures to keep such info centralised to one
single file ptrace.h

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: LTP Build breakage (userspace headers broken)

The commit f6d3b3c3b7f0 (ARC: treewide cleanup: Lindent, checkpatch)
removed the gaurd in pteace.h, caussing a enum in uClibc sys/ptrace.h to
be #defined.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: LTP Build breakage #2: syscall sys_sysfs missing

This is a core kernel bug. Somewhere in the development of
asm-generic/unistd.h, the syscall sys_sysfs (fs/filesystems.c) got lost
while the core syscall still exits.

The workaround for now is to pretend it is ARC syscall

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: OS ABI v2: LTP Runtime regresions

(1) The unhandled syscalls need to be handled with a "ni" handler as
    opposed to just NULL entries which would cause kernel crashes

(2) uClibc passes __IPC_64 flags in sysvipc cmds, which needs to be
    handled using __ARCH_WANT_IPC_PARSE_VERSION, otherwise all such LTP
    tests fail

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: OS ABI v2 verification (elf hdr arch specific e_flags based)

To make the ABI transition less painful, added ABI verification scheme.
Essentially the pairing GNU ld now by-default adds a ABI ver tag in ELF
hdr (in the machine specific e_flags placeholder) which is checked by
kernel.
An absence implies toolchain not built with newer ld (and hence implies
that the rest of tool-chain - uClibc/gdbserver in  particular are not
adhering to the new asm-generic based syscall interface.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: OS ABI v2 verification #2: ABI ver placeholder shifted slightly

The fundamental change was done in binutils to make bigger room for ARC
cpu name in ELF hdr's e_flags. Thus the placeholder for OS ABI ver needs
a slight adjustment

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
ARC: Linux as an Eclipse project

This is to enable developer import Linux sources into eclipse.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: clock source with SMP

In SMP we need some global clock source.
Need some call to platform specific routine from cycle_read_t1.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: uImage binaries not at top level.

Like used by other architectures (see buildroot).

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: compilation error when using arceb-linux-ld

Got unrecognised option --build-id.
Adding flag -marclinux solved this.
However it raised warning about .arcextmap section.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: Remove SMP check for cacheflush.

Now Kconfig takes care of ensuring that for SMP,
cache is only enabled if platform supports it.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: Init global locks

We should initialize with proper value.

Signed-off-by: Noam Camus <noamc@ezchip.com>
NET: Add network driver

This patch adds an driver for the debug LAN device used in EZchip NPS boards.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: Add eznps platform

This platform include boards:
	Hardware Emulator (HE) version 0,1...
	Simulator based upon nSIM.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: TLB flush for SMP

This is for cases we need to flush tlb's in several CPU's since a memory
structure may be held by several threads in the same time in different
CPU's.

Signed-off-by: Noam Camus <noamc@ezchip.com>
ARC: ASID with SMP

Each CPU got its own TLB and therefore it's own software cache.
Also each mmu context may reside at the same in several CPU's thanks to
threads sharing the context therefore may have different ASID.

Signed-off-by: Noam Camus <noamc@ezchip.com>