123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132 |
- #ifndef __NVIF_IOCTL_H__
- #define __NVIF_IOCTL_H__
- #define NVIF_VERSION_LATEST 0x0000000000000000ULL
- struct nvif_ioctl_v0 {
- __u8 version;
- #define NVIF_IOCTL_V0_NOP 0x00
- #define NVIF_IOCTL_V0_SCLASS 0x01
- #define NVIF_IOCTL_V0_NEW 0x02
- #define NVIF_IOCTL_V0_DEL 0x03
- #define NVIF_IOCTL_V0_MTHD 0x04
- #define NVIF_IOCTL_V0_RD 0x05
- #define NVIF_IOCTL_V0_WR 0x06
- #define NVIF_IOCTL_V0_MAP 0x07
- #define NVIF_IOCTL_V0_UNMAP 0x08
- #define NVIF_IOCTL_V0_NTFY_NEW 0x09
- #define NVIF_IOCTL_V0_NTFY_DEL 0x0a
- #define NVIF_IOCTL_V0_NTFY_GET 0x0b
- #define NVIF_IOCTL_V0_NTFY_PUT 0x0c
- __u8 type;
- __u8 pad02[4];
- #define NVIF_IOCTL_V0_OWNER_NVIF 0x00
- #define NVIF_IOCTL_V0_OWNER_ANY 0xff
- __u8 owner;
- #define NVIF_IOCTL_V0_ROUTE_NVIF 0x00
- #define NVIF_IOCTL_V0_ROUTE_HIDDEN 0xff
- __u8 route;
- __u64 token;
- __u64 object;
- __u8 data[]; /* ioctl data (below) */
- };
- struct nvif_ioctl_nop_v0 {
- __u64 version;
- };
- struct nvif_ioctl_sclass_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 count;
- __u8 pad02[6];
- struct nvif_ioctl_sclass_oclass_v0 {
- __s32 oclass;
- __s16 minver;
- __s16 maxver;
- } oclass[];
- };
- struct nvif_ioctl_new_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 pad01[6];
- __u8 route;
- __u64 token;
- __u64 object;
- __u32 handle;
- __s32 oclass;
- __u8 data[]; /* class data (class.h) */
- };
- struct nvif_ioctl_del {
- };
- struct nvif_ioctl_rd_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 size;
- __u8 pad02[2];
- __u32 data;
- __u64 addr;
- };
- struct nvif_ioctl_wr_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 size;
- __u8 pad02[2];
- __u32 data;
- __u64 addr;
- };
- struct nvif_ioctl_map_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 pad01[3];
- __u32 length;
- __u64 handle;
- };
- struct nvif_ioctl_unmap {
- };
- struct nvif_ioctl_ntfy_new_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 event;
- __u8 index;
- __u8 pad03[5];
- __u8 data[]; /* event request data (event.h) */
- };
- struct nvif_ioctl_ntfy_del_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 index;
- __u8 pad02[6];
- };
- struct nvif_ioctl_ntfy_get_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 index;
- __u8 pad02[6];
- };
- struct nvif_ioctl_ntfy_put_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 index;
- __u8 pad02[6];
- };
- struct nvif_ioctl_mthd_v0 {
- /* nvif_ioctl ... */
- __u8 version;
- __u8 method;
- __u8 pad02[6];
- __u8 data[]; /* method data (class.h) */
- };
- #endif
|