1 #ifndef __ASM_SH_BL_BIT_32_H 2 #define __ASM_SH_BL_BIT_32_H 3 4 static inline void set_bl_bit(void) 5 { 6 unsigned long __dummy0, __dummy1; 7 8 __asm__ __volatile__ ( 9 "stc sr, %0\n\t" 10 "or %2, %0\n\t" 11 "and %3, %0\n\t" 12 "ldc %0, sr\n\t" 13 : "=&r" (__dummy0), "=r" (__dummy1) 14 : "r" (0x10000000), "r" (0xffffff0f) 15 : "memory" 16 ); 17 } 18 19 static inline void clear_bl_bit(void) 20 { 21 unsigned long __dummy0, __dummy1; 22 23 __asm__ __volatile__ ( 24 "stc sr, %0\n\t" 25 "and %2, %0\n\t" 26 "ldc %0, sr\n\t" 27 : "=&r" (__dummy0), "=r" (__dummy1) 28 : "1" (~0x10000000) 29 : "memory" 30 ); 31 } 32 33 #endif /* __ASM_SH_BL_BIT_32_H */ 34