blob: 04744dc5fb6127ac532b2fccdba54d9a4ff4a9b0 [file] [log] [blame]
Geoff Levandd28f6df2016-06-23 17:54:48 +00001/*
2 * kexec for arm64
3 *
4 * Copyright (C) Linaro.
5 * Copyright (C) Huawei Futurewei Technologies.
6 *
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License version 2 as
9 * published by the Free Software Foundation.
10 */
11
12#ifndef _ARM64_KEXEC_H
13#define _ARM64_KEXEC_H
14
15/* Maximum physical address we can use pages from */
16
17#define KEXEC_SOURCE_MEMORY_LIMIT (-1UL)
18
19/* Maximum address we can reach in physical address mode */
20
21#define KEXEC_DESTINATION_MEMORY_LIMIT (-1UL)
22
23/* Maximum address we can use for the control code buffer */
24
25#define KEXEC_CONTROL_MEMORY_LIMIT (-1UL)
26
27#define KEXEC_CONTROL_PAGE_SIZE 4096
28
29#define KEXEC_ARCH KEXEC_ARCH_AARCH64
30
31#ifndef __ASSEMBLY__
32
33/**
34 * crash_setup_regs() - save registers for the panic kernel
35 *
36 * @newregs: registers are saved here
37 * @oldregs: registers to be saved (may be %NULL)
38 */
39
40static inline void crash_setup_regs(struct pt_regs *newregs,
41 struct pt_regs *oldregs)
42{
43 /* Empty routine needed to avoid build errors. */
44}
45
46#endif /* __ASSEMBLY__ */
47
48#endif