18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: MIT */
28c2ecf20Sopenharmony_ci#ifndef __NVIF_EVENT_H__
38c2ecf20Sopenharmony_ci#define __NVIF_EVENT_H__
48c2ecf20Sopenharmony_ci
58c2ecf20Sopenharmony_cistruct nvif_notify_req_v0 {
68c2ecf20Sopenharmony_ci	__u8  version;
78c2ecf20Sopenharmony_ci	__u8  reply;
88c2ecf20Sopenharmony_ci	__u8  pad02[5];
98c2ecf20Sopenharmony_ci#define NVIF_NOTIFY_V0_ROUTE_NVIF                                          0x00
108c2ecf20Sopenharmony_ci	__u8  route;
118c2ecf20Sopenharmony_ci	__u64 token;	/* must be unique */
128c2ecf20Sopenharmony_ci	__u8  data[];	/* request data (below) */
138c2ecf20Sopenharmony_ci};
148c2ecf20Sopenharmony_ci
158c2ecf20Sopenharmony_cistruct nvif_notify_rep_v0 {
168c2ecf20Sopenharmony_ci	__u8  version;
178c2ecf20Sopenharmony_ci	__u8  pad01[6];
188c2ecf20Sopenharmony_ci	__u8  route;
198c2ecf20Sopenharmony_ci	__u64 token;
208c2ecf20Sopenharmony_ci	__u8  data[];	/* reply data (below) */
218c2ecf20Sopenharmony_ci};
228c2ecf20Sopenharmony_ci
238c2ecf20Sopenharmony_cistruct nvif_notify_head_req_v0 {
248c2ecf20Sopenharmony_ci	/* nvif_notify_req ... */
258c2ecf20Sopenharmony_ci	__u8  version;
268c2ecf20Sopenharmony_ci	__u8  head;
278c2ecf20Sopenharmony_ci	__u8  pad02[6];
288c2ecf20Sopenharmony_ci};
298c2ecf20Sopenharmony_ci
308c2ecf20Sopenharmony_cistruct nvif_notify_head_rep_v0 {
318c2ecf20Sopenharmony_ci	/* nvif_notify_rep ... */
328c2ecf20Sopenharmony_ci	__u8  version;
338c2ecf20Sopenharmony_ci	__u8  pad01[7];
348c2ecf20Sopenharmony_ci};
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_cistruct nvif_notify_conn_req_v0 {
378c2ecf20Sopenharmony_ci	/* nvif_notify_req ... */
388c2ecf20Sopenharmony_ci	__u8  version;
398c2ecf20Sopenharmony_ci#define NVIF_NOTIFY_CONN_V0_PLUG                                           0x01
408c2ecf20Sopenharmony_ci#define NVIF_NOTIFY_CONN_V0_UNPLUG                                         0x02
418c2ecf20Sopenharmony_ci#define NVIF_NOTIFY_CONN_V0_IRQ                                            0x04
428c2ecf20Sopenharmony_ci#define NVIF_NOTIFY_CONN_V0_ANY                                            0x07
438c2ecf20Sopenharmony_ci	__u8  mask;
448c2ecf20Sopenharmony_ci	__u8  conn;
458c2ecf20Sopenharmony_ci	__u8  pad03[5];
468c2ecf20Sopenharmony_ci};
478c2ecf20Sopenharmony_ci
488c2ecf20Sopenharmony_cistruct nvif_notify_conn_rep_v0 {
498c2ecf20Sopenharmony_ci	/* nvif_notify_rep ... */
508c2ecf20Sopenharmony_ci	__u8  version;
518c2ecf20Sopenharmony_ci	__u8  mask;
528c2ecf20Sopenharmony_ci	__u8  pad02[6];
538c2ecf20Sopenharmony_ci};
548c2ecf20Sopenharmony_ci
558c2ecf20Sopenharmony_cistruct nvif_notify_uevent_req {
568c2ecf20Sopenharmony_ci	/* nvif_notify_req ... */
578c2ecf20Sopenharmony_ci};
588c2ecf20Sopenharmony_ci
598c2ecf20Sopenharmony_cistruct nvif_notify_uevent_rep {
608c2ecf20Sopenharmony_ci	/* nvif_notify_rep ... */
618c2ecf20Sopenharmony_ci};
628c2ecf20Sopenharmony_ci
638c2ecf20Sopenharmony_ci#endif
64