Lines Matching refs:dumper
121 struct a6xx_crashdumper *dumper) in a6xx_crashdumper_init() argument
123 dumper->ptr = msm_gem_kernel_new(gpu->dev, in a6xx_crashdumper_init()
125 &dumper->bo, &dumper->iova); in a6xx_crashdumper_init()
127 if (!IS_ERR(dumper->ptr)) in a6xx_crashdumper_init()
128 msm_gem_object_set_name(dumper->bo, "crashdump"); in a6xx_crashdumper_init()
130 return PTR_ERR_OR_ZERO(dumper->ptr); in a6xx_crashdumper_init()
134 struct a6xx_crashdumper *dumper) in a6xx_crashdumper_run() argument
141 if (IS_ERR_OR_NULL(dumper->ptr)) in a6xx_crashdumper_run()
151 REG_A6XX_CP_CRASH_SCRIPT_BASE_HI, dumper->iova); in a6xx_crashdumper_run()
458 struct a6xx_crashdumper *dumper) in a6xx_get_dbgahb_cluster() argument
460 u64 *in = dumper->ptr; in a6xx_get_dbgahb_cluster()
461 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; in a6xx_get_dbgahb_cluster()
492 if (a6xx_crashdumper_run(gpu, dumper)) in a6xx_get_dbgahb_cluster()
496 obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET, in a6xx_get_dbgahb_cluster()
502 struct a6xx_crashdumper *dumper) in a6xx_get_dbgahb_clusters() argument
518 &a6xx_state->dbgahb_clusters[i], dumper); in a6xx_get_dbgahb_clusters()
526 struct a6xx_crashdumper *dumper) in a6xx_get_cluster() argument
528 u64 *in = dumper->ptr; in a6xx_get_cluster()
529 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; in a6xx_get_cluster()
563 if (a6xx_crashdumper_run(gpu, dumper)) in a6xx_get_cluster()
567 obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET, in a6xx_get_cluster()
573 struct a6xx_crashdumper *dumper) in a6xx_get_clusters() argument
587 &a6xx_state->clusters[i], dumper); in a6xx_get_clusters()
595 struct a6xx_crashdumper *dumper) in a6xx_get_shader_block() argument
597 u64 *in = dumper->ptr; in a6xx_get_shader_block()
609 block->size, dumper->iova + A6XX_CD_DATA_OFFSET); in a6xx_get_shader_block()
614 if (a6xx_crashdumper_run(gpu, dumper)) in a6xx_get_shader_block()
618 obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET, in a6xx_get_shader_block()
624 struct a6xx_crashdumper *dumper) in a6xx_get_shaders() argument
638 &a6xx_state->shaders[i], dumper); in a6xx_get_shaders()
646 struct a6xx_crashdumper *dumper) in a6xx_get_crashdumper_hlsq_registers() argument
649 u64 *in = dumper->ptr; in a6xx_get_crashdumper_hlsq_registers()
650 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; in a6xx_get_crashdumper_hlsq_registers()
671 if (a6xx_crashdumper_run(gpu, dumper)) in a6xx_get_crashdumper_hlsq_registers()
675 obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET, in a6xx_get_crashdumper_hlsq_registers()
684 struct a6xx_crashdumper *dumper) in a6xx_get_crashdumper_registers() argument
687 u64 *in = dumper->ptr; in a6xx_get_crashdumper_registers()
688 u64 out = dumper->iova + A6XX_CD_DATA_OFFSET; in a6xx_get_crashdumper_registers()
709 if (a6xx_crashdumper_run(gpu, dumper)) in a6xx_get_crashdumper_registers()
713 obj->data = state_kmemdup(a6xx_state, dumper->ptr + A6XX_CD_DATA_OFFSET, in a6xx_get_crashdumper_registers()
856 struct a6xx_crashdumper *dumper) in a6xx_get_registers() argument
885 if (!dumper) { in a6xx_get_registers()
904 dumper); in a6xx_get_registers()
910 dumper); in a6xx_get_registers()
972 struct a6xx_crashdumper _dumper = { 0 }, *dumper = NULL; in a6xx_gpu_state_get() local
1011 dumper = &_dumper; in a6xx_gpu_state_get()
1014 a6xx_get_registers(gpu, a6xx_state, dumper); in a6xx_gpu_state_get()
1016 if (dumper) { in a6xx_gpu_state_get()
1017 a6xx_get_shaders(gpu, a6xx_state, dumper); in a6xx_gpu_state_get()
1018 a6xx_get_clusters(gpu, a6xx_state, dumper); in a6xx_gpu_state_get()
1019 a6xx_get_dbgahb_clusters(gpu, a6xx_state, dumper); in a6xx_gpu_state_get()
1021 msm_gem_kernel_put(dumper->bo, gpu->aspace); in a6xx_gpu_state_get()