* [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin...
@ 2007-03-07 8:32 Jocelyn Mayer
2007-03-07 14:14 ` Stuart Brady
0 siblings, 1 reply; 5+ messages in thread
From: Jocelyn Mayer @ 2007-03-07 8:32 UTC (permalink / raw)
To: qemu-devel
CVSROOT: /sources/qemu
Module name: qemu
Changes by: Jocelyn Mayer <j_mayer> 07/03/07 08:32:30
Modified files:
. : cpu-all.h gdbstub.c monitor.c
hw : ppc.c
linux-user : main.c
target-ppc : cpu.h exec.h helper.c op.c op_helper.c
op_helper_mem.h op_mem.h op_template.h
translate.c translate_init.c
Added files:
target-ppc : STATUS mfrom_table.c mfrom_table_gen.c
op_helper.h
Log message:
Great PowerPC emulation code resynchronisation and improvments:
- Add status file to make regression tracking easier
- Move all micro-operations helpers definitions into a separate header:
should never be seen outside of op.c
- Update copyrights
- Add new / missing PowerPC CPU definitions
- Add definitions for PowerPC BookE
- Add support for PowerPC 6xx/7xx software driven TLBs
Allow use of PowerPC 603 as an example
- Add preliminary code for POWER, POWER2, PowerPC 403, 405, 440, 601, 602
and BookE support
- Avoid compiling priviledged only resources support for user-mode emulation
- Remove unused helpers / micro-ops / dead code
- Add instructions usage statistics dump: useful to figure which instructions
need strong optimizations.
- Micro-operation fixes:
* add missing RETURN in some micro-ops
* fix prototypes
* use softfloat routines for all floating-point operations
* fix tlbie instruction
* move some huge micro-operations into helpers
- emulation fixes:
* fix inverted opcodes for fcmpo / fcmpu
* condition register update is always to be done after the whole
instruction has completed
* add missing NIP updates when calling helpers that may generate an
exception
- optimizations and improvments:
* optimize very often used instructions (li, mr, rlwixx...)
* remove specific micro-ops for rarely used instructions
* add routines for addresses computations to avoid bugs due to multiple
different implementations
* fix TB linking: do not reset T0 at the end of every TB.
CVSWeb URLs:
http://cvs.savannah.gnu.org/viewcvs/qemu/cpu-all.h?cvsroot=qemu&r1=1.62&r2=1.63
http://cvs.savannah.gnu.org/viewcvs/qemu/gdbstub.c?cvsroot=qemu&r1=1.49&r2=1.50
http://cvs.savannah.gnu.org/viewcvs/qemu/monitor.c?cvsroot=qemu&r1=1.66&r2=1.67
http://cvs.savannah.gnu.org/viewcvs/qemu/hw/ppc.c?cvsroot=qemu&r1=1.10&r2=1.11
http://cvs.savannah.gnu.org/viewcvs/qemu/linux-user/main.c?cvsroot=qemu&r1=1.100&r2=1.101
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/cpu.h?cvsroot=qemu&r1=1.25&r2=1.26
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/exec.h?cvsroot=qemu&r1=1.14&r2=1.15
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/helper.c?cvsroot=qemu&r1=1.31&r2=1.32
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op.c?cvsroot=qemu&r1=1.22&r2=1.23
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper.c?cvsroot=qemu&r1=1.17&r2=1.18
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper_mem.h?cvsroot=qemu&r1=1.6&r2=1.7
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_mem.h?cvsroot=qemu&r1=1.7&r2=1.8
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_template.h?cvsroot=qemu&r1=1.5&r2=1.6
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/translate.c?cvsroot=qemu&r1=1.43&r2=1.44
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/translate_init.c?cvsroot=qemu&r1=1.3&r2=1.4
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/STATUS?cvsroot=qemu&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/mfrom_table.c?cvsroot=qemu&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/mfrom_table_gen.c?cvsroot=qemu&rev=1.1
http://cvs.savannah.gnu.org/viewcvs/qemu/target-ppc/op_helper.h?cvsroot=qemu&rev=1.1
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin...
2007-03-07 8:32 [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin Jocelyn Mayer
@ 2007-03-07 14:14 ` Stuart Brady
2007-03-07 21:40 ` J. Mayer
0 siblings, 1 reply; 5+ messages in thread
From: Stuart Brady @ 2007-03-07 14:14 UTC (permalink / raw)
To: qemu-devel
On Wed, Mar 07, 2007 at 08:32:30AM +0000, Jocelyn Mayer wrote:
> CVSROOT: /sources/qemu
> Module name: qemu
> Changes by: Jocelyn Mayer <j_mayer> 07/03/07 08:32:30
>
> Modified files:
> . : cpu-all.h gdbstub.c monitor.c
> hw : ppc.c
> linux-user : main.c
> target-ppc : cpu.h exec.h helper.c op.c op_helper.c
> op_helper_mem.h op_mem.h op_template.h
> translate.c translate_init.c
> Added files:
> target-ppc : STATUS mfrom_table.c mfrom_table_gen.c
> op_helper.h
There seems to be a regression somewhere here...
I'm testing Debian Etch with -M prep and the 2.4.27 kernel from
http://overselfresearch.com/kb/qemu.html. I'm running QEMU with:
qemu-system-ppc -hda hda.img -M prep -kernel vmlinuz-2.4.27.001 -g 640x480
After this commit, user-mode networking no longer works. DHCP does seem
to work and I can telnet to ports on 10.0.2.2, but I can't do any DNS
lookups or connect to anything else.
I will try to investigate further.
Thanks,
--
Stuart Brady
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin...
2007-03-07 14:14 ` Stuart Brady
@ 2007-03-07 21:40 ` J. Mayer
2007-03-07 21:47 ` J. Mayer
2007-03-07 23:21 ` Stuart Brady
0 siblings, 2 replies; 5+ messages in thread
From: J. Mayer @ 2007-03-07 21:40 UTC (permalink / raw)
To: qemu-devel
On Wed, 2007-03-07 at 14:14 +0000, Stuart Brady wrote:
> On Wed, Mar 07, 2007 at 08:32:30AM +0000, Jocelyn Mayer wrote:
> > CVSROOT: /sources/qemu
> > Module name: qemu
> > Changes by: Jocelyn Mayer <j_mayer> 07/03/07 08:32:30
> >
> > Modified files:
> > . : cpu-all.h gdbstub.c monitor.c
> > hw : ppc.c
> > linux-user : main.c
> > target-ppc : cpu.h exec.h helper.c op.c op_helper.c
> > op_helper_mem.h op_mem.h op_template.h
> > translate.c translate_init.c
> > Added files:
> > target-ppc : STATUS mfrom_table.c mfrom_table_gen.c
> > op_helper.h
>
> There seems to be a regression somewhere here...
>
> I'm testing Debian Etch with -M prep and the 2.4.27 kernel from
> http://overselfresearch.com/kb/qemu.html. I'm running QEMU with:
>
> qemu-system-ppc -hda hda.img -M prep -kernel vmlinuz-2.4.27.001 -g 640x480
>
> After this commit, user-mode networking no longer works. DHCP does seem
> to work and I can telnet to ports on 10.0.2.2, but I can't do any DNS
> lookups or connect to anything else.
>
> I will try to investigate further.
Hi,
as far as I can see, prep target was broken before I send this patch: no
PCI IRQ seem to be available anymore, so the target can not even be
boot. There is the same problem with heathrow machine. Looks like the
PCI and/or the IRQ controller has been badly broken for those two
targets. I did not have the time needed for investigations by now...
The only PowerPC target I'm able to test properly, for now, is mac99.
But I have to admit I've never used user-mode emulation at all. Could
you please check using this target ?
--
J. Mayer <l_indien@magic.fr>
Never organized
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin...
2007-03-07 21:40 ` J. Mayer
@ 2007-03-07 21:47 ` J. Mayer
2007-03-07 23:21 ` Stuart Brady
1 sibling, 0 replies; 5+ messages in thread
From: J. Mayer @ 2007-03-07 21:47 UTC (permalink / raw)
To: qemu-devel
On Wed, 2007-03-07 at 22:40 +0100, J. Mayer wrote:
> On Wed, 2007-03-07 at 14:14 +0000, Stuart Brady wrote:
> > On Wed, Mar 07, 2007 at 08:32:30AM +0000, Jocelyn Mayer wrote:
> > > CVSROOT: /sources/qemu
> > > Module name: qemu
> > > Changes by: Jocelyn Mayer <j_mayer> 07/03/07 08:32:30
> > >
> > > Modified files:
> > > . : cpu-all.h gdbstub.c monitor.c
> > > hw : ppc.c
> > > linux-user : main.c
> > > target-ppc : cpu.h exec.h helper.c op.c op_helper.c
> > > op_helper_mem.h op_mem.h op_template.h
> > > translate.c translate_init.c
> > > Added files:
> > > target-ppc : STATUS mfrom_table.c mfrom_table_gen.c
> > > op_helper.h
> >
> > There seems to be a regression somewhere here...
> >
> > I'm testing Debian Etch with -M prep and the 2.4.27 kernel from
> > http://overselfresearch.com/kb/qemu.html. I'm running QEMU with:
> >
> > qemu-system-ppc -hda hda.img -M prep -kernel vmlinuz-2.4.27.001 -g 640x480
> >
> > After this commit, user-mode networking no longer works. DHCP does seem
> > to work and I can telnet to ports on 10.0.2.2, but I can't do any DNS
> > lookups or connect to anything else.
> >
> > I will try to investigate further.
>
> Hi,
> as far as I can see, prep target was broken before I send this patch: no
> PCI IRQ seem to be available anymore, so the target can not even be
> boot. There is the same problem with heathrow machine. Looks like the
> PCI and/or the IRQ controller has been badly broken for those two
> targets. I did not have the time needed for investigations by now...
> The only PowerPC target I'm able to test properly, for now, is mac99.
> But I have to admit
> I've never used user-mode emulation at all.
Sorry, I meant user-mode networking emulation, of course....
[...]
--
J. Mayer <l_indien@magic.fr>
Never organized
^ permalink raw reply [flat|nested] 5+ messages in thread
* Re: [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin...
2007-03-07 21:40 ` J. Mayer
2007-03-07 21:47 ` J. Mayer
@ 2007-03-07 23:21 ` Stuart Brady
1 sibling, 0 replies; 5+ messages in thread
From: Stuart Brady @ 2007-03-07 23:21 UTC (permalink / raw)
To: qemu-devel
On Wed, Mar 07, 2007 at 10:40:41PM +0100, J. Mayer wrote:
> as far as I can see, prep target was broken before I send this patch: no
> PCI IRQ seem to be available anymore, so the target can not even be
> boot. There is the same problem with heathrow machine. Looks like the
> PCI and/or the IRQ controller has been badly broken for those two
> targets. I did not have the time needed for investigations by now...
I noticed this with heathrow a while ago. When I bisected the tree, I
found that the regression was introduced with this commit:
http://lists.gnu.org/archive/html/qemu-devel/2006-09/msg00239.html
Strangely, I can boot on prep without any trouble.
> The only PowerPC target I'm able to test properly, for now, is mac99.
[...]
> Could you please check using this target ?
I've just tried, with no luck. I'm probably doing something silly:
$ qemu-system-ppc -hda hda.img -M mac99 -kernel vmlinuz-2.4.27.001 -nographic
init_ppc_proc: PVR 00080000 mask ffffffff => 00080000
register PCI host 'pci' 'pci' 'uni-north' 'AAPL,UniNorth'
register 'pci' 'pci' 'uni-north' 'AAPL,UniNorth' 0xf2000000 in 'device-tree' 0xffffffff
Done 582b000 582b900
PCI device '<null>' 0 11 0 has no reg properties:
PCI device '<null>' 0 11 0 has no assigned addresses properties:
register pci device 'Qemu VGA' 0000000c 'display' 'VGA' 'Qemu VGA'
register 'Qemu VGA' 'display' 'VGA' 'Qemu VGA' 0x0000000c in 'pci' 0xf2000000
Done 582b900 582ba00
PCI device 'Qemu VGA' 0 12 0 reg properties:
addr: 82006010 00000000 80000000 size: 00000000 00800000
PCI device 'Qemu VGA' 0 12 0 assigned addresses properties:
addr: 82006010 00000000 80000000 size: 00000000 00800000
register pci device 'NE2000' 0000000d 'network' '<null>' 'NE2000 PCI'
register 'NE2000' 'network' '<null>' 'NE2000 PCI' 0x0000000d in 'pci' 0xf2000000
Done 582b900 582bb00
PCI device 'NE2000' 0 13 0 reg properties:
addr: 01006810 00000000 00001000 size: 00000000 00000100
PCI device 'NE2000' 0 13 0 assigned addresses properties:
addr: 01006810 00000000 00001000 size: 00000000 00000100
register pci device 'mac-io' 0000000e 'mac-io' 'Keylargo' 'AAPL,Keylargo'
register 'mac-io' 'mac-io' 'Keylargo' 'AAPL,Keylargo' 0x0000000e in 'pci' 0xf2000000
Done 582b900 582bc00
PCI device 'mac-io' 0 14 0 reg properties:
addr: 82007010 00000000 80880000 size: 00000000 00080000
PCI device 'mac-io' 0 14 0 assigned addresses properties:
addr: 82007010 00000000 80880000 size: 00000000 00080000
PPC Open Hack'Ware BIOS for qemu version 0.4.1
Build 2005-07-06 23:10:57
Copyright 2003-2005 Jocelyn Mayer
Memory size: 144 MB.
Booting from device m
ide0: drive 0: Hard Disk
ERROR: OF_property_copy cannot get property 'hd' for aliases
ide0: drive 1: CD-ROM
ERROR: OF_property_copy cannot get property 'cd' for aliases
ERROR: ATAPI TEST_UNIT_READY : status 41 != 0x40
ide1: drive 0: none
ide1: drive 1: none
Probe partitions for device c
Found Apple partition map...
Not a bootable partition 0 0 (0 5835880)
Partition: 2 'untitled' 'Apple_Bootstrap' st 40 size 7a2
Not a bootable partition 0 0 (0 5835900)
Partition: 3 'untitled' 'Apple_UNIX_SVR2' st 7e2 size 1d6a37
Not a bootable partition 0 0 (0 5835980)
Partition: 4 'swap' 'Apple_UNIX_SVR2' st 1d7219 size 28de7
Probe filesystem on dummy Apple partition 'Apple' 5835800
New bootfile
Probe filesystem on filesystem Apple partition 'untitled' 5835880
HFS volume
Partition is bootable (2)
bd_set_boot_part: part 5835880 (0) 2
Probe filesystem on filesystem Apple partition 'untitled' 5835900
ERROR in fs_probe: FS not identified
Probe filesystem on filesystem Apple partition 'swap' 5835980
ERROR in fs_probe: FS not identified
Boot partition: 5835880 582e5c0 582e5c0 0
Probe partitions for device m
Use bloc device as raw partition
Boot partition: 0 9401fff8 9401fff8 0
ERROR: OF_property_copy cannot get property 'alias' for <null>
boot device: 5835780 image 1000000 size 1233878
Use bloc device as raw partition
Boot partition: 0 9401fff8 9401fff8 0
boot device: 5835780
ERROR: Found no boot partition!
--
Stuart Brady
^ permalink raw reply [flat|nested] 5+ messages in thread
end of thread, other threads:[~2007-03-07 23:22 UTC | newest]
Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-03-07 8:32 [Qemu-devel] qemu cpu-all.h gdbstub.c monitor.c hw/ppc.c lin Jocelyn Mayer
2007-03-07 14:14 ` Stuart Brady
2007-03-07 21:40 ` J. Mayer
2007-03-07 21:47 ` J. Mayer
2007-03-07 23:21 ` Stuart Brady
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).