xen: Remove the arch specific header init.h

Both x86 and (soon) RISC-V version of init.h are empty. On Arm, it contains
a structure that should not be used by any common code.

The structure init_info is used to store information to setup the CPU
currently being brought-up. setup.h seems to be more suitable even though
the header is getting quite crowded.

Looking through the history, <asm/init.h> was introduced at the same
time as the ia64 port because for some reasons most of the macros
where duplicated. This was changed in 72c07f4138 and I don't
foresee any reason to require arch specific definition for init.h
in the near future.

Therefore remove asm/init.h for both x86 and arm (the only definition
is moved in setup.h). With that RISC-V will not need to introduce
an empty header.

Suggested-by: Jan Beulich <jbeulich@suse.com>
Signed-off-by: Julien Grall <jgrall@amazon.com>
Acked-by: Andrew Cooper <andrew.cooper3@citrix.com>
Reviewed-by: Jan Beulich <jbeulich@suse.com>
Reviewed-by: Luca Fancellu <luca.fancellu@arm.com>
Acked-by: Alistair Francis <alistair.francis@wdc.com>
This commit is contained in:
Julien Grall committed 2023-01-11 17:52:07 +00:00
1 parent e66d450b6e
commit fd42170b15
7 files changed
+10 -27

No files matched your search

+1
View File
@@ -11,6 +11,7 @@
#include <public/xen.h>
#include <asm/current.h>
#include <asm/procinfo.h>
#include <asm/setup.h>
#define DEFINE(_sym, _val) \
asm volatile ("\n.ascii\"==>#define " #_sym " %0 /* " #_val " */<==\"" \
+1
View File
@@ -10,6 +10,7 @@
#include <xen/bitops.h>
#include <public/xen.h>
#include <asm/current.h>
#include <asm/setup.h>
#include <asm/smccc.h>
#define DEFINE(_sym, _val) \
-20
View File
@@ -1,20 +0,0 @@
#ifndef _XEN_ASM_INIT_H
#define _XEN_ASM_INIT_H
struct init_info
{
/* Pointer to the stack, used by head.S when entering in C */
unsigned char *stack;
/* Logical CPU ID, used by start_secondary */
unsigned int cpuid;
};
#endif /* _XEN_ASM_INIT_H */
/*
* Local variables:
* mode: C
* c-file-style: "BSD"
* c-basic-offset: 4
* indent-tabs-mode: nil
* End:
*/
+8
View File
@@ -168,6 +168,14 @@ int map_range_to_domain(const struct dt_device_node *dev,
extern const char __ro_after_init_start[], __ro_after_init_end[];
struct init_info
{
/* Pointer to the stack, used by head.S when entering in C */
unsigned char *stack;
/* Logical CPU ID, used by start_secondary */
unsigned int cpuid;
};
#endif
/*
* Local variables:
-1
View File
@@ -17,7 +17,6 @@
#include <xen/sched.h>
#include <asm/acpi.h>
#include <asm/irq.h>
#include <asm/init.h>
#include <xen/spinlock.h>
#include <xen/sched.h>
#include <xen/domain.h>
-4
View File
@@ -1,4 +0,0 @@
#ifndef _XEN_ASM_INIT_H
#define _XEN_ASM_INIT_H
#endif /* _XEN_ASM_INIT_H */
-2
View File
@@ -1,8 +1,6 @@
#ifndef _LINUX_INIT_H
#define _LINUX_INIT_H
#include <asm/init.h>
/*
* Mark functions and data as being only used at initialization
* or exit time.
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.