API: Provide syscall entry point for the ARM architecture.

Signed-off-by: Rafal Czubak <rcz@semihalf.com>
Acked-by: Rafal Jaworowski <raj@semihalf.com>
master
Rafal Jaworowski 16 years ago committed by Wolfgang Denk
parent b84d7d8f1e
commit 7fb6c4f9b0
  1. 7
      api_examples/Makefile
  2. 17
      api_examples/crt0.S
  3. 5
      lib_arm/board.c

@ -23,10 +23,9 @@
ifeq ($(ARCH),ppc)
LOAD_ADDR = 0x40000
endif
#ifeq ($(ARCH),arm)
#LOAD_ADDR = 0xc100000
#endif
ifeq ($(ARCH),arm)
LOAD_ADDR = 0x1000000
endif
include $(TOPDIR)/config.mk

@ -26,7 +26,6 @@
#if defined(CONFIG_PPC)
.text
.globl _start
_start:
lis %r11, search_hint@ha
@ -42,6 +41,22 @@ syscall:
lwz %r11, 0(%r11)
mtctr %r11
bctr
#elif defined(CONFIG_ARM)
.text
.globl _start
_start:
ldr ip, =search_hint
str sp, [ip]
b main
.globl syscall
syscall:
ldr ip, =syscall_ptr
ldr pc, [ip]
#else
#error No support for this arch!
#endif

@ -416,6 +416,11 @@ void start_armboot (void)
jumptable_init ();
#if defined(CONFIG_API)
/* Initialize API */
api_init ();
#endif
console_init_r (); /* fully init console as a device */
#if defined(CONFIG_MISC_INIT_R)

Loading…
Cancel
Save