root/arch/sh/include/asm/bl_bit_32.h

/* [<][>][^][v][top][bottom][index][help] */

INCLUDED FROM


DEFINITIONS

This source file includes following definitions.
  1. set_bl_bit
  2. clear_bl_bit

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

/* [<][>][^][v][top][bottom][index][help] */