mirror of
				https://github.com/torvalds/linux.git
				synced 2025-10-31 16:48:26 +02:00 
			
		
		
		
	 b78edd46f6
			
		
	
	
		b78edd46f6
		
	
	
	
	
		
			
			Save all information to start a task which can be exported to user for debug usage. Dump file data format is specified in lima_dump.h v2: Add include header to address build robot complain. Tested-by: Andreas Baierl <ichgeh@imkreisrum.de> Reviewed-by: Vasily Khoruzhick <anarsoul@gmail.com> Signed-off-by: Qiang Yu <yuq825@gmail.com> Link: https://patchwork.freedesktop.org/patch/msgid/20200307134423.24329-1-yuq825@gmail.com
		
			
				
	
	
		
			77 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			77 lines
		
	
	
	
		
			1.5 KiB
		
	
	
	
		
			C
		
	
	
	
	
	
| /* SPDX-License-Identifier: GPL-2.0 OR MIT */
 | |
| /* Copyright 2020 Qiang Yu <yuq825@gmail.com> */
 | |
| 
 | |
| #ifndef __LIMA_DUMP_H__
 | |
| #define __LIMA_DUMP_H__
 | |
| 
 | |
| #include <linux/types.h>
 | |
| 
 | |
| /**
 | |
|  * dump file format for all the information to start a lima task
 | |
|  *
 | |
|  * top level format
 | |
|  * | magic code "LIMA" | format version | num tasks | data size |
 | |
|  * | reserved | reserved | reserved | reserved |
 | |
|  * | task 1 ID | task 1 size | num chunks | reserved | task 1 data |
 | |
|  * | task 2 ID | task 2 size | num chunks | reserved | task 2 data |
 | |
|  * ...
 | |
|  *
 | |
|  * task data format
 | |
|  * | chunk 1 ID | chunk 1 size | reserved | reserved | chunk 1 data |
 | |
|  * | chunk 2 ID | chunk 2 size | reserved | reserved | chunk 2 data |
 | |
|  * ...
 | |
|  *
 | |
|  */
 | |
| 
 | |
| #define LIMA_DUMP_MAJOR 1
 | |
| #define LIMA_DUMP_MINOR 0
 | |
| 
 | |
| #define LIMA_DUMP_MAGIC 0x414d494c
 | |
| 
 | |
| struct lima_dump_head {
 | |
| 	__u32 magic;
 | |
| 	__u16 version_major;
 | |
| 	__u16 version_minor;
 | |
| 	__u32 num_tasks;
 | |
| 	__u32 size;
 | |
| 	__u32 reserved[4];
 | |
| };
 | |
| 
 | |
| #define LIMA_DUMP_TASK_GP   0
 | |
| #define LIMA_DUMP_TASK_PP   1
 | |
| #define LIMA_DUMP_TASK_NUM  2
 | |
| 
 | |
| struct lima_dump_task {
 | |
| 	__u32 id;
 | |
| 	__u32 size;
 | |
| 	__u32 num_chunks;
 | |
| 	__u32 reserved;
 | |
| };
 | |
| 
 | |
| #define LIMA_DUMP_CHUNK_FRAME         0
 | |
| #define LIMA_DUMP_CHUNK_BUFFER        1
 | |
| #define LIMA_DUMP_CHUNK_PROCESS_NAME  2
 | |
| #define LIMA_DUMP_CHUNK_PROCESS_ID    3
 | |
| #define LIMA_DUMP_CHUNK_NUM           4
 | |
| 
 | |
| struct lima_dump_chunk {
 | |
| 	__u32 id;
 | |
| 	__u32 size;
 | |
| 	__u32 reserved[2];
 | |
| };
 | |
| 
 | |
| struct lima_dump_chunk_buffer {
 | |
| 	__u32 id;
 | |
| 	__u32 size;
 | |
| 	__u32 va;
 | |
| 	__u32 reserved;
 | |
| };
 | |
| 
 | |
| struct lima_dump_chunk_pid {
 | |
| 	__u32 id;
 | |
| 	__u32 size;
 | |
| 	__u32 pid;
 | |
| 	__u32 reserved;
 | |
| };
 | |
| 
 | |
| #endif
 |