Back to home page

OSCL-LXR

 
 

    


0001 #ifndef __NVKM_FAULT_H__
0002 #define __NVKM_FAULT_H__
0003 #include <core/subdev.h>
0004 #include <core/event.h>
0005 #include <core/notify.h>
0006 
0007 struct nvkm_fault {
0008     const struct nvkm_fault_func *func;
0009     struct nvkm_subdev subdev;
0010 
0011     struct nvkm_fault_buffer *buffer[2];
0012     int buffer_nr;
0013 
0014     struct nvkm_event event;
0015 
0016     struct nvkm_notify nrpfb;
0017 
0018     struct nvkm_device_oclass user;
0019 };
0020 
0021 struct nvkm_fault_data {
0022     u64  addr;
0023     u64  inst;
0024     u64  time;
0025     u8 engine;
0026     u8  valid;
0027     u8    gpc;
0028     u8    hub;
0029     u8 access;
0030     u8 client;
0031     u8 reason;
0032 };
0033 
0034 int gp100_fault_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_fault **);
0035 int gp10b_fault_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_fault **);
0036 int gv100_fault_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_fault **);
0037 int tu102_fault_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_fault **);
0038 #endif