> -----Original Message----- > From: kvm-ppc-owner@xxxxxxxxxxxxxxx > [mailto:kvm-ppc-owner@xxxxxxxxxxxxxxx] On Behalf Of Hollis Blanchard > Sent: Friday, January 16, 2009 3:53 AM > To: Liu Yu-B13201 > Cc: qemu-devel@xxxxxxxxxx; kvm-ppc@xxxxxxxxxxxxxxx > Subject: Re: [PATCH 7/9] powerpc/kvm: Add E500 core emulation > > On Thu, 2009-01-15 at 20:34 +0800, Liu Yu wrote: > > Signed-off-by: Liu Yu <yu.liu@xxxxxxxxxxxxx> > > --- > > Makefile.target | 1 + > > hw/ppce500.c | 49 > +++++++++++++++++++++++++++++++++++++++++++++++++ > > hw/ppce500.h | 44 ++++++++++++++++++++++++++++++++++++++++++++ > > 3 files changed, 94 insertions(+), 0 deletions(-) > > create mode 100644 hw/ppce500.c > > create mode 100644 hw/ppce500.h > > > > diff --git a/Makefile.target b/Makefile.target > > index 2079fcb..223d294 100644 > > --- a/Makefile.target > > +++ b/Makefile.target > > @@ -651,6 +651,7 @@ OBJS+= pflash_cfi02.o ppc4xx_devs.o > ppc4xx_pci.o ppc405_uc.o ppc405_boards.o > > OBJS+= ppc440.o ppc440_bamboo.o > > # PowerPC E500 boards > > OBJS+= ppce500_pci.o > > +OBJS+= ppce500.o > > ifdef FDT_LIBS > > OBJS+= device_tree.o > > LIBS+= $(FDT_LIBS) > > diff --git a/hw/ppce500.c b/hw/ppce500.c > > new file mode 100644 > > index 0000000..856cce2 > > --- /dev/null > > +++ b/hw/ppce500.c > > @@ -0,0 +1,49 @@ > > +/* > > + * Qemu PowerPC E500 core emualtion > > "emulation" Fixed. Thanks. > > > + * Copyright (C) 2009 Freescale Semiconductor, Inc. All > rights reserved. > > + * > > + * Author: Yu Liu, <yu.liu@xxxxxxxxxxxxx> > > + * > > + * This file is derived from hw/ppc440.c > > + * the copyright for that material belongs to the original owners. > > + * > > + * This is free software; you can redistribute it and/or modify > > + * it under the terms of the GNU General Public License > as published by > > + * the Free Software Foundation; either version 2 of the > License, or > > + * (at your option) any later version. > > + */ > > + > > +#include "hw.h" > > +#include "pc.h" > > +#include "hw/isa.h" > > +#include "ppce500.h" > > +#include "sysemu.h" > > + > > +#define bytes_to_mb(a) (a>>20) > > Doesn't look like this is used. Removed. Thanks. > > > +CPUState *ppce500_init(ram_addr_t *ram_size) > > +{ > > + int i; > > + ram_addr_t tmp_ram_size; > > + CPUState *env; > > + int ram_stick_sizes[] = {512<<20, 256<<20, 128<<20, > 64<<20}; /* in bytes */ > > + > > + /* Setup Memory */ > > + tmp_ram_size = *ram_size; > > + > > + for (i=0; > i<(sizeof(ram_stick_sizes)/sizeof(ram_stick_sizes[0])); i++) > > + while ((tmp_ram_size/ram_stick_sizes[i]) > 0) > > + tmp_ram_size -= ram_stick_sizes[i]; > > + > > + if (tmp_ram_size) > > + *ram_size -= tmp_ram_size; > > Since you said you don't actually have a memory controller you're > emulating, I think you should completely remove all this > ram_size stuff. > Once you do that, this whole function becomes just cpu_ppc_init(), so > you can just call that instead. I still want to fixup guest memory size at certain alignment boundary, so that KVM can handle the mmu easily. Anyway, seems I should put them all into hw/ppce500_mpc85xx.c. > > > + env = cpu_ppc_init("e500v2_v30"); > > + if (!env) { > > + fprintf(stderr, "Unable to initilize CPU!\n"); > > "initialize" Fixed. Thanks. -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html