This replaces the twisty, confusing, relationship between nvkm_event and nvkm_notify with something much simpler, and less racey. It also places events in the object tree hierarchy, which will allow a heap of the code tracking events across allocation/teardown/suspend to be removed. This commit just adds the new interfaces, and passes the owning subdev to the event constructor to enable debug-tracing in the new code. v2: - use ?: (lyude) Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Reviewed-by: Lyude Paul <lyude@redhat.com>
26 lines
423 B
C
26 lines
423 B
C
/* SPDX-License-Identifier: MIT */
|
|
#ifndef __NVIF_IF000E_H__
|
|
#define __NVIF_IF000E_H__
|
|
|
|
union nvif_event_args {
|
|
struct nvif_event_v0 {
|
|
__u8 version;
|
|
__u8 wait;
|
|
__u8 pad02[6];
|
|
__u8 data[];
|
|
} v0;
|
|
};
|
|
|
|
#define NVIF_EVENT_V0_ALLOW 0x00
|
|
#define NVIF_EVENT_V0_BLOCK 0x01
|
|
|
|
union nvif_event_allow_args {
|
|
struct nvif_event_allow_vn {
|
|
} vn;
|
|
};
|
|
|
|
union nvif_event_block_args {
|
|
struct nvif_event_block_vn {
|
|
} vn;
|
|
};
|
|
#endif
|