fadump-internal.h (0226e55275e569126882a7befe0b1a1c9bd270aa) fadump-internal.h (d3833a7010817f82bff373e26d146e6401c695f4)
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Firmware-Assisted Dump internal code.
4 *
5 * Copyright 2011, Mahesh Salgaonkar, IBM Corporation.
6 * Copyright 2019, Hari Bathini, IBM Corporation.
7 */
8

--- 63 unchanged lines hidden (view full) ---

72 struct cpumask online_mask;
73};
74
75struct fad_crash_memory_ranges {
76 unsigned long long base;
77 unsigned long long size;
78};
79
1/* SPDX-License-Identifier: GPL-2.0-or-later */
2/*
3 * Firmware-Assisted Dump internal code.
4 *
5 * Copyright 2011, Mahesh Salgaonkar, IBM Corporation.
6 * Copyright 2019, Hari Bathini, IBM Corporation.
7 */
8

--- 63 unchanged lines hidden (view full) ---

72 struct cpumask online_mask;
73};
74
75struct fad_crash_memory_ranges {
76 unsigned long long base;
77 unsigned long long size;
78};
79
80/* Platform specific callback functions */
81struct fadump_ops;
82
80/* Firmware-assisted dump configuration details. */
81struct fw_dump {
82 unsigned long reserve_dump_area_start;
83 unsigned long reserve_dump_area_size;
84 /* cmd line option during boot */
85 unsigned long reserve_bootvar;
86
87 unsigned long cpu_state_data_size;

--- 6 unchanged lines hidden (view full) ---

94
95 int ibm_configure_kernel_dump;
96
97 unsigned long fadump_enabled:1;
98 unsigned long fadump_supported:1;
99 unsigned long dump_active:1;
100 unsigned long dump_registered:1;
101 unsigned long nocma:1;
83/* Firmware-assisted dump configuration details. */
84struct fw_dump {
85 unsigned long reserve_dump_area_start;
86 unsigned long reserve_dump_area_size;
87 /* cmd line option during boot */
88 unsigned long reserve_bootvar;
89
90 unsigned long cpu_state_data_size;

--- 6 unchanged lines hidden (view full) ---

97
98 int ibm_configure_kernel_dump;
99
100 unsigned long fadump_enabled:1;
101 unsigned long fadump_supported:1;
102 unsigned long dump_active:1;
103 unsigned long dump_registered:1;
104 unsigned long nocma:1;
105
106 struct fadump_ops *ops;
102};
103
107};
108
109struct fadump_ops {
110 u64 (*fadump_init_mem_struct)(struct fw_dump *fadump_conf);
111 int (*fadump_register)(struct fw_dump *fadump_conf);
112 int (*fadump_unregister)(struct fw_dump *fadump_conf);
113 int (*fadump_invalidate)(struct fw_dump *fadump_conf);
114 int (*fadump_process)(struct fw_dump *fadump_conf);
115 void (*fadump_region_show)(struct fw_dump *fadump_conf,
116 struct seq_file *m);
117 void (*fadump_trigger)(struct fadump_crash_info_header *fdh,
118 const char *msg);
119};
120
104/* Helper functions */
105s32 fadump_setup_cpu_notes_buf(u32 num_cpus);
106void fadump_free_cpu_notes_buf(void);
107u32 *fadump_regs_to_elf_notes(u32 *buf, struct pt_regs *regs);
108void fadump_update_elfcore_header(char *bufp);
109bool is_fadump_boot_mem_contiguous(void);
110bool is_fadump_reserved_mem_contiguous(void);
111
121/* Helper functions */
122s32 fadump_setup_cpu_notes_buf(u32 num_cpus);
123void fadump_free_cpu_notes_buf(void);
124u32 *fadump_regs_to_elf_notes(u32 *buf, struct pt_regs *regs);
125void fadump_update_elfcore_header(char *bufp);
126bool is_fadump_boot_mem_contiguous(void);
127bool is_fadump_reserved_mem_contiguous(void);
128
129#ifdef CONFIG_PPC_PSERIES
130extern void rtas_fadump_dt_scan(struct fw_dump *fadump_conf, u64 node);
131#else
132static inline void
133rtas_fadump_dt_scan(struct fw_dump *fadump_conf, u64 node) { }
134#endif
135
112#endif /* _ASM_POWERPC_FADUMP_INTERNAL_H */
136#endif /* _ASM_POWERPC_FADUMP_INTERNAL_H */