diff options
author | David S. Miller <davem@davemloft.net> | 2009-12-11 01:26:12 -0800 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2009-12-11 01:26:12 -0800 |
commit | e3f4e1cbc341bc2020241d8119bd078db3ec3b85 (patch) | |
tree | 8b23624cc792f60d0bf86d787c3514cf0fb04418 /arch/sh/include/asm/system_32.h | |
parent | adfe67ddffbea51322b118896178bd71aaa4b4d8 (diff) | |
parent | d71cb81af3817193bc605de061da0499934263a6 (diff) | |
download | linux-e3f4e1cbc341bc2020241d8119bd078db3ec3b85.tar.gz linux-e3f4e1cbc341bc2020241d8119bd078db3ec3b85.tar.bz2 linux-e3f4e1cbc341bc2020241d8119bd078db3ec3b85.zip |
Merge branch 'master' of /home/davem/src/GIT/linux-2.6/
Diffstat (limited to 'arch/sh/include/asm/system_32.h')
-rw-r--r-- | arch/sh/include/asm/system_32.h | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/arch/sh/include/asm/system_32.h b/arch/sh/include/asm/system_32.h index 607d413f6168..06814f5b59c7 100644 --- a/arch/sh/include/asm/system_32.h +++ b/arch/sh/include/asm/system_32.h @@ -232,4 +232,33 @@ asmlinkage void do_exception_error(unsigned long r4, unsigned long r5, unsigned long r6, unsigned long r7, struct pt_regs __regs); +static inline void set_bl_bit(void) +{ + unsigned long __dummy0, __dummy1; + + __asm__ __volatile__ ( + "stc sr, %0\n\t" + "or %2, %0\n\t" + "and %3, %0\n\t" + "ldc %0, sr\n\t" + : "=&r" (__dummy0), "=r" (__dummy1) + : "r" (0x10000000), "r" (0xffffff0f) + : "memory" + ); +} + +static inline void clear_bl_bit(void) +{ + unsigned long __dummy0, __dummy1; + + __asm__ __volatile__ ( + "stc sr, %0\n\t" + "and %2, %0\n\t" + "ldc %0, sr\n\t" + : "=&r" (__dummy0), "=r" (__dummy1) + : "1" (~0x10000000) + : "memory" + ); +} + #endif /* __ASM_SH_SYSTEM_32_H */ |