18c2ecf20Sopenharmony_ci/* SPDX-License-Identifier: GPL-2.0 */ 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright (C) 2015 Etnaviv Project 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#ifndef ETNAVIV_DUMP_H 78c2ecf20Sopenharmony_ci#define ETNAVIV_DUMP_H 88c2ecf20Sopenharmony_ci 98c2ecf20Sopenharmony_ci#include <linux/types.h> 108c2ecf20Sopenharmony_ci 118c2ecf20Sopenharmony_cienum { 128c2ecf20Sopenharmony_ci ETDUMP_MAGIC = 0x414e5445, 138c2ecf20Sopenharmony_ci ETDUMP_BUF_REG = 0, 148c2ecf20Sopenharmony_ci ETDUMP_BUF_MMU, 158c2ecf20Sopenharmony_ci ETDUMP_BUF_RING, 168c2ecf20Sopenharmony_ci ETDUMP_BUF_CMD, 178c2ecf20Sopenharmony_ci ETDUMP_BUF_BOMAP, 188c2ecf20Sopenharmony_ci ETDUMP_BUF_BO, 198c2ecf20Sopenharmony_ci ETDUMP_BUF_END, 208c2ecf20Sopenharmony_ci}; 218c2ecf20Sopenharmony_ci 228c2ecf20Sopenharmony_cistruct etnaviv_dump_object_header { 238c2ecf20Sopenharmony_ci __le32 magic; 248c2ecf20Sopenharmony_ci __le32 type; 258c2ecf20Sopenharmony_ci __le32 file_offset; 268c2ecf20Sopenharmony_ci __le32 file_size; 278c2ecf20Sopenharmony_ci __le64 iova; 288c2ecf20Sopenharmony_ci __le32 data[2]; 298c2ecf20Sopenharmony_ci}; 308c2ecf20Sopenharmony_ci 318c2ecf20Sopenharmony_ci/* Registers object, an array of these */ 328c2ecf20Sopenharmony_cistruct etnaviv_dump_registers { 338c2ecf20Sopenharmony_ci __le32 reg; 348c2ecf20Sopenharmony_ci __le32 value; 358c2ecf20Sopenharmony_ci}; 368c2ecf20Sopenharmony_ci 378c2ecf20Sopenharmony_ci#ifdef __KERNEL__ 388c2ecf20Sopenharmony_cistruct etnaviv_gem_submit; 398c2ecf20Sopenharmony_civoid etnaviv_core_dump(struct etnaviv_gem_submit *submit); 408c2ecf20Sopenharmony_ci#endif 418c2ecf20Sopenharmony_ci 428c2ecf20Sopenharmony_ci#endif 43