mirror of
https://github.com/AetherDroid/android_kernel_samsung_on5xelte.git
synced 2025-11-02 09:05:37 +01:00
Fixed MTP to work with TWRP
This commit is contained in:
commit
f6dfaef42e
50820 changed files with 20846062 additions and 0 deletions
104
arch/x86/include/asm/signal.h
Normal file
104
arch/x86/include/asm/signal.h
Normal file
|
|
@ -0,0 +1,104 @@
|
|||
#ifndef _ASM_X86_SIGNAL_H
|
||||
#define _ASM_X86_SIGNAL_H
|
||||
|
||||
#ifndef __ASSEMBLY__
|
||||
#include <linux/linkage.h>
|
||||
|
||||
/* Most things should be clean enough to redefine this at will, if care
|
||||
is taken to make libc match. */
|
||||
|
||||
#define _NSIG 64
|
||||
|
||||
#ifdef __i386__
|
||||
# define _NSIG_BPW 32
|
||||
#else
|
||||
# define _NSIG_BPW 64
|
||||
#endif
|
||||
|
||||
#define _NSIG_WORDS (_NSIG / _NSIG_BPW)
|
||||
|
||||
typedef unsigned long old_sigset_t; /* at least 32 bits */
|
||||
|
||||
typedef struct {
|
||||
unsigned long sig[_NSIG_WORDS];
|
||||
} sigset_t;
|
||||
|
||||
#ifndef CONFIG_COMPAT
|
||||
typedef sigset_t compat_sigset_t;
|
||||
#endif
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
#include <uapi/asm/signal.h>
|
||||
#ifndef __ASSEMBLY__
|
||||
extern void do_notify_resume(struct pt_regs *, void *, __u32);
|
||||
|
||||
#define __ARCH_HAS_SA_RESTORER
|
||||
|
||||
#include <asm/sigcontext.h>
|
||||
|
||||
#ifdef __i386__
|
||||
|
||||
#define __HAVE_ARCH_SIG_BITOPS
|
||||
|
||||
#define sigaddset(set,sig) \
|
||||
(__builtin_constant_p(sig) \
|
||||
? __const_sigaddset((set), (sig)) \
|
||||
: __gen_sigaddset((set), (sig)))
|
||||
|
||||
static inline void __gen_sigaddset(sigset_t *set, int _sig)
|
||||
{
|
||||
asm("btsl %1,%0" : "+m"(*set) : "Ir"(_sig - 1) : "cc");
|
||||
}
|
||||
|
||||
static inline void __const_sigaddset(sigset_t *set, int _sig)
|
||||
{
|
||||
unsigned long sig = _sig - 1;
|
||||
set->sig[sig / _NSIG_BPW] |= 1 << (sig % _NSIG_BPW);
|
||||
}
|
||||
|
||||
#define sigdelset(set, sig) \
|
||||
(__builtin_constant_p(sig) \
|
||||
? __const_sigdelset((set), (sig)) \
|
||||
: __gen_sigdelset((set), (sig)))
|
||||
|
||||
|
||||
static inline void __gen_sigdelset(sigset_t *set, int _sig)
|
||||
{
|
||||
asm("btrl %1,%0" : "+m"(*set) : "Ir"(_sig - 1) : "cc");
|
||||
}
|
||||
|
||||
static inline void __const_sigdelset(sigset_t *set, int _sig)
|
||||
{
|
||||
unsigned long sig = _sig - 1;
|
||||
set->sig[sig / _NSIG_BPW] &= ~(1 << (sig % _NSIG_BPW));
|
||||
}
|
||||
|
||||
static inline int __const_sigismember(sigset_t *set, int _sig)
|
||||
{
|
||||
unsigned long sig = _sig - 1;
|
||||
return 1 & (set->sig[sig / _NSIG_BPW] >> (sig % _NSIG_BPW));
|
||||
}
|
||||
|
||||
static inline int __gen_sigismember(sigset_t *set, int _sig)
|
||||
{
|
||||
int ret;
|
||||
asm("btl %2,%1\n\tsbbl %0,%0"
|
||||
: "=r"(ret) : "m"(*set), "Ir"(_sig-1) : "cc");
|
||||
return ret;
|
||||
}
|
||||
|
||||
#define sigismember(set, sig) \
|
||||
(__builtin_constant_p(sig) \
|
||||
? __const_sigismember((set), (sig)) \
|
||||
: __gen_sigismember((set), (sig)))
|
||||
|
||||
struct pt_regs;
|
||||
|
||||
#else /* __i386__ */
|
||||
|
||||
#undef __HAVE_ARCH_SIG_BITOPS
|
||||
|
||||
#endif /* !__i386__ */
|
||||
|
||||
#endif /* __ASSEMBLY__ */
|
||||
#endif /* _ASM_X86_SIGNAL_H */
|
||||
Loading…
Add table
Add a link
Reference in a new issue