qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [Qemu-devel] ppc64 target broken
@ 2009-11-10 18:04 Alexander Graf
  2009-11-10 21:00 ` [Qemu-devel] " Blue Swirl
                   ` (2 more replies)
  0 siblings, 3 replies; 5+ messages in thread
From: Alexander Graf @ 2009-11-10 18:04 UTC (permalink / raw)
  To: qemu-devel; +Cc: Blue Swirl

Hi list,

For quite some time the PPC64 target (-M mac99 -cpu 970fx) is broken  
in early init code:

<6>OF: ** translation for device /pci@f2000000/pci@d/mac-io@10/ 
interrupt-controller@40000 **
<6>OF: bus is default (na=1, ns=1) on /pci@f2000000/pci@d/mac-io@10
<4>OF: translating address: 00040000
<6>OF: parent bus is pci (na=3, ns=2) on /pci@f2000000/pci@d
<6>OF: walking ranges...
<6>OF: default map, cp=0, s=80000, da=40000
<4>OF: parent translation for: 82008010 00000000 c0000000
<6>OF: with offset: 40000
<4>OF: one level translation: 82008010 00000000 c0040000
<6>OF: parent bus is pci (na=3, ns=2) on /pci@f2000000
<6>OF: no ranges, 1:1 translation
<4>OF: parent translation for: 00000000 00000000 00000000
<6>OF: with offset: c0040000
<4>OF: one level translation: 00000000 00000000 c0040000
<6>OF: parent bus is default (na=1, ns=1) on /
<6>OF: walking ranges...
<6>OF: not found !
<0>------------[ cut here ]------------
<2>kernel BUG at arch/powerpc/platforms/powermac/pic.c:530!
<4>Oops: Exception in kernel mode, sig: 5 [#1]
<4>SMP NR_CPUS=1024 NUMA PowerMac
<4>Modules linked in:
<4>Supported: Yes
<4>NIP: c0000000007449a8 LR: c0000000007449a0 CTR: 0000000000000000
<4>REGS: c0000000009a3b40 TRAP: 0700   Not tainted  (2.6.27.7-kvm)
<4>MSR: 8000000000021032 <ME,IR,DR>  CR: 22000088  XER: 20000000
<4>TASK = c0000000008e83c0[0] 'swapper' THREAD: c0000000009a0000 CPU: 0
<6>GPR00: c0000000007449a0 c0000000009a3dc0 c0000000009952c0  
0000000000000001
<6>GPR04: c00000000092fd20 ffffffffffffffff 0000000000000010  
d000080080107230
<6>GPR08: c0000000008c4488 c00000000fffc400 0000000000000000  
0000000000000f72
<6>GPR12: 0000000022000082 c000000000a62c80 c000000000773638  
c00000000068b9b0
<6>GPR16: 0000000001773570 0000000000000000 c000000000773570  
000000000f7fff20
<6>GPR20: c000000000773588 c00000000068d02a c0000000007787d4  
000000000f7fff20
<6>GPR24: 0000000005483224 00000000000000bb c000000000ae77a8  
c000000000694bef
<6>GPR28: c00000000fffebd0 0000000000000000 c000000000914868  
0000000000000000
<4>NIP [c0000000007449a8] .pmac_pic_init+0xec/0x1a8
<4>LR [c0000000007449a0] .pmac_pic_init+0xe4/0x1a8
<4>Call Trace:
<4>[c0000000009a3dc0] [c0000000007449a0] .pmac_pic_init+0xe4/0x1a8  
(unreliable)
<4>[c0000000009a3e60] [c00000000073503c] .init_IRQ+0x3c/0x54
<4>[c0000000009a3ee0] [c000000000730a00] .start_kernel+0x254/0x554
<4>[c0000000009a3f90] [c000000000008568] .start_here_common+0x3c/0x54




So the problem seems to be the "ranges" property or the address of the  
MPIC device. I'm not sure. One previously working revision  
(9d479c119b42b8a548f8d79a8e5a1c1ce2932d91) gives the following guest  
trace:

<6>OF: ** translation for device /pci@5800/mac-io@f/interrupt- 
controller@40000 **
<6>OF: bus is default (na=1, ns=1) on /pci@5800/mac-io@f
<4>OF: translating address: 00040000
<6>OF: parent bus is pci (na=3, ns=2) on /pci@5800
<6>OF: walking ranges...
<6>OF: default map, cp=0, s=80000, da=40000
<4>OF: parent translation for: 82007810 00000000 80880000
<6>OF: with offset: 40000
<4>OF: one level translation: 82007810 00000000 808c0000
<6>OF: parent bus is default (na=1, ns=1) on /
<6>OF: no ranges, 1:1 translation
<4>OF: parent translation for: 00000000
<6>OF: with offset: 808c0000
<4>OF: one level translation: 808c0000
<6>OF: reached root node

As you can see there is only one pci host device.
I don't see how the old offset would have matched the new "ranges"  
parameters of the pci@f2000000 device though:

http://imagebin.org/71215


So I'm really puzzled on this. When removing the "ranges" property of  
the pci@f20000000 (so we're on 1:1 translation) Linux breaks in the  
PCI detection code.

The first commit where the mac99 worked with again at all is blue  
swirl's qdev conversion, so maybe he's got an idea?


Thanks!

Alex

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-11-14 20:51 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2009-11-10 18:04 [Qemu-devel] ppc64 target broken Alexander Graf
2009-11-10 21:00 ` [Qemu-devel] " Blue Swirl
2009-11-11 13:17 ` [Qemu-devel] " Laurent Vivier
2009-11-13 18:07   ` Blue Swirl
2009-11-14 20:51 ` [Qemu-devel] " Blue Swirl

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).