Lines Matching full:fault

33 	struct nvkm_fault *fault = container_of(work, typeof(*fault), nrpfb_work);  in gv100_fault_buffer_process()  local
34 struct nvkm_fault_buffer *buffer = fault->buffer[0]; in gv100_fault_buffer_process()
35 struct nvkm_device *device = fault->subdev.device; in gv100_fault_buffer_process()
44 const u32 base = get * buffer->fault->func->buffer.entry_size; in gv100_fault_buffer_process()
78 struct nvkm_device *device = buffer->fault->subdev.device; in gv100_fault_buffer_intr()
89 struct nvkm_device *device = buffer->fault->subdev.device; in gv100_fault_buffer_fini()
97 struct nvkm_device *device = buffer->fault->subdev.device; in gv100_fault_buffer_init()
109 struct nvkm_device *device = buffer->fault->subdev.device; in gv100_fault_buffer_info()
122 struct nvkm_fault *fault = container_of(ntfy, typeof(*fault), nrpfb); in gv100_fault_ntfy_nrpfb() local
124 schedule_work(&fault->nrpfb_work); in gv100_fault_ntfy_nrpfb()
129 gv100_fault_intr_fault(struct nvkm_fault *fault) in gv100_fault_intr_fault() argument
131 struct nvkm_subdev *subdev = &fault->subdev; in gv100_fault_intr_fault()
155 gv100_fault_intr(struct nvkm_fault *fault) in gv100_fault_intr() argument
157 struct nvkm_subdev *subdev = &fault->subdev; in gv100_fault_intr()
162 gv100_fault_intr_fault(fault); in gv100_fault_intr()
168 if (fault->buffer[0]) { in gv100_fault_intr()
169 nvkm_event_ntfy(&fault->event, 0, NVKM_FAULT_BUFFER_EVENT_PENDING); in gv100_fault_intr()
175 if (fault->buffer[1]) { in gv100_fault_intr()
176 nvkm_event_ntfy(&fault->event, 1, NVKM_FAULT_BUFFER_EVENT_PENDING); in gv100_fault_intr()
187 gv100_fault_fini(struct nvkm_fault *fault) in gv100_fault_fini() argument
189 nvkm_event_ntfy_block(&fault->nrpfb); in gv100_fault_fini()
190 flush_work(&fault->nrpfb_work); in gv100_fault_fini()
192 if (fault->buffer[0]) in gv100_fault_fini()
193 fault->func->buffer.fini(fault->buffer[0]); in gv100_fault_fini()
195 nvkm_mask(fault->subdev.device, 0x100a34, 0x80000000, 0x80000000); in gv100_fault_fini()
199 gv100_fault_init(struct nvkm_fault *fault) in gv100_fault_init() argument
201 nvkm_mask(fault->subdev.device, 0x100a2c, 0x80000000, 0x80000000); in gv100_fault_init()
202 fault->func->buffer.init(fault->buffer[0]); in gv100_fault_init()
203 nvkm_event_ntfy_allow(&fault->nrpfb); in gv100_fault_init()
207 gv100_fault_oneinit(struct nvkm_fault *fault) in gv100_fault_oneinit() argument
209 nvkm_event_ntfy_add(&fault->event, 0, NVKM_FAULT_BUFFER_EVENT_PENDING, true, in gv100_fault_oneinit()
210 gv100_fault_ntfy_nrpfb, &fault->nrpfb); in gv100_fault_oneinit()
227 /*TODO: Figure out how to expose non-replayable fault buffer, which,
231 * the non-replayable fault buffer.