cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

lima_dump.h (1561B)


      1/* SPDX-License-Identifier: GPL-2.0 OR MIT */
      2/* Copyright 2020 Qiang Yu <yuq825@gmail.com> */
      3
      4#ifndef __LIMA_DUMP_H__
      5#define __LIMA_DUMP_H__
      6
      7#include <linux/types.h>
      8
      9/**
     10 * dump file format for all the information to start a lima task
     11 *
     12 * top level format
     13 * | magic code "LIMA" | format version | num tasks | data size |
     14 * | reserved | reserved | reserved | reserved |
     15 * | task 1 ID | task 1 size | num chunks | reserved | task 1 data |
     16 * | task 2 ID | task 2 size | num chunks | reserved | task 2 data |
     17 * ...
     18 *
     19 * task data format
     20 * | chunk 1 ID | chunk 1 size | reserved | reserved | chunk 1 data |
     21 * | chunk 2 ID | chunk 2 size | reserved | reserved | chunk 2 data |
     22 * ...
     23 *
     24 */
     25
     26#define LIMA_DUMP_MAJOR 1
     27#define LIMA_DUMP_MINOR 0
     28
     29#define LIMA_DUMP_MAGIC 0x414d494c
     30
     31struct lima_dump_head {
     32	__u32 magic;
     33	__u16 version_major;
     34	__u16 version_minor;
     35	__u32 num_tasks;
     36	__u32 size;
     37	__u32 reserved[4];
     38};
     39
     40#define LIMA_DUMP_TASK_GP   0
     41#define LIMA_DUMP_TASK_PP   1
     42#define LIMA_DUMP_TASK_NUM  2
     43
     44struct lima_dump_task {
     45	__u32 id;
     46	__u32 size;
     47	__u32 num_chunks;
     48	__u32 reserved;
     49};
     50
     51#define LIMA_DUMP_CHUNK_FRAME         0
     52#define LIMA_DUMP_CHUNK_BUFFER        1
     53#define LIMA_DUMP_CHUNK_PROCESS_NAME  2
     54#define LIMA_DUMP_CHUNK_PROCESS_ID    3
     55#define LIMA_DUMP_CHUNK_NUM           4
     56
     57struct lima_dump_chunk {
     58	__u32 id;
     59	__u32 size;
     60	__u32 reserved[2];
     61};
     62
     63struct lima_dump_chunk_buffer {
     64	__u32 id;
     65	__u32 size;
     66	__u32 va;
     67	__u32 reserved;
     68};
     69
     70struct lima_dump_chunk_pid {
     71	__u32 id;
     72	__u32 size;
     73	__u32 pid;
     74	__u32 reserved;
     75};
     76
     77#endif