1 /* SPDX-License-Identifier: MIT */ 2 #ifndef __NVIF_EVENT_H__ 3 #define __NVIF_EVENT_H__ 4 5 struct nvif_notify_req_v0 { 6 __u8 version; 7 __u8 reply; 8 __u8 pad02[5]; 9 #define NVIF_NOTIFY_V0_ROUTE_NVIF 0x00 10 __u8 route; 11 __u64 token; /* must be unique */ 12 __u8 data[]; /* request data (below) */ 13 }; 14 15 struct nvif_notify_rep_v0 { 16 __u8 version; 17 __u8 pad01[6]; 18 __u8 route; 19 __u64 token; 20 __u8 data[]; /* reply data (below) */ 21 }; 22 23 struct nvif_notify_head_req_v0 { 24 /* nvif_notify_req ... */ 25 __u8 version; 26 __u8 head; 27 __u8 pad02[6]; 28 }; 29 30 struct nvif_notify_head_rep_v0 { 31 /* nvif_notify_rep ... */ 32 __u8 version; 33 __u8 pad01[7]; 34 }; 35 36 struct nvif_notify_conn_req_v0 { 37 /* nvif_notify_req ... */ 38 __u8 version; 39 #define NVIF_NOTIFY_CONN_V0_PLUG 0x01 40 #define NVIF_NOTIFY_CONN_V0_UNPLUG 0x02 41 #define NVIF_NOTIFY_CONN_V0_IRQ 0x04 42 #define NVIF_NOTIFY_CONN_V0_ANY 0x07 43 __u8 mask; 44 __u8 conn; 45 __u8 pad03[5]; 46 }; 47 48 struct nvif_notify_conn_rep_v0 { 49 /* nvif_notify_rep ... */ 50 __u8 version; 51 __u8 mask; 52 __u8 pad02[6]; 53 }; 54 55 struct nvif_notify_uevent_req { 56 /* nvif_notify_req ... */ 57 }; 58 59 struct nvif_notify_uevent_rep { 60 /* nvif_notify_rep ... */ 61 }; 62 63 #endif 64