kernel-hacking-2024-linux-s.../arch/arc/kernel
Vineet Gupta 03a6d28cdd ARC: [Review] Multi-platform image #2: Board callback Infrastructure
The orig platform code orgnaization was singleton design pattern - only
one platform (and board thereof) would build at a time.

Thus any platform/board specific code (e.g. irq init, early init ...)
expected by ARC common code was exported as well defined set of APIs,
with only ONE instance building ever.

Now with multiple-platform build requirement, that design of code no
longer holds - multiple board specific calls need to build at the same
time - so ARC common code can't use the API approach, it needs a
callback based design where each board registers it's specific set of
functions, and at runtime, depending on board detection, the callbacks
are used from the registry.

This commit adds all the infrastructure, where board specific callbacks
are specified as a "maThine description".

All the hooks are placed in right spots, no board callbacks registered
yet (with MACHINE_STARt/END constructs) so the hooks will not run.

Next commit will actually convert the platform to this infrastructure.

Signed-off-by: Vineet Gupta <vgupta@synopsys.com>
Cc: Arnd Bergmann <arnd@arndb.de>
Acked-by: Arnd Bergmann <arnd@arndb.de>
2013-02-15 23:16:13 +05:30
..
arc_hostlink.c ARC: Hostlink Pseudo-Driver for Metaware Debugger 2013-02-15 23:16:10 +05:30
arcksyms.c
asm-offsets.c ARC: [optim] Cache "current" in Register r25 2013-02-15 23:15:58 +05:30
clk.c ARC: [DeviceTree] Convert some Kconfig items to runtime values 2013-02-15 23:15:56 +05:30
ctx_sw.c ARC: SMP support 2013-02-15 23:16:02 +05:30
ctx_sw_asm.S ARC: Process-creation/scheduling/idle-loop 2013-02-11 20:00:38 +05:30
devtree.c ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30
disasm.c ARC: Unaligned access emulation 2013-02-15 23:16:06 +05:30
entry.S ARC: Support for single cycle Close Coupled Mem (CCM) 2013-02-15 23:16:10 +05:30
fpu.c ARC: Process-creation/scheduling/idle-loop 2013-02-11 20:00:38 +05:30
head.S ARC: SMP support 2013-02-15 23:16:02 +05:30
irq.c ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30
kgdb.c ARC: kgdb support 2013-02-15 23:16:07 +05:30
kprobes.c ARC: kprobes support 2013-02-15 23:16:05 +05:30
Makefile ARC: Hostlink Pseudo-Driver for Metaware Debugger 2013-02-15 23:16:10 +05:30
module.c ARC: DWARF2 .debug_frame based stack unwinder 2013-02-15 23:16:03 +05:30
process.c ARC: Process-creation/scheduling/idle-loop 2013-02-11 20:00:38 +05:30
ptrace.c ARC: ptrace support 2013-02-15 23:15:59 +05:30
reset.c ARC: Boot #1: low-level, setup_arch(), /proc/cpuinfo, mem init 2013-02-15 23:15:54 +05:30
setup.c ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30
signal.c ARC: [Review] Prevent incorrect syscall restarts 2013-02-15 23:15:50 +05:30
smp.c ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30
stacktrace.c ARC: stacktracing APIs based on dw2 unwinder 2013-02-15 23:16:04 +05:30
sys.c ARC: Syscall support (no-legacy-syscall ABI) 2013-02-11 20:00:38 +05:30
time.c ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30
traps.c ARC: kgdb support 2013-02-15 23:16:07 +05:30
troubleshoot.c ARC: Diagnostics: show_regs() etc 2013-02-15 23:16:02 +05:30
unaligned.c ARC: Unaligned access emulation 2013-02-15 23:16:06 +05:30
unwind.c ARC: DWARF2 .debug_frame based stack unwinder 2013-02-15 23:16:03 +05:30
vmlinux.lds.S ARC: [Review] Multi-platform image #2: Board callback Infrastructure 2013-02-15 23:16:13 +05:30