Patchwork [02/28] kvm tools: Only build/init i8042 on x86

login
register
mail settings
Submitter Matt Evans
Date Dec. 6, 2011, 3:37 a.m.
Message ID <4EDD8E05.6060704@ozlabs.org>
Download mbox | patch
Permalink /patch/129497/
State New
Headers show

Comments

Matt Evans - Dec. 6, 2011, 3:37 a.m.
Not every architecture has an i8042 kbd controller, so only use this when
building for x86.

Signed-off-by: Matt Evans <matt@ozlabs.org>
---
 tools/kvm/Makefile      |    2 +-
 tools/kvm/builtin-run.c |    2 ++
 2 files changed, 3 insertions(+), 1 deletions(-)

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Sasha Levin - Dec. 6, 2011, 8:11 a.m.
For some reason I can't explain, I'm getting this error after applying
this patch:

Applying: kvm tools: Only build/init i8042 on x86
fatal: mode change for tools/kvm/bios.c, which is not in current HEAD
Repository lacks necessary blobs to fall back on 3-way merge.
Cannot fall back to three-way merge.
Patch failed at 0002 kvm tools: Only build/init i8042 on x86

Any idea why it would happen?

On Tue, 2011-12-06 at 14:37 +1100, Matt Evans wrote:
> Not every architecture has an i8042 kbd controller, so only use this when
> building for x86.
> 
> Signed-off-by: Matt Evans <matt@ozlabs.org>
> ---
>  tools/kvm/Makefile      |    2 +-
>  tools/kvm/builtin-run.c |    2 ++
>  2 files changed, 3 insertions(+), 1 deletions(-)
> 
> diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile
> index 243886e..f58a1d8 100644
> --- a/tools/kvm/Makefile
> +++ b/tools/kvm/Makefile
> @@ -77,7 +77,6 @@ OBJS	+= util/strbuf.o
>  OBJS	+= virtio/9p.o
>  OBJS	+= virtio/9p-pdu.o
>  OBJS	+= hw/vesa.o
> -OBJS	+= hw/i8042.o
>  OBJS	+= hw/pci-shmem.o
>  OBJS	+= kvm-ipc.o
>  
> @@ -153,6 +152,7 @@ ifeq ($(ARCH),x86)
>  	OBJS	+= x86/kvm.o
>  	OBJS	+= x86/kvm-cpu.o
>  	OBJS	+= x86/mptable.o
> +	OBJS	+= hw/i8042.o
>  # Exclude BIOS object files from header dependencies.
>  	OTHEROBJS	+= x86/bios.o
>  	OTHEROBJS	+= x86/bios/bios-rom.o
> diff --git a/tools/kvm/builtin-run.c b/tools/kvm/builtin-run.c
> index 9148d83..e4aa87e 100644
> --- a/tools/kvm/builtin-run.c
> +++ b/tools/kvm/builtin-run.c
> @@ -941,7 +941,9 @@ int kvm_cmd_run(int argc, const char **argv, const char *prefix)
>  
>  	kvm__init_ram(kvm);
>  
> +#ifdef CONFIG_X86
>  	kbd__init(kvm);
> +#endif
>  
>  	pci_shmem__init(kvm);
>  
> --
> To unsubscribe from this list: send the line "unsubscribe kvm" in
> the body of a message to majordomo@vger.kernel.org
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
Scott Wood - Dec. 6, 2011, 6:59 p.m.
On 12/05/2011 09:37 PM, Matt Evans wrote:
> Not every architecture has an i8042 kbd controller, so only use this when
> building for x86.

There are non-x86 machines that have one, though -- does KVM tool have
any sort of target configuration mechanism?

-Scott

--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Matt Evans - Dec. 7, 2011, 7:39 a.m.
On 07/12/11 05:59, Scott Wood wrote:
> On 12/05/2011 09:37 PM, Matt Evans wrote:
>> Not every architecture has an i8042 kbd controller, so only use this when
>> building for x86.
> 
> There are non-x86 machines that have one, though -- does KVM tool have
> any sort of target configuration mechanism?

See my other mail (of 1m ago), there isn't a configuration mechanism nor a way
to select devices at run-time (nor buses to attach them to, etc.).  This patch
is a bit of a hack, though there's no other way without the extra
infrastructure.  This patch will get a 2nd platform going, and can be revisited
when another rears its head.

Cheers,


Matt
--
To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Patch

diff --git a/tools/kvm/Makefile b/tools/kvm/Makefile
index 243886e..f58a1d8 100644
--- a/tools/kvm/Makefile
+++ b/tools/kvm/Makefile
@@ -77,7 +77,6 @@  OBJS	+= util/strbuf.o
 OBJS	+= virtio/9p.o
 OBJS	+= virtio/9p-pdu.o
 OBJS	+= hw/vesa.o
-OBJS	+= hw/i8042.o
 OBJS	+= hw/pci-shmem.o
 OBJS	+= kvm-ipc.o
 
@@ -153,6 +152,7 @@  ifeq ($(ARCH),x86)
 	OBJS	+= x86/kvm.o
 	OBJS	+= x86/kvm-cpu.o
 	OBJS	+= x86/mptable.o
+	OBJS	+= hw/i8042.o
 # Exclude BIOS object files from header dependencies.
 	OTHEROBJS	+= x86/bios.o
 	OTHEROBJS	+= x86/bios/bios-rom.o
diff --git a/tools/kvm/builtin-run.c b/tools/kvm/builtin-run.c
index 9148d83..e4aa87e 100644
--- a/tools/kvm/builtin-run.c
+++ b/tools/kvm/builtin-run.c
@@ -941,7 +941,9 @@  int kvm_cmd_run(int argc, const char **argv, const char *prefix)
 
 	kvm__init_ram(kvm);
 
+#ifdef CONFIG_X86
 	kbd__init(kvm);
+#endif
 
 	pci_shmem__init(kvm);