diff options
author | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2012-02-09 11:33:28 +0000 |
---|---|---|
committer | Stefano Stabellini <stefano.stabellini@eu.citrix.com> | 2012-02-09 11:33:28 +0000 |
commit | 4e60158364638028e95855b5fdfd8e68cd70b225 (patch) | |
tree | 473cc8da58a7041b67de5162b01e03c023a80174 /xen | |
parent | 3487e40ba447dcff5d303cb68350b7879692185b (diff) | |
download | xen-4e60158364638028e95855b5fdfd8e68cd70b225.tar.gz xen-4e60158364638028e95855b5fdfd8e68cd70b225.tar.bz2 xen-4e60158364638028e95855b5fdfd8e68cd70b225.zip |
xen/common/Makefile: introduce HAS_{CPUFREQ,PCI,PASSTHROUGH,NS16550,KEXEC}
- make the compilation of ns16550.c depend upon HAS_NS16550;
- make the compilation of cpufreq depend upon HAS_CPUFREQ;
- make the compilation of pci depend upon HAS_PCI;
- make the compilation of passthrough depend upon HAS_PASSTHROUGH;
- make the compilation of kexec depend upon HAS_KEXEC.
Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Tim Deegan <Tim.Deegan@citrix.com>
Acked-by: Keir Fraser <keir@xen.org>
Committed-by: Ian Campbell <ian.campbell@citrix.com>
---
xen/arch/ia64/Rules.mk | 5 +++++
xen/arch/x86/Rules.mk | 5 +++++
xen/common/Makefile | 2 +-
xen/common/shutdown.c | 4 ++++
xen/drivers/Makefile | 6 +++---
xen/drivers/char/Makefile | 2 +-
xen/drivers/char/console.c | 4 ++++
xen/include/asm-ia64/config.h | 1 +
xen/include/asm-x86/config.h | 1 +
9 files changed, 25 insertions(+), 5 deletions(-)
Diffstat (limited to 'xen')
-rw-r--r-- | xen/arch/ia64/Rules.mk | 5 | ||||
-rw-r--r-- | xen/arch/x86/Rules.mk | 5 | ||||
-rw-r--r-- | xen/common/Makefile | 2 | ||||
-rw-r--r-- | xen/common/shutdown.c | 4 | ||||
-rw-r--r-- | xen/drivers/Makefile | 6 | ||||
-rw-r--r-- | xen/drivers/char/Makefile | 2 | ||||
-rw-r--r-- | xen/drivers/char/console.c | 4 | ||||
-rw-r--r-- | xen/include/asm-ia64/config.h | 1 | ||||
-rw-r--r-- | xen/include/asm-x86/config.h | 1 |
9 files changed, 25 insertions, 5 deletions
diff --git a/xen/arch/ia64/Rules.mk b/xen/arch/ia64/Rules.mk index bef11c3196..054b4def94 100644 --- a/xen/arch/ia64/Rules.mk +++ b/xen/arch/ia64/Rules.mk @@ -4,6 +4,11 @@ ia64 := y HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y no_warns ?= n vti_debug ?= n diff --git a/xen/arch/x86/Rules.mk b/xen/arch/x86/Rules.mk index 9fc6d42f9f..65275af9e8 100644 --- a/xen/arch/x86/Rules.mk +++ b/xen/arch/x86/Rules.mk @@ -3,6 +3,11 @@ HAS_ACPI := y HAS_VGA := y +HAS_CPUFREQ := y +HAS_PCI := y +HAS_PASSTHROUGH := y +HAS_NS16550 := y +HAS_KEXEC := y xenoprof := y # diff --git a/xen/common/Makefile b/xen/common/Makefile index 1d85e6586f..9249845832 100644 --- a/xen/common/Makefile +++ b/xen/common/Makefile @@ -8,7 +8,7 @@ obj-y += grant_table.o obj-y += irq.o obj-y += kernel.o obj-y += keyhandler.o -obj-y += kexec.o +obj-$(HAS_KEXEC) += kexec.o obj-y += lib.o obj-y += memory.o obj-y += multicall.o diff --git a/xen/common/shutdown.c b/xen/common/shutdown.c index e356e86591..b18ef5de6c 100644 --- a/xen/common/shutdown.c +++ b/xen/common/shutdown.c @@ -6,7 +6,9 @@ #include <xen/delay.h> #include <xen/shutdown.h> #include <xen/console.h> +#ifdef CONFIG_KEXEC #include <xen/kexec.h> +#endif #include <asm/debugger.h> #include <public/sched.h> @@ -58,7 +60,9 @@ void dom0_shutdown(u8 reason) case SHUTDOWN_watchdog: { printk("Domain 0 shutdown: watchdog rebooting machine.\n"); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif machine_restart(0); break; /* not reached */ } diff --git a/xen/drivers/Makefile b/xen/drivers/Makefile index eb4fb61554..7239375331 100644 --- a/xen/drivers/Makefile +++ b/xen/drivers/Makefile @@ -1,6 +1,6 @@ subdir-y += char -subdir-y += cpufreq -subdir-y += pci -subdir-y += passthrough +subdir-$(HAS_CPUFREQ) += cpufreq +subdir-$(HAS_PCI) += pci +subdir-$(HAS_PASSTHROUGH) += passthrough subdir-$(HAS_ACPI) += acpi subdir-$(HAS_VGA) += video diff --git a/xen/drivers/char/Makefile b/xen/drivers/char/Makefile index ded9a94cc1..19250c8810 100644 --- a/xen/drivers/char/Makefile +++ b/xen/drivers/char/Makefile @@ -1,3 +1,3 @@ obj-y += console.o -obj-y += ns16550.o +obj-$(HAS_NS16550) += ns16550.o obj-y += serial.o diff --git a/xen/drivers/char/console.c b/xen/drivers/char/console.c index dc9b9c58cd..64a99a67f6 100644 --- a/xen/drivers/char/console.c +++ b/xen/drivers/char/console.c @@ -22,7 +22,9 @@ #include <xen/guest_access.h> #include <xen/shutdown.h> #include <xen/vga.h> +#ifdef CONFIG_KEXEC #include <xen/kexec.h> +#endif #include <asm/debugger.h> #include <asm/div64.h> #include <xen/hypercall.h> /* for do_console_io */ @@ -963,7 +965,9 @@ void panic(const char *fmt, ...) debugger_trap_immediate(); +#ifdef CONFIG_KEXEC kexec_crash(); +#endif if ( opt_noreboot ) { diff --git a/xen/include/asm-ia64/config.h b/xen/include/asm-ia64/config.h index 01734879a8..6e9fc98d0e 100644 --- a/xen/include/asm-ia64/config.h +++ b/xen/include/asm-ia64/config.h @@ -20,6 +20,7 @@ #define CONFIG_EFI #define CONFIG_EFI_PCDP #define CONFIG_SERIAL_SGI_L1_CONSOLE +#define CONFIG_KEXEC 1 #define CONFIG_XENOPROF 1 #define CONFIG_XEN_SMP diff --git a/xen/include/asm-x86/config.h b/xen/include/asm-x86/config.h index 18d0a052c1..28f5e2941f 100644 --- a/xen/include/asm-x86/config.h +++ b/xen/include/asm-x86/config.h @@ -49,6 +49,7 @@ #define CONFIG_HOTPLUG_CPU 1 #define CONFIG_XENOPROF 1 +#define CONFIG_KEXEC 1 #define HZ 100 |