Skip to content

Commit

Permalink
Blackfin arch: move fixed code defines into fixed_code.h as very few …
Browse files Browse the repository at this point in the history
…things actually need to know these details

Signed-off-by: Mike Frysinger <vapier.adi@gmail.com>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
  • Loading branch information
Mike Frysinger authored and Bryan Wu committed Aug 14, 2008
1 parent 9216bbc commit 3c012ee
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 14 deletions.
2 changes: 1 addition & 1 deletion include/asm-blackfin/Kbuild
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
include include/asm-generic/Kbuild.asm

header-y += fixed_code.h
unifdef-y += fixed_code.h
13 changes: 0 additions & 13 deletions include/asm-blackfin/bfin-global.h
Original file line number Diff line number Diff line change
Expand Up @@ -70,19 +70,6 @@ extern void evt14_softirq(void);
extern asmlinkage void asm_do_IRQ(unsigned int irq, struct pt_regs *regs);
extern int bfin_internal_set_wake(unsigned int irq, unsigned int state);

extern asmlinkage void finish_atomic_sections (struct pt_regs *regs);
extern char fixed_code_start;
extern char fixed_code_end;
extern int atomic_xchg32(void);
extern int atomic_cas32(void);
extern int atomic_add32(void);
extern int atomic_sub32(void);
extern int atomic_ior32(void);
extern int atomic_and32(void);
extern int atomic_xor32(void);
extern void safe_user_instruction(void);
extern void sigreturn_stub(void);

extern void *l1_data_A_sram_alloc(size_t);
extern void *l1_data_B_sram_alloc(size_t);
extern void *l1_inst_sram_alloc(size_t);
Expand Down
24 changes: 24 additions & 0 deletions include/asm-blackfin/fixed_code.h
Original file line number Diff line number Diff line change
@@ -1,6 +1,28 @@
/* This file defines the fixed addresses where userspace programs can find
atomic code sequences. */

#ifndef __BFIN_ASM_FIXED_CODE_H__
#define __BFIN_ASM_FIXED_CODE_H__

#ifdef __KERNEL__
#ifndef __ASSEMBLY__
#include <linux/linkage.h>
#include <linux/ptrace.h>
extern asmlinkage void finish_atomic_sections(struct pt_regs *regs);
extern char fixed_code_start;
extern char fixed_code_end;
extern int atomic_xchg32(void);
extern int atomic_cas32(void);
extern int atomic_add32(void);
extern int atomic_sub32(void);
extern int atomic_ior32(void);
extern int atomic_and32(void);
extern int atomic_xor32(void);
extern void safe_user_instruction(void);
extern void sigreturn_stub(void);
#endif
#endif

#define FIXED_CODE_START 0x400

#define SIGRETURN_STUB 0x400
Expand All @@ -20,3 +42,5 @@
#define SAFE_USER_INSTRUCTION 0x480

#define FIXED_CODE_END 0x490

#endif

0 comments on commit 3c012ee

Please sign in to comment.