FILE
bits.h
File preview with syntax highlighting.
linux-6.19.14/drivers/staging/media/atomisp/pci/bits.h
1/* SPDX-License-Identifier: GPL-2.0 */ 2/* 3 * Support for Intel Camera Imaging ISP subsystem. 4 * Copyright (c) 2015, Intel Corporation. 5 */ 6 7#ifndef _HRT_BITS_H 8#define _HRT_BITS_H 9 10#include <linux/args.h> 11 12#define _hrt_ones(n) CONCATENATE(_hrt_ones_, n) 13#define _hrt_ones_0x0 0x00000000U 14#define _hrt_ones_0x1 0x00000001U 15#define _hrt_ones_0x2 0x00000003U 16#define _hrt_ones_0x3 0x00000007U 17#define _hrt_ones_0x4 0x0000000FU 18#define _hrt_ones_0x5 0x0000001FU 19#define _hrt_ones_0x6 0x0000003FU 20#define _hrt_ones_0x7 0x0000007FU 21#define _hrt_ones_0x8 0x000000FFU 22#define _hrt_ones_0x9 0x000001FFU 23#define _hrt_ones_0xA 0x000003FFU 24#define _hrt_ones_0xB 0x000007FFU 25#define _hrt_ones_0xC 0x00000FFFU 26#define _hrt_ones_0xD 0x00001FFFU 27#define _hrt_ones_0xE 0x00003FFFU 28#define _hrt_ones_0xF 0x00007FFFU 29#define _hrt_ones_0x10 0x0000FFFFU 30#define _hrt_ones_0x11 0x0001FFFFU 31#define _hrt_ones_0x12 0x0003FFFFU 32#define _hrt_ones_0x13 0x0007FFFFU 33#define _hrt_ones_0x14 0x000FFFFFU 34#define _hrt_ones_0x15 0x001FFFFFU 35#define _hrt_ones_0x16 0x003FFFFFU 36#define _hrt_ones_0x17 0x007FFFFFU 37#define _hrt_ones_0x18 0x00FFFFFFU 38#define _hrt_ones_0x19 0x01FFFFFFU 39#define _hrt_ones_0x1A 0x03FFFFFFU 40#define _hrt_ones_0x1B 0x07FFFFFFU 41#define _hrt_ones_0x1C 0x0FFFFFFFU 42#define _hrt_ones_0x1D 0x1FFFFFFFU 43#define _hrt_ones_0x1E 0x3FFFFFFFU 44#define _hrt_ones_0x1F 0x7FFFFFFFU 45#define _hrt_ones_0x20 0xFFFFFFFFU 46 47#define _hrt_ones_0 _hrt_ones_0x0 48#define _hrt_ones_1 _hrt_ones_0x1 49#define _hrt_ones_2 _hrt_ones_0x2 50#define _hrt_ones_3 _hrt_ones_0x3 51#define _hrt_ones_4 _hrt_ones_0x4 52#define _hrt_ones_5 _hrt_ones_0x5 53#define _hrt_ones_6 _hrt_ones_0x6 54#define _hrt_ones_7 _hrt_ones_0x7 55#define _hrt_ones_8 _hrt_ones_0x8 56#define _hrt_ones_9 _hrt_ones_0x9 57#define _hrt_ones_10 _hrt_ones_0xA 58#define _hrt_ones_11 _hrt_ones_0xB 59#define _hrt_ones_12 _hrt_ones_0xC 60#define _hrt_ones_13 _hrt_ones_0xD 61#define _hrt_ones_14 _hrt_ones_0xE 62#define _hrt_ones_15 _hrt_ones_0xF 63#define _hrt_ones_16 _hrt_ones_0x10 64#define _hrt_ones_17 _hrt_ones_0x11 65#define _hrt_ones_18 _hrt_ones_0x12 66#define _hrt_ones_19 _hrt_ones_0x13 67#define _hrt_ones_20 _hrt_ones_0x14 68#define _hrt_ones_21 _hrt_ones_0x15 69#define _hrt_ones_22 _hrt_ones_0x16 70#define _hrt_ones_23 _hrt_ones_0x17 71#define _hrt_ones_24 _hrt_ones_0x18 72#define _hrt_ones_25 _hrt_ones_0x19 73#define _hrt_ones_26 _hrt_ones_0x1A 74#define _hrt_ones_27 _hrt_ones_0x1B 75#define _hrt_ones_28 _hrt_ones_0x1C 76#define _hrt_ones_29 _hrt_ones_0x1D 77#define _hrt_ones_30 _hrt_ones_0x1E 78#define _hrt_ones_31 _hrt_ones_0x1F 79#define _hrt_ones_32 _hrt_ones_0x20 80 81#define _hrt_mask(b, n) \ 82 (_hrt_ones(n) << (b)) 83#define _hrt_get_bits(w, b, n) \ 84 (((w) >> (b)) & _hrt_ones(n)) 85#define _hrt_set_bits(w, b, n, v) \ 86 (((w) & ~_hrt_mask(b, n)) | (((v) & _hrt_ones(n)) << (b))) 87#define _hrt_get_bit(w, b) \ 88 (((w) >> (b)) & 1) 89#define _hrt_set_bit(w, b, v) \ 90 (((w) & (~(1 << (b)))) | (((v) & 1) << (b))) 91#define _hrt_set_lower_half(w, v) \ 92 _hrt_set_bits(w, 0, 16, v) 93#define _hrt_set_upper_half(w, v) \ 94 _hrt_set_bits(w, 16, 16, v) 95 96#endif /* _HRT_BITS_H */
~/
Read-only file preview.