Skip to content

Commit

Permalink
[ARM] start_thread fixup for nommu mode
Browse files Browse the repository at this point in the history
This patch supports start_thread in nommu mode which requires the
base index register.

Signed-off-by: Hyok S. Choi <hyok.choi@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
  • Loading branch information
Hyok S. Choi authored and Russell King committed Jan 13, 2006
1 parent 946d493 commit e72b047
Showing 1 changed file with 7 additions and 0 deletions.
7 changes: 7 additions & 0 deletions include/asm-arm/processor.h
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,12 @@ struct thread_struct {

#define INIT_THREAD { }

#ifdef CONFIG_MMU
#define nommu_start_thread(regs) do { } while (0)
#else
#define nommu_start_thread(regs) regs->ARM_r10 = current->mm->start_data
#endif

#define start_thread(regs,pc,sp) \
({ \
unsigned long *stack = (unsigned long *)sp; \
Expand All @@ -65,6 +71,7 @@ struct thread_struct {
regs->ARM_r2 = stack[2]; /* r2 (envp) */ \
regs->ARM_r1 = stack[1]; /* r1 (argv) */ \
regs->ARM_r0 = stack[0]; /* r0 (argc) */ \
nommu_start_thread(regs); \
})

/* Forward declaration, a strange C thing */
Expand Down

0 comments on commit e72b047

Please sign in to comment.