]> git.proxmox.com Git - mirror_edk2.git/blame - Vlv2TbltDevicePkg/Include/CommonIncludes.h
Vlv2TbltDevicePkg: Replace BSD License with BSD+Patent License
[mirror_edk2.git] / Vlv2TbltDevicePkg / Include / CommonIncludes.h
CommitLineData
3cbfba02
DW
1/**\r
2\r
3Copyright (c) 1999 - 2014, Intel Corporation. All rights reserved\r
4 \r\r
9dc8036d
MK
5 SPDX-License-Identifier: BSD-2-Clause-Patent\r
6\r
3cbfba02
DW
7 \r\r
8\r
9@file\r
10 CommonIncludes.h\r
11\r
12@brief\r
13 This file defines common equates.\r
14\r
15**/\r
16#ifndef _COMMON_INCLUDES_H_\r
17#define _COMMON_INCLUDES_H_\r
18\r
19#define V_INTEL_VID 0x8086\r
20\r
21#ifndef STALL_ONE_MICRO_SECOND\r
22#define STALL_ONE_MICRO_SECOND 1\r
23#endif\r
24#ifndef STALL_ONE_MILLI_SECOND\r
25#define STALL_ONE_MILLI_SECOND 1000\r
26#endif\r
27///\r
28/// Min Max\r
29///\r
30#define V_MIN(a, b) (((a) < (b)) ? (a) : (b))\r
31#define V_MAX(a, b) (((a) > (b)) ? (a) : (b))\r
32\r
33///\r
34/// Bit map macro\r
35///\r
36#ifndef BIT0\r
37\r
38#define BIT63 0x8000000000000000\r
39#define BIT62 0x4000000000000000\r
40#define BIT61 0x2000000000000000\r
41#define BIT60 0x1000000000000000\r
42#define BIT59 0x0800000000000000\r
43#define BIT58 0x0400000000000000\r
44#define BIT57 0x0200000000000000\r
45#define BIT56 0x0100000000000000\r
46#define BIT55 0x0080000000000000\r
47#define BIT54 0x0040000000000000\r
48#define BIT53 0x0020000000000000\r
49#define BIT52 0x0010000000000000\r
50#define BIT51 0x0008000000000000\r
51#define BIT50 0x0004000000000000\r
52#define BIT49 0x0002000000000000\r
53#define BIT48 0x0001000000000000\r
54#define BIT47 0x0000800000000000\r
55#define BIT46 0x0000400000000000\r
56#define BIT45 0x0000200000000000\r
57#define BIT44 0x0000100000000000\r
58#define BIT43 0x0000080000000000\r
59#define BIT42 0x0000040000000000\r
60#define BIT41 0x0000020000000000\r
61#define BIT40 0x0000010000000000\r
62#define BIT39 0x0000008000000000\r
63#define BIT38 0x0000004000000000\r
64#define BIT37 0x0000002000000000\r
65#define BIT36 0x0000001000000000\r
66#define BIT35 0x0000000800000000\r
67#define BIT34 0x0000000400000000\r
68#define BIT33 0x0000000200000000\r
69#define BIT32 0x0000000100000000\r
70\r
71#define BIT31 0x80000000\r
72#define BIT30 0x40000000\r
73#define BIT29 0x20000000\r
74#define BIT28 0x10000000\r
75#define BIT27 0x08000000\r
76#define BIT26 0x04000000\r
77#define BIT25 0x02000000\r
78#define BIT24 0x01000000\r
79#define BIT23 0x00800000\r
80#define BIT22 0x00400000\r
81#define BIT21 0x00200000\r
82#define BIT20 0x00100000\r
83#define BIT19 0x00080000\r
84#define BIT18 0x00040000\r
85#define BIT17 0x00020000\r
86#define BIT16 0x00010000\r
87#define BIT15 0x00008000\r
88#define BIT14 0x00004000\r
89#define BIT13 0x00002000\r
90#define BIT12 0x00001000\r
91#define BIT11 0x00000800\r
92#define BIT10 0x00000400\r
93#define BIT9 0x00000200\r
94#define BIT8 0x00000100\r
95#define BIT7 0x00000080\r
96#define BIT6 0x00000040\r
97#define BIT5 0x00000020\r
98#define BIT4 0x00000010\r
99#define BIT3 0x00000008\r
100#define BIT2 0x00000004\r
101#define BIT1 0x00000002\r
102#define BIT0 0x00000001\r
103#endif\r
104\r
105#define BITS(x) (1 << (x))\r
106\r
107//\r
108// Notes :\r
109// 1. Bit position always starts at 0.\r
110// 2. Following macros are applicable only for Word alligned integers.\r
111//\r
112#define BIT(Pos, Value) (1 << (Pos) & (Value))\r
113#define BITRANGE(From, Width, Value) (((Value) >> (From)) & ((1 << (Width)) - 1))\r
114\r
115#endif\r