All of lore.kernel.org
 help / color / mirror / Atom feed
From: Baojun Wang <wangbj@gmail.com>
To: Hollis Blanchard <hollis@penguinppc.org>
Cc: Blue Swirl <blauwirbel@gmail.com>,
	"Richard W.M. Jones" <rjones@redhat.com>,
	qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] PowerPC 440 support
Date: Mon, 15 Jun 2009 12:40:18 +0800	[thread overview]
Message-ID: <3cdfa5bc0906142140nf2a78rf2a07c3185a9614d@mail.gmail.com> (raw)
In-Reply-To: <fb412d760906141246r26e1d09ek6e4a0a13758a0854@mail.gmail.com>

It seems most boards will converted to the device tree infrastructure?

but I think we will need a firmware first before loading the linux
kernel, I don't know if qemu-system-ppcemb could run kernel directly
without a firmware..

  Best Regards,
Wang

On Mon, Jun 15, 2009 at 3:46 AM, Hollis Blanchard<hollis@penguinppc.org> wrote:
> My 440 board is inaccessible for a couple weeks, so I can't test your
> patch. That said, the code looks fine.
>
> However, I wonder what your goal is? You want to be able to create a
> Bamboo board with e.g. a 750 processor? I don't think that would help
> the original poster, and I'm not sure how useful it is, but I don't
> object...
>
> Either way I guess it will become a non-issue once PowerPC boards are
> converted to the device tree infrastructure.
>
> -Hollis
>
> On Sun, Jun 14, 2009 at 1:33 PM, Blue Swirl<blauwirbel@gmail.com> wrote:
>> Sorry, I was very confused (I didn't look at ppc440.c).
>>
>> For some reason, CPU model can't be specified on the command line. The
>> patch allows this, does it look OK?
>>
>> Is there a kernel and initrd somewhere, so I could test this?
>>
>> Currently I get (no kernel or ROM, so nothing to execute):
>> Truncating memory to 128 MiB to fit SDRAM controller limits.
>> ppc405_serial_init: offset 0000000000000300
>> QEMU 0.10.50 monitor - type 'help' for more information
>> (qemu) qemu: fatal: Trying to execute code outside RAM or ROM at
>> 0x00000000fffffffc
>>
>> NIP 00000000fffffffc   LR 0000000000000000 CTR 0000000000000000 XER 00000000
>> MSR 0000000000000000 HID0 0000000000000300  HF 0000000000000000 idx 1
>> Segmentation fault
>>
>> On 6/14/09, Hollis Blanchard <hollis@penguinppc.org> wrote:
>>> Yes, I wrote the code you quoted.
>>>
>>>  In case there is any confusion, let me restate: You can boot a Bamboo
>>>  (PowerPC 440) guest under KVM on a PowerPC 440 host. KVM bypasses
>>>  qemu's CPU emulation (TCG), but uses qemu's device emulation.
>>>  Therefore, if someone were to implement 440 core emulation in qemu,
>>>  you could boot a 440 kernel with qemu without KVM.
>>>
>>>  Most devices found on 440 SoCs are the same as or very similar to the
>>>  devices found on 405 SoCs. Qemu's 440 device emulation isn't perfect,
>>>  but because Linux is highly modular, with a modified device tree you
>>>  can boot it. See pc-bios/bamboo.dts.
>>>
>>>  -Hollis
>>>
>>>  On Sat, Jun 13, 2009 at 10:47 PM, Baojun Wang <wangbj@gmail.com> wrote:
>>>  >
>>>  > in hw/ppc440.c:
>>>  >
>>>  >    env = cpu_ppc_init("440EP");
>>>  >    if (!env && kvm_enabled()) {
>>>  >        /* XXX Since qemu doesn't yet emulate 440, we just say it's a 405.
>>>  >         * Since KVM doesn't use qemu's CPU emulation it seems to be working
>>>  >         * OK. */
>>>  >        env = cpu_ppc_init("405");
>>>  >    }
>>>  >    if (!env) {
>>>  >        fprintf(stderr, "Unable to initialize CPU!\n");
>>>  >        exit(1);
>>>  >    }
>>>  >
>>>  > also in hw/ppc.c:
>>>  >
>>>  > I can find ppc40x_irq_init/e500_irq_init(used mpc8544ds), but there is
>>>  > no ppcbooke_irq_init? It seems hw/ppc405_uc.c is emulation for DCRs,
>>>  > PLB, DMA, GPIO, I2C.., but there is no hw/ppc44x_uc.c.
>>>  >
>>>  > the qemu source I used is 0.10.5.
>>>  >
>>>  > Also in ppc/translate_init.c, there lots of CONFIG_USER_ONLY, but I
>>>  > many of them are DEBUG or CACHE related SPR emulation, and since qemu
>>>  > doesn't emulate cache, I think it's OK.
>>>  >
>>>  >  Thanks,
>>>  > Wang
>>>  >
>>>  > On Sun, Jun 14, 2009 at 1:47 AM, Hollis Blanchard<hollis@penguinppc.org> wrote:
>>>  > > On Fri, Jun 12, 2009 at 10:48 AM, Blue Swirl <blauwirbel@gmail.com> wrote:
>>>  > >>
>>>  > >> On 6/11/09, Baojun Wang <wangbj@gmail.com> wrote:
>>>  > >> > could qemu emulate some board like bamboo (without kvm) or MPC8544ds
>>>  > >> > now? Thanks
>>>  > >>
>>>  > >> Yes, if someone adds emulation for these devices: UIC, PLB, DMA, POB,
>>>  > >> EBC, IIC, ZMII. Maybe some are not needed in all cases.
>>>  > >
>>>  > > No, qemu still doesn't emulate Book E cores, such as the PowerPC 440 in a
>>>  > > Bamboo board.
>>>  > >
>>>  > > UIC is of course emulated, otherwise KVM guests on 440 wouldn't get very
>>>  > > far. :) Enough 440 SoC devices are emulated to support Linux boot with a
>>>  > > properly stripped device tree.
>>>  > >
>>>  > > -Hollis
>>>  > >
>>>
>>
>

  parent reply	other threads:[~2009-06-15  4:40 UTC|newest]

Thread overview: 11+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-06-14 17:28 [Qemu-devel] PowerPC 440 support Hollis Blanchard
2009-06-14 18:33 ` Blue Swirl
2009-06-14 19:46   ` Hollis Blanchard
2009-06-14 20:40     ` Blue Swirl
2009-06-15  4:40     ` Baojun Wang [this message]
2009-06-15 15:46       ` Hollis Blanchard
2009-06-15 16:52         ` Blue Swirl
2009-06-15 17:37           ` Hollis Blanchard
2009-06-16 15:12         ` Baojun Wang
2009-06-16 15:36           ` Hollis Blanchard
2009-06-15  4:37   ` Baojun Wang

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=3cdfa5bc0906142140nf2a78rf2a07c3185a9614d@mail.gmail.com \
    --to=wangbj@gmail.com \
    --cc=blauwirbel@gmail.com \
    --cc=hollis@penguinppc.org \
    --cc=qemu-devel@nongnu.org \
    --cc=rjones@redhat.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.