Linux 6.10-rc4
[linux-block.git] / include / linux / pstore_ram.h
CommitLineData
9c92ab61 1/* SPDX-License-Identifier: GPL-2.0-only */
cddb8751
AV
2/*
3 * Copyright (C) 2010 Marco Stornelli <marco.stornelli@gmail.com>
4 * Copyright (C) 2011 Kees Cook <keescook@chromium.org>
5 * Copyright (C) 2011 Google, Inc.
cddb8751
AV
6 */
7
1894a253
AV
8#ifndef __LINUX_PSTORE_RAM_H__
9#define __LINUX_PSTORE_RAM_H__
c3b92ce9 10
f0f23e54 11#include <linux/pstore.h>
cddb8751 12
c31ad081
AH
13struct persistent_ram_ecc_info {
14 int block_size;
15 int ecc_size;
16 int symsize;
17 int poly;
f2531f19 18 uint16_t *par;
c31ad081
AH
19};
20
c3b92ce9
KP
21/*
22 * Ramoops platform data
23 * @mem_size memory size for ramoops
24 * @mem_address physical memory address to contain ramoops
25 */
26
a1cf53ac
JF
27#define RAMOOPS_FLAG_FTRACE_PER_CPU BIT(0)
28
c3b92ce9
KP
29struct ramoops_platform_data {
30 unsigned long mem_size;
764fd639 31 phys_addr_t mem_address;
027bc8b0 32 unsigned int mem_type;
3e5c4fad 33 unsigned long record_size;
b5d38e9b 34 unsigned long console_size;
a694d1b5 35 unsigned long ftrace_size;
9d5438f4 36 unsigned long pmsg_size;
791205e3 37 int max_reason;
a1cf53ac 38 u32 flags;
c31ad081 39 struct persistent_ram_ecc_info ecc_info;
c3b92ce9
KP
40};
41
42#endif