1 /* SPDX-License-Identifier: GPL-2.0-or-later */
3 #define NV_ERROR_SUCCESS 0x0
4 #define NV_ERROR_UNSPECIFIED 0x80000001
5 #define NV_ERROR_UNSUPPORTED 0x80000002
7 #define PCI_OWNER_SBIOS 0x0
8 #define PCI_OWNER_DRIVER 0x1
10 #define OPTIMUS_POWER_CONTROL_DISABLE 0x2
11 #define OPTIMUS_POWER_CONTROL_ENABLE 0x3
13 #define OPTIMUS_CONTROL_NO_RUN_PS0 0x0
14 #define OPTIMUS_CONTROL_RUN_PS0 0x1
16 #define GC6_STATE_EXITED 0x0
17 #define GC6_STATE_ENTERED 0x1
18 #define GC6_STATE_TRANSITION 0x2
20 #define GC6_DEFER_DISABLE 0x0
21 #define GC6_DEFER_ENABLE 0x1
23 #define NOTIFY_GPS_EVENT_STATUS_CHANGE 0xc0
24 #define NOTIFY_GPS_NVPCF_STATUS_CHANGE 0xc5
25 #define NOTIFY_GPS_EVENT_LIMIT_POWER_0 0xd1
26 #define NOTIFY_GPS_EVENT_LIMIT_POWER_1 0xd2
27 #define NOTIFY_GPS_EVENT_LIMIT_POWER_2 0xd3
28 #define NOTIFY_GPS_EVENT_LIMIT_POWER_3 0xd4
29 #define NOTIFY_GPS_EVENT_LIMIT_POWER_4 0xd5
31 /* Defines for NVJT subfunction */
32 #define NVJT_GPC_GSS 0
33 #define NVJT_GPC_EGNS 1
34 #define NVJT_GPC_EGIS 2
35 #define NVJT_GPS_XGXS 3
36 #define NVJT_GPS_XGIS 4
38 #define UUID_NVOP "a486d8f8-0bda-471b-a72b-6042a6b5bee0"
39 #define UUID_NVJT "cbeca351-067b-4924-9cbd-b46b00b86f34"
40 #define UUID_NBCI "d4a50b75-65c7-46f7-bfb7-41514cea0244"
41 #define UUID_NVPCF "36b49710-2483-11e7-9598-0800200c9a66"
42 #define UUID_GPS "a3132d01-8cda-49ba-a52e-bc9d46df6b81"
44 #define REVISION_MIN_NVOP 0x100
45 #define REVISION_MIN_NVJT 0x100
46 #define REVISION_MIN_NBCI 0x102
47 #define REVISION_MIN_NVPCF 0x200
48 #define REVISION_MIN_GPS 0x200