X-Git-Url: https://scm.lunaixsky.com/lunaix-os.git/blobdiff_plain/6b995c8cb722d10aaacba52999f5c43e43daeb85..ca2485429c19d3e5cdecbb39a5f3383b40477d94:/lunaix-os/includes/lunaix/bits.h diff --git a/lunaix-os/includes/lunaix/bits.h b/lunaix-os/includes/lunaix/bits.h index ddc2800..fca3f67 100644 --- a/lunaix-os/includes/lunaix/bits.h +++ b/lunaix-os/includes/lunaix/bits.h @@ -1,17 +1,24 @@ #ifndef __LUNAIX_BITS_H #define __LUNAIX_BITS_H -#include #include -#define BITFIELD(h, l) (h), (l) +#define BITS_AT(val, bitfield) _BITS_STATIC(val, bitfield) + +#ifndef __ASM__ +#include + +#define BITFIELD(h, l) (h), (l) + +#define BIT(p) BITFIELD(p, p) +#define BITFLAG(p) (1UL << (p)) -#define BIT(p) BITFIELD(p, p) +#define BITS_GENMASK(bitfield) _BITS_GENMASK(bitfield) -#define BITS_GENMASK(bits) _BITS_GENMASK(bits) +#define BITS_GET(from, bitfield) _BITS_EXTRACT(from, bitfield) -#define BITS_GET(from, bits) _BITS_EXTRACT(from, bits) +#define BITS_SET(to, bitfield, val) _BITS_INSERT(to, val, bitfield) -#define BITS_SET(to, bits, val) _BITS_INSERT(to, val, bits) +#endif #endif /* __LUNAIX_BITS_H */