162306a36Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 262306a36Sopenharmony_ci#ifndef __TOOLS_ASM_GENERIC_BITOPS_H 362306a36Sopenharmony_ci#define __TOOLS_ASM_GENERIC_BITOPS_H 462306a36Sopenharmony_ci 562306a36Sopenharmony_ci/* 662306a36Sopenharmony_ci * tools/ copied this from include/asm-generic/bitops.h, bit by bit as it needed 762306a36Sopenharmony_ci * some functions. 862306a36Sopenharmony_ci * 962306a36Sopenharmony_ci * For the benefit of those who are trying to port Linux to another 1062306a36Sopenharmony_ci * architecture, here are some C-language equivalents. You should 1162306a36Sopenharmony_ci * recode these in the native assembly language, if at all possible. 1262306a36Sopenharmony_ci * 1362306a36Sopenharmony_ci * C language equivalents written by Theodore Ts'o, 9/26/92 1462306a36Sopenharmony_ci */ 1562306a36Sopenharmony_ci 1662306a36Sopenharmony_ci#include <asm-generic/bitops/__ffs.h> 1762306a36Sopenharmony_ci#include <asm-generic/bitops/__ffz.h> 1862306a36Sopenharmony_ci#include <asm-generic/bitops/fls.h> 1962306a36Sopenharmony_ci#include <asm-generic/bitops/__fls.h> 2062306a36Sopenharmony_ci#include <asm-generic/bitops/fls64.h> 2162306a36Sopenharmony_ci 2262306a36Sopenharmony_ci#ifndef _TOOLS_LINUX_BITOPS_H_ 2362306a36Sopenharmony_ci#error only <linux/bitops.h> can be included directly 2462306a36Sopenharmony_ci#endif 2562306a36Sopenharmony_ci 2662306a36Sopenharmony_ci#include <asm-generic/bitops/hweight.h> 2762306a36Sopenharmony_ci 2862306a36Sopenharmony_ci#include <asm-generic/bitops/atomic.h> 2962306a36Sopenharmony_ci#include <asm-generic/bitops/non-atomic.h> 3062306a36Sopenharmony_ci 3162306a36Sopenharmony_ci#endif /* __TOOLS_ASM_GENERIC_BITOPS_H */ 32