[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Xen-devel] [PATCH] docs, Add HowTo use QEMU upstream.



I suppose a bunch of this becomes obsolete when Stefano's patches to
integrate SeaBIOS/qemu into the build land, but perhaps it is worth
documenting the manual steps anyway?

Is the plan to retire the wiki page?

I don't have much comment on the text other than spelling and some minor
grammar.

On Wed, 2011-10-26 at 17:55 +0100, Anthony PERARD wrote:
> Signed-off-by: Anthony PERARD <anthony.perard@xxxxxxxxxx>
> 
> ---
>  docs/misc/qemu-upstream_howto_use_it.markdown |  122 
> +++++++++++++++++++++++++
>  1 files changed, 122 insertions(+), 0 deletions(-)
> 
> diff --git a/docs/misc/qemu-upstream_howto_use_it.markdown 
> b/docs/misc/qemu-upstream_howto_use_it.markdown
> new file mode 100644
> index 0000000..cdf920a
> --- /dev/null
> +++ b/docs/misc/qemu-upstream_howto_use_it.markdown
> @@ -0,0 +1,122 @@
> +Help to use QEMU (upstream version) with Xen
> +============================================
> +
> +How to build it
> +---------------
> +
> +### SeaBIOS
> +
> +This new device-model need a different bios, SeaBIOS. Clone the repository 
> from:
   The                   needs            BIOS

It is usually "BIOS" not "bios", I think.

> +
> +  - git://git.qemu.org/seabios.git
> +  - http://git.qemu.org/git/seabios.git
> +
> +Put the `.config` file in the appendix at the root of seabios.git and build 
> SeaBIOS.
> +
> +In xen-unstable source tree, add the file `.config` with
> +`SEABIOS_DIR = /path/to/seabios.git`.
> +To build hvmloader with SeaBIOS, you propably need to `make -C tools/firmware
                                        probably

> +clean` first and then `make tools`, to use the new SEABIOS_DIR parameter.
> +
> +
> +### QEMU
> +
> +Get QEMU upstream source from:
> +
> +  - git://xenbits.xensource.com/qemu-upstream-unstable.git
> +  - http://xenbits.xensource.com/git-http/qemu-upstream-unstable.git
> +
> +To configure build QEMU upstream with Xen
> +
> +    ./configure --enable-xen --target-list=i386-softmmu 
> --extra-cflags="-I$path_to_xen_source/tools/include 
> -I$path_to_xen_source/tools/libxc -I$path_to_xen_source/tools/xenstore" 
> --extra-ldflags="-L$path_to_xen_source/tools/libxc 
> -L$path_to_xen_source/tools/xenstore"
> +

Perhaps wrap this somehow?

Incidentally, would upstream accept a --xen-dir type option (or an
argument to --enable-xen?) to which you could pass $path_to_xen_source
and have it do all this automatically?

Can you omit all that if you have installed Xen on the current host
(i.e. pick all that up from /usr/{lib,include})?

> +You can also use other several options such as `--disable-kvm`.
> +
> +
> +How to use QEMU upstream
> +------------------------
> +
> +Only xl support QEMU upstream.
> +
> +To actually use it, add or change this in your VM configuration file:
> +
> +    device_model_version = 'qemu-xen'
> +    device_model_override = '/path/to/qemu/i386-softmmu/qemu'

This second one should become unnecessary (and unadvised) when Stefano's
build integration patches hit.

> +
> +NB: On qemu-upstream repository, the default binary name have been renamed to
                                                            has
> +`qemu-system-i386`.
> +
> +
> +Appendix
> +------
> +
> +### `.config` file for SeaBIOS
> +
> +    #
> +    # General Features
> +    #
> +    # CONFIG_COREBOOT is not set
> +    CONFIG_XEN=y
> +    CONFIG_THREADS=y
> +    CONFIG_THREAD_OPTIONROMS=y
> +    CONFIG_RELOCATE_INIT=y
> +    CONFIG_BOOTMENU=y
> +    CONFIG_BOOTMENU_WAIT=1000
> +    # CONFIG_BOOTSPLASH is not set
> +    CONFIG_BOOTORDER=y
> +    #
> +    # Hardware support
> +    #
> +    CONFIG_ATA=y
> +    CONFIG_ATA_DMA=y
> +    CONFIG_ATA_PIO32=y
> +    CONFIG_AHCI=y
> +    CONFIG_VIRTIO_BLK=y
> +    CONFIG_FLOPPY=y
> +    CONFIG_PS2PORT=y
> +    CONFIG_USB=y
> +    CONFIG_USB_UHCI=y
> +    CONFIG_USB_OHCI=y
> +    CONFIG_USB_EHCI=y
> +    CONFIG_USB_MSC=y
> +    CONFIG_USB_HUB=y
> +    CONFIG_USB_KEYBOARD=y
> +    CONFIG_USB_MOUSE=y
> +    CONFIG_SERIAL=y
> +    CONFIG_LPT=y
> +    # CONFIG_EXTRA_PCI_ROOTS is not set
> +    # CONFIG_USE_SMM is not set
> +    CONFIG_MTRR_INIT=y
> +    #
> +    # BIOS interfaces
> +    #
> +    CONFIG_DRIVES=y
> +    # CONFIG_CDROM_BOOT is not set
> +    CONFIG_PCIBIOS=y
> +    CONFIG_APMBIOS=y
> +    CONFIG_PNPBIOS=y
> +    CONFIG_OPTIONROMS=y
> +    # CONFIG_OPTIONROMS_DEPLOYED is not set
> +    CONFIG_OPTIONROMS_CHECKSUM=y
> +    CONFIG_PMM=y
> +    CONFIG_BOOT=y
> +    CONFIG_KEYBOARD=y
> +    CONFIG_KBD_CALL_INT15_4F=y
> +    CONFIG_MOUSE=y
> +    CONFIG_S3_RESUME=y
> +    # CONFIG_S3_RESUME_VGA_INIT is not set
> +    # CONFIG_DISABLE_A20 is not set
> +    #
> +    # BIOS Tables
> +    #
> +    CONFIG_PIRTABLE=y
> +    CONFIG_MPTABLE=y
> +    CONFIG_SMBIOS=y
> +    CONFIG_ACPI=y
> +    #
> +    # Debugging
> +    #
> +    CONFIG_DEBUG_LEVEL=3
> +    CONFIG_DEBUG_SERIAL=y
> +    CONFIG_DEBUG_SERIAL_PORT=0x3f8
> +    # CONFIG_SCREEN_AND_DEBUG is not set



_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.