xref: /linux/drivers/media/pci/cx25821/cx25821-biffuncs.h (revision 75bf465f0bc33e9b776a46d6a1b9b990f5fb7c37)
1 /* SPDX-License-Identifier: GPL-2.0-or-later */
2 /*
3  *  Driver for the Conexant CX25821 PCIe bridge
4  *
5  *  Copyright (C) 2009 Conexant Systems Inc.
6  *  Authors  <shu.lin@conexant.com>, <hiep.huynh@conexant.com>
7  */
8 
9 #ifndef _BITFUNCS_H
10 #define _BITFUNCS_H
11 
12 #define SetBit(Bit)  (1 << Bit)
13 
getBit(u32 sample,u8 index)14 static inline u8 getBit(u32 sample, u8 index)
15 {
16 	return (u8) ((sample >> index) & 1);
17 }
18 
clearBitAtPos(u32 value,u8 bit)19 static inline u32 clearBitAtPos(u32 value, u8 bit)
20 {
21 	return value & ~(1 << bit);
22 }
23 
setBitAtPos(u32 sample,u8 bit)24 static inline u32 setBitAtPos(u32 sample, u8 bit)
25 {
26 	sample |= (1 << bit);
27 	return sample;
28 
29 }
30 
31 #endif
32