mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git
synced 2025-01-07 22:42:04 +00:00
jailhouse: Provide detection for non-x86 systems
Implement jailhouse_paravirt() via device tree probing on architectures != x86. Will be used by the PCI core. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Reviewed-by: Juergen Gross <jgross@suse.com> Cc: jailhouse-dev@googlegroups.com Cc: Mark Rutland <mark.rutland@arm.com> Cc: linux-pci@vger.kernel.org Cc: virtualization@lists.linux-foundation.org Cc: Andy Shevchenko <andy.shevchenko@gmail.com> Cc: Rob Herring <robh+dt@kernel.org> Cc: Bjorn Helgaas <bhelgaas@google.com> Link: https://lkml.kernel.org/r/dae9fe0c6e63141c28ca90492fa5712b4c33ffb5.1520408357.git.jan.kiszka@siemens.com
This commit is contained in:
parent
0a5169add9
commit
63338a38db
8
Documentation/devicetree/bindings/jailhouse.txt
Normal file
8
Documentation/devicetree/bindings/jailhouse.txt
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
Jailhouse non-root cell device tree bindings
|
||||||
|
--------------------------------------------
|
||||||
|
|
||||||
|
When running in a non-root Jailhouse cell (partition), the device tree of this
|
||||||
|
platform shall have a top-level "hypervisor" node with the following
|
||||||
|
properties:
|
||||||
|
|
||||||
|
- compatible = "jailhouse,cell"
|
@ -1,7 +1,7 @@
|
|||||||
/* SPDX-License-Identifier: GPL2.0 */
|
/* SPDX-License-Identifier: GPL2.0 */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Jailhouse paravirt_ops implementation
|
* Jailhouse paravirt detection
|
||||||
*
|
*
|
||||||
* Copyright (c) Siemens AG, 2015-2017
|
* Copyright (c) Siemens AG, 2015-2017
|
||||||
*
|
*
|
||||||
|
@ -8,15 +8,28 @@
|
|||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef CONFIG_X86
|
#ifdef CONFIG_X86
|
||||||
|
|
||||||
|
#include <asm/jailhouse_para.h>
|
||||||
#include <asm/x86_init.h>
|
#include <asm/x86_init.h>
|
||||||
|
|
||||||
static inline void hypervisor_pin_vcpu(int cpu)
|
static inline void hypervisor_pin_vcpu(int cpu)
|
||||||
{
|
{
|
||||||
x86_platform.hyper.pin_vcpu(cpu);
|
x86_platform.hyper.pin_vcpu(cpu);
|
||||||
}
|
}
|
||||||
#else
|
|
||||||
|
#else /* !CONFIG_X86 */
|
||||||
|
|
||||||
|
#include <linux/of.h>
|
||||||
|
|
||||||
static inline void hypervisor_pin_vcpu(int cpu)
|
static inline void hypervisor_pin_vcpu(int cpu)
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
#endif
|
|
||||||
|
static inline bool jailhouse_paravirt(void)
|
||||||
|
{
|
||||||
|
return of_find_compatible_node(NULL, NULL, "jailhouse,cell");
|
||||||
|
}
|
||||||
|
|
||||||
|
#endif /* !CONFIG_X86 */
|
||||||
|
|
||||||
#endif /* __LINUX_HYPEVISOR_H */
|
#endif /* __LINUX_HYPEVISOR_H */
|
||||||
|
Loading…
Reference in New Issue
Block a user