1*61046927SAndroid Build Coastguard Worker #ifndef __NVIF_IOCTL_H__ 2*61046927SAndroid Build Coastguard Worker #define __NVIF_IOCTL_H__ 3*61046927SAndroid Build Coastguard Worker 4*61046927SAndroid Build Coastguard Worker #define NVIF_VERSION_LATEST 0x0000000000000000ULL 5*61046927SAndroid Build Coastguard Worker 6*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_v0 { 7*61046927SAndroid Build Coastguard Worker __u8 version; 8*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NOP 0x00 9*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_SCLASS 0x01 10*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NEW 0x02 11*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_DEL 0x03 12*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_MTHD 0x04 13*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_RD 0x05 14*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_WR 0x06 15*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_MAP 0x07 16*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_UNMAP 0x08 17*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NTFY_NEW 0x09 18*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NTFY_DEL 0x0a 19*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NTFY_GET 0x0b 20*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_NTFY_PUT 0x0c 21*61046927SAndroid Build Coastguard Worker __u8 type; 22*61046927SAndroid Build Coastguard Worker __u8 pad02[4]; 23*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_OWNER_NVIF 0x00 24*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_OWNER_ANY 0xff 25*61046927SAndroid Build Coastguard Worker __u8 owner; 26*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_ROUTE_NVIF 0x00 27*61046927SAndroid Build Coastguard Worker #define NVIF_IOCTL_V0_ROUTE_HIDDEN 0xff 28*61046927SAndroid Build Coastguard Worker __u8 route; 29*61046927SAndroid Build Coastguard Worker __u64 token; 30*61046927SAndroid Build Coastguard Worker __u64 object; 31*61046927SAndroid Build Coastguard Worker __u8 data[]; /* ioctl data (below) */ 32*61046927SAndroid Build Coastguard Worker }; 33*61046927SAndroid Build Coastguard Worker 34*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_nop_v0 { 35*61046927SAndroid Build Coastguard Worker __u64 version; 36*61046927SAndroid Build Coastguard Worker }; 37*61046927SAndroid Build Coastguard Worker 38*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_sclass_v0 { 39*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 40*61046927SAndroid Build Coastguard Worker __u8 version; 41*61046927SAndroid Build Coastguard Worker __u8 count; 42*61046927SAndroid Build Coastguard Worker __u8 pad02[6]; 43*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_sclass_oclass_v0 { 44*61046927SAndroid Build Coastguard Worker __s32 oclass; 45*61046927SAndroid Build Coastguard Worker __s16 minver; 46*61046927SAndroid Build Coastguard Worker __s16 maxver; 47*61046927SAndroid Build Coastguard Worker } oclass[]; 48*61046927SAndroid Build Coastguard Worker }; 49*61046927SAndroid Build Coastguard Worker 50*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_new_v0 { 51*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 52*61046927SAndroid Build Coastguard Worker __u8 version; 53*61046927SAndroid Build Coastguard Worker __u8 pad01[6]; 54*61046927SAndroid Build Coastguard Worker __u8 route; 55*61046927SAndroid Build Coastguard Worker __u64 token; 56*61046927SAndroid Build Coastguard Worker __u64 object; 57*61046927SAndroid Build Coastguard Worker __u32 handle; 58*61046927SAndroid Build Coastguard Worker __s32 oclass; 59*61046927SAndroid Build Coastguard Worker __u8 data[]; /* class data (class.h) */ 60*61046927SAndroid Build Coastguard Worker }; 61*61046927SAndroid Build Coastguard Worker 62*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_del { 63*61046927SAndroid Build Coastguard Worker }; 64*61046927SAndroid Build Coastguard Worker 65*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_rd_v0 { 66*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 67*61046927SAndroid Build Coastguard Worker __u8 version; 68*61046927SAndroid Build Coastguard Worker __u8 size; 69*61046927SAndroid Build Coastguard Worker __u8 pad02[2]; 70*61046927SAndroid Build Coastguard Worker __u32 data; 71*61046927SAndroid Build Coastguard Worker __u64 addr; 72*61046927SAndroid Build Coastguard Worker }; 73*61046927SAndroid Build Coastguard Worker 74*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_wr_v0 { 75*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 76*61046927SAndroid Build Coastguard Worker __u8 version; 77*61046927SAndroid Build Coastguard Worker __u8 size; 78*61046927SAndroid Build Coastguard Worker __u8 pad02[2]; 79*61046927SAndroid Build Coastguard Worker __u32 data; 80*61046927SAndroid Build Coastguard Worker __u64 addr; 81*61046927SAndroid Build Coastguard Worker }; 82*61046927SAndroid Build Coastguard Worker 83*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_map_v0 { 84*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 85*61046927SAndroid Build Coastguard Worker __u8 version; 86*61046927SAndroid Build Coastguard Worker __u8 pad01[3]; 87*61046927SAndroid Build Coastguard Worker __u32 length; 88*61046927SAndroid Build Coastguard Worker __u64 handle; 89*61046927SAndroid Build Coastguard Worker }; 90*61046927SAndroid Build Coastguard Worker 91*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_unmap { 92*61046927SAndroid Build Coastguard Worker }; 93*61046927SAndroid Build Coastguard Worker 94*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_ntfy_new_v0 { 95*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 96*61046927SAndroid Build Coastguard Worker __u8 version; 97*61046927SAndroid Build Coastguard Worker __u8 event; 98*61046927SAndroid Build Coastguard Worker __u8 index; 99*61046927SAndroid Build Coastguard Worker __u8 pad03[5]; 100*61046927SAndroid Build Coastguard Worker __u8 data[]; /* event request data (event.h) */ 101*61046927SAndroid Build Coastguard Worker }; 102*61046927SAndroid Build Coastguard Worker 103*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_ntfy_del_v0 { 104*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 105*61046927SAndroid Build Coastguard Worker __u8 version; 106*61046927SAndroid Build Coastguard Worker __u8 index; 107*61046927SAndroid Build Coastguard Worker __u8 pad02[6]; 108*61046927SAndroid Build Coastguard Worker }; 109*61046927SAndroid Build Coastguard Worker 110*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_ntfy_get_v0 { 111*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 112*61046927SAndroid Build Coastguard Worker __u8 version; 113*61046927SAndroid Build Coastguard Worker __u8 index; 114*61046927SAndroid Build Coastguard Worker __u8 pad02[6]; 115*61046927SAndroid Build Coastguard Worker }; 116*61046927SAndroid Build Coastguard Worker 117*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_ntfy_put_v0 { 118*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 119*61046927SAndroid Build Coastguard Worker __u8 version; 120*61046927SAndroid Build Coastguard Worker __u8 index; 121*61046927SAndroid Build Coastguard Worker __u8 pad02[6]; 122*61046927SAndroid Build Coastguard Worker }; 123*61046927SAndroid Build Coastguard Worker 124*61046927SAndroid Build Coastguard Worker struct nvif_ioctl_mthd_v0 { 125*61046927SAndroid Build Coastguard Worker /* nvif_ioctl ... */ 126*61046927SAndroid Build Coastguard Worker __u8 version; 127*61046927SAndroid Build Coastguard Worker __u8 method; 128*61046927SAndroid Build Coastguard Worker __u8 pad02[6]; 129*61046927SAndroid Build Coastguard Worker __u8 data[]; /* method data (class.h) */ 130*61046927SAndroid Build Coastguard Worker }; 131*61046927SAndroid Build Coastguard Worker 132*61046927SAndroid Build Coastguard Worker #endif 133