• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 /*
3  * android_vendor.h - Android vendor data
4  *
5  * Copyright 2020 Google LLC
6  *
7  * These macros are to be used to reserve space in kernel data structures
8  * for use by vendor modules.
9  *
10  * These macros should be used before the kernel abi is "frozen".
11  * Fields can be added to various kernel structures that need space
12  * for functionality implemented in vendor modules. The use of
13  * these fields is vendor specific.
14  */
15 #ifndef _ANDROID_VENDOR_H
16 #define _ANDROID_VENDOR_H
17 
18 /*
19  * ANDROID_VENDOR_DATA
20  *   Reserve some "padding" in a structure for potential future use.
21  *   This normally placed at the end of a structure.
22  *   number: the "number" of the padding variable in the structure.  Start with
23  *   1 and go up.
24  *
25  * ANDROID_VENDOR_DATA_ARRAY
26  *   Same as ANDROID_VENDOR_DATA but allocates an array of u64 with
27  *   the specified size
28  */
29 #define ANDROID_VENDOR_DATA(n)		u64 android_vendor_data##n
30 #define ANDROID_VENDOR_DATA_ARRAY(n, s)	u64 android_vendor_data##n[s]
31 
32 #define ANDROID_OEM_DATA(n)		u64 android_oem_data##n
33 #define ANDROID_OEM_DATA_ARRAY(n, s)	u64 android_oem_data##n[s]
34 
35 #endif /* _ANDROID_VENDOR_H */
36