sdk/emulator/qemu.git
17 years agoCRIS support in toplevel, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 13:16:14 +0000 (13:16 +0000)]
CRIS support in toplevel, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3363 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCRIS MMU emulation, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 13:11:58 +0000 (13:11 +0000)]
CRIS MMU emulation, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3362 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoThe remainder of CRIS CPU emulation files, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 13:04:02 +0000 (13:04 +0000)]
The remainder of CRIS CPU emulation files, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3361 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCRIS micro-ops, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 12:52:43 +0000 (12:52 +0000)]
CRIS micro-ops, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3360 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCRIS insn decoding macros, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 12:50:59 +0000 (12:50 +0000)]
CRIS insn decoding macros, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3359 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCRIS instruction translation, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 12:49:08 +0000 (12:49 +0000)]
CRIS instruction translation, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3358 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoWire up CRIS disassembler, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 12:46:58 +0000 (12:46 +0000)]
Wire up CRIS disassembler, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3357 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCRIS disassembler, originally from binutils, by Edgar E. Iglesias.
ths [Mon, 8 Oct 2007 12:45:38 +0000 (12:45 +0000)]
CRIS disassembler, originally from binutils, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3356 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoUpdate PowerPC emulation status file.
j_mayer [Mon, 8 Oct 2007 03:00:35 +0000 (03:00 +0000)]
Update PowerPC emulation status file.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3355 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoRemove synonymous in PowerPC MSR bits definitions.
j_mayer [Mon, 8 Oct 2007 02:58:07 +0000 (02:58 +0000)]
Remove synonymous in PowerPC MSR bits definitions.
Fix MSR EP bit buggy definition.
Remove unuseful MSR flags.
Fix MSR bits and flags definitions for most supported PowerPC implementations.
Add MSR definitions/flags constistency checks and optional dump.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3354 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoReal-mode only PowerPC 40x do not have any TLBs.
j_mayer [Mon, 8 Oct 2007 02:44:11 +0000 (02:44 +0000)]
Real-mode only PowerPC 40x do not have any TLBs.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3353 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement exception prefix feature for PowerPC 601.
j_mayer [Mon, 8 Oct 2007 02:35:41 +0000 (02:35 +0000)]
Implement exception prefix feature for PowerPC 601.
Fix PowerPC 601 hardware reset vector.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3352 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd missing exception vectors for PowerPC 7x5.
j_mayer [Mon, 8 Oct 2007 02:23:00 +0000 (02:23 +0000)]
Add missing exception vectors for PowerPC 7x5.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3351 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoWork-around C89 and/or "old" gcc unspecified behavior (#if in macro calls).
j_mayer [Sun, 7 Oct 2007 23:10:08 +0000 (23:10 +0000)]
Work-around C89 and/or "old" gcc unspecified behavior (#if in macro calls).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3350 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement PowerPC Altivec load & stores, used by Apple firmware for memcpy.
j_mayer [Sun, 7 Oct 2007 18:19:26 +0000 (18:19 +0000)]
Implement PowerPC Altivec load & stores, used by Apple firmware for memcpy.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3349 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoPowerPC target coding style fixes.
j_mayer [Sun, 7 Oct 2007 17:30:34 +0000 (17:30 +0000)]
PowerPC target coding style fixes.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3348 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoPowerPC target optimisations: make intensive use of always_inline.
j_mayer [Sun, 7 Oct 2007 17:13:44 +0000 (17:13 +0000)]
PowerPC target optimisations: make intensive use of always_inline.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3347 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoReport missing elf_addr_t definition from Linux kernel header
j_mayer [Sun, 7 Oct 2007 16:07:25 +0000 (16:07 +0000)]
Report missing elf_addr_t definition from Linux kernel header

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3346 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix host and target longs confusions (continued).
j_mayer [Sun, 7 Oct 2007 16:06:13 +0000 (16:06 +0000)]
Fix host and target longs confusions (continued).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3345 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix confusions between host and target long types.
j_mayer [Sun, 7 Oct 2007 15:59:45 +0000 (15:59 +0000)]
Fix confusions between host and target long types.
Fix start_data computation.
Fix auxiliary infos setup.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3344 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoReorganize the CPUPPCState structure to group features.
j_mayer [Sun, 7 Oct 2007 15:43:50 +0000 (15:43 +0000)]
Reorganize the CPUPPCState structure to group features.
Add #ifdef to avoid compiling not relevant resources:
- MMU related stuff for user-mode only targets
- PowerPC 64 only resources for PowerPC 32 targets
- embedded PowerPC extensions for non-ppcemb targets.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3343 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd MSR bits signification per PowerPC implementation flags (to be continued).
j_mayer [Sun, 7 Oct 2007 14:41:00 +0000 (14:41 +0000)]
Add MSR bits signification per PowerPC implementation flags (to be continued).
As a side effect, single step and branch step are available again.
Remove irrelevant MSR bits definitions.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3342 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoShare devices that may be useful for all PowerPC 40x and 440 implementations.
j_mayer [Sun, 7 Oct 2007 14:25:11 +0000 (14:25 +0000)]
Share devices that may be useful for all PowerPC 40x and 440 implementations.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3341 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoShare devices that might be useful for all PowerPC 40x & 440 implementations
j_mayer [Sun, 7 Oct 2007 14:21:26 +0000 (14:21 +0000)]
Share devices that might be useful for all PowerPC 40x & 440 implementations
 (mostly CPU registration and UIC, for now).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3340 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago More user timer fixes (Robert Reif)
blueswir1 [Sun, 7 Oct 2007 10:00:55 +0000 (10:00 +0000)]
 More user timer fixes (Robert Reif)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3339 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago More detabification
blueswir1 [Sat, 6 Oct 2007 11:28:21 +0000 (11:28 +0000)]
 More detabification

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3338 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Implement user mode for timers
blueswir1 [Sat, 6 Oct 2007 11:25:43 +0000 (11:25 +0000)]
 Implement user mode for timers

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3337 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Support for loading a real BIOS image (Robert Reif)
blueswir1 [Sat, 6 Oct 2007 11:24:18 +0000 (11:24 +0000)]
 Support for loading a real BIOS image (Robert Reif)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3336 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFull implementation of PowerPC 64 MMU, just missing support for 1 TB
j_mayer [Fri, 5 Oct 2007 22:06:02 +0000 (22:06 +0000)]
Full implementation of PowerPC 64 MMU, just missing support for 1 TB
  memory segments.
Remove the PowerPC 64 "bridge" MMU model and implement segment registers
  emulation using SLB entries instead.
Make SLB area size implementation dependant.
Improve TLB & SLB search debug traces.
Temporary hack to make PowerPC 970 boot from ROM instead of RAM.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3335 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Implement sparc64_[gs]et_context
blueswir1 [Fri, 5 Oct 2007 17:01:51 +0000 (17:01 +0000)]
 Implement sparc64_[gs]et_context

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3334 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoRename PowerPC MMUCSR0 and MMUCFG SPRs: those are not BookE specific.
j_mayer [Fri, 5 Oct 2007 13:11:25 +0000 (13:11 +0000)]
Rename PowerPC MMUCSR0 and MMUCFG SPRs: those are not BookE specific.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3333 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoPowerPC hardware reset vector is now considered as part of the exception model.
j_mayer [Fri, 5 Oct 2007 13:09:54 +0000 (13:09 +0000)]
PowerPC hardware reset vector is now considered as part of the exception model.
Use it at CPU initialisation time.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3332 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoNew '-bios' option, used to select an alternate BIOS image from bios_dir.
j_mayer [Fri, 5 Oct 2007 13:08:35 +0000 (13:08 +0000)]
New '-bios' option, used to select an alternate BIOS image from bios_dir.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3331 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement PL110 byte order config bit (original patch by Richard Purdie).
balrog [Thu, 4 Oct 2007 23:45:31 +0000 (23:45 +0000)]
Implement PL110 byte order config bit (original patch by Richard Purdie).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3330 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoQuiet warnings introduced with the USB iso support.
balrog [Thu, 4 Oct 2007 22:55:53 +0000 (22:55 +0000)]
Quiet warnings introduced with the USB iso support.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3329 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoUSB iso transfers support for the linux redirector and for UHCI, by Arnon Gilboa.
balrog [Thu, 4 Oct 2007 22:47:34 +0000 (22:47 +0000)]
USB iso transfers support for the linux redirector and for UHCI, by Arnon Gilboa.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3328 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agosh775x interrupt controller by Magnus Damm.
balrog [Thu, 4 Oct 2007 21:53:55 +0000 (21:53 +0000)]
sh775x interrupt controller by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3327 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoRemove redundant qemu_rearm_alarm_timer() in qemu_del_timer, patch by Dan Kenigsberg.
balrog [Thu, 4 Oct 2007 19:59:04 +0000 (19:59 +0000)]
Remove redundant qemu_rearm_alarm_timer() in qemu_del_timer, patch by Dan Kenigsberg.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3326 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago(int64_t)UINT64_MAX is -1 and should not be assigned to nearest_delta_us, patch by...
balrog [Thu, 4 Oct 2007 19:47:09 +0000 (19:47 +0000)]
(int64_t)UINT64_MAX is -1 and should not be assigned to nearest_delta_us, patch by Dan Kenigsberg.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3325 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoSeveral corrections in the spitzkbd keymap (patch by Juergen Lock).
balrog [Thu, 4 Oct 2007 19:41:17 +0000 (19:41 +0000)]
Several corrections in the spitzkbd keymap (patch by Juergen Lock).
Don't abort on illegal GPSR reads, instead only warn.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3324 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoWe must reset the PowerPC CPU _after_ registering it, as hardware reset
j_mayer [Thu, 4 Oct 2007 01:54:44 +0000 (01:54 +0000)]
We must reset the PowerPC CPU _after_ registering it, as hardware reset
  effect is implementation dependant.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3323 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoMore cache tuning fixes:
j_mayer [Thu, 4 Oct 2007 01:50:03 +0000 (01:50 +0000)]
More cache tuning fixes:
* fix the tunable cache line size probe for PowerPC 970.
* initialize HID5 so cache line is 32 bytes long when running in user-mode only

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3322 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoMake PowerPC cache line size implementation dependant.
j_mayer [Thu, 4 Oct 2007 00:51:58 +0000 (00:51 +0000)]
Make PowerPC cache line size implementation dependant.
Implement dcbz tunable cache line size for PowerPC 970.
Make hardware reset vector implementation dependant.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3321 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoHID0 is a write-clear register on 970 (DBSR).
j_mayer [Wed, 3 Oct 2007 20:27:44 +0000 (20:27 +0000)]
HID0 is a write-clear register on 970 (DBSR).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3320 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoEnable PowerPC 64 MMU model and exceptions.
j_mayer [Wed, 3 Oct 2007 20:19:40 +0000 (20:19 +0000)]
Enable PowerPC 64 MMU model and exceptions.
Cleanups in MMU exceptions generation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3319 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Fix Sparc64 ldfa/stfa and float ops with fpr >= 32
blueswir1 [Wed, 3 Oct 2007 17:46:29 +0000 (17:46 +0000)]
 Fix Sparc64 ldfa/stfa and float ops with fpr >= 32

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3318 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix PowerPC initialisation and first reset:
j_mayer [Wed, 3 Oct 2007 01:06:57 +0000 (01:06 +0000)]
Fix PowerPC initialisation and first reset:
 reset must occur after we defined the CPU features.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3317 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoWe never have to export ppc_set_irq.
j_mayer [Wed, 3 Oct 2007 01:05:39 +0000 (01:05 +0000)]
We never have to export ppc_set_irq.
Protect PowerPC 64 only features with #ifdef (TARGET_PPC64)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3316 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix PowerPC 405 BIOS instanciation: is a 32 bits only target.
j_mayer [Wed, 3 Oct 2007 01:04:20 +0000 (01:04 +0000)]
Fix PowerPC 405 BIOS instanciation: is a 32 bits only target.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3315 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Fix kernel loading
blueswir1 [Tue, 2 Oct 2007 19:15:48 +0000 (19:15 +0000)]
 Fix kernel loading

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3314 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCode provision for hypervisor mode memory accesses.
j_mayer [Tue, 2 Oct 2007 10:11:50 +0000 (10:11 +0000)]
Code provision for hypervisor mode memory accesses.
Add comments in load & store tables to ease code reading.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3313 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix nasty sign-extensions when running 32 bits CPU in the 64 bits emulator
j_mayer [Mon, 1 Oct 2007 21:51:40 +0000 (21:51 +0000)]
Fix nasty sign-extensions when running 32 bits CPU in the 64 bits emulator
on 32 bits hosts.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3312 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix reproductible crash: call cpu_loop_exit from micro-op, not from helper.c
j_mayer [Mon, 1 Oct 2007 21:49:57 +0000 (21:49 +0000)]
Fix reproductible crash: call cpu_loop_exit from micro-op, not from helper.c

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3311 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Fix block load ASIs
blueswir1 [Mon, 1 Oct 2007 17:07:58 +0000 (17:07 +0000)]
 Fix block load ASIs

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3310 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoQuickly hack PowerPC BIOS able to boot on CDROM again.
j_mayer [Mon, 1 Oct 2007 06:44:33 +0000 (06:44 +0000)]
Quickly hack PowerPC BIOS able to boot on CDROM again.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3309 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix missing nip updates for instructions that potentially generate
j_mayer [Mon, 1 Oct 2007 05:22:17 +0000 (05:22 +0000)]
Fix missing nip updates for instructions that potentially generate
  exceptions from op helpers.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3308 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoHandle all MMU models in switches, even if it's just to abort because of lack
j_mayer [Mon, 1 Oct 2007 05:16:57 +0000 (05:16 +0000)]
Handle all MMU models in switches, even if it's just to abort because of lack
  of supporting code.
Implement 74xx software TLB model.
Keep 74xx with software TLB disabled, as Linux is not able to handle TLB miss
  on those processors.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3307 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoMore comments about unimplemented SPRs.
j_mayer [Mon, 1 Oct 2007 04:48:45 +0000 (04:48 +0000)]
More comments about unimplemented SPRs.
Tag unused functions with unused attribute instead of using #ifdef (TODO)
  to ease tests: just have to enable the implementation in the cpu_defs table.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3306 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoOptimisations: avoid generation of duplicated micro-ops.
j_mayer [Mon, 1 Oct 2007 03:03:51 +0000 (03:03 +0000)]
Optimisations: avoid generation of duplicated micro-ops.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3305 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCompilation fix (forgotten patch).
j_mayer [Mon, 1 Oct 2007 02:55:07 +0000 (02:55 +0000)]
Compilation fix (forgotten patch).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3304 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoRemove definitions for deprecated SLB & TLB related op helpers.
j_mayer [Mon, 1 Oct 2007 01:59:12 +0000 (01:59 +0000)]
Remove definitions for deprecated SLB & TLB related op helpers.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3303 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAvoid op helpers that would just call helpers for TLB & SLB management:
j_mayer [Mon, 1 Oct 2007 01:51:12 +0000 (01:51 +0000)]
Avoid op helpers that would just call helpers for TLB & SLB management:
  call the helpers directly from the micro-ops.
Avoid duplicated code for tlbsx. implementation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3302 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoShare more SPR instanciations between all PowerPC 401 incarnations.
j_mayer [Mon, 1 Oct 2007 01:38:03 +0000 (01:38 +0000)]
Share more SPR instanciations between all PowerPC 401 incarnations.
Add comments about some unimplemented storage control dedicated SPRs.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3301 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement embedded PowerPC exceptions prefix and vectors registers.
j_mayer [Mon, 1 Oct 2007 01:32:49 +0000 (01:32 +0000)]
Implement embedded PowerPC exceptions prefix and vectors registers.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3300 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoShare input pins and internal interrupt controller between all PowerPC 40x.
j_mayer [Mon, 1 Oct 2007 01:27:10 +0000 (01:27 +0000)]
Share input pins and internal interrupt controller between all PowerPC 40x.
Fix critical input interrupt generation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3299 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Fix Sparc64 ldfa, lddfa, stfa, and stdfa instructions
blueswir1 [Sun, 30 Sep 2007 19:38:12 +0000 (19:38 +0000)]
 Fix Sparc64 ldfa, lddfa, stfa, and stdfa instructions

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3298 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago Fix Sparc64 wrasr instructions
blueswir1 [Sun, 30 Sep 2007 16:37:00 +0000 (16:37 +0000)]
 Fix Sparc64 wrasr instructions

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3297 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix (once again) PowerPC sync weight field.
j_mayer [Sun, 30 Sep 2007 15:21:15 +0000 (15:21 +0000)]
Fix (once again) PowerPC sync weight field.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3296 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix PowerPC TLB miss dump code.
j_mayer [Sun, 30 Sep 2007 15:19:48 +0000 (15:19 +0000)]
Fix PowerPC TLB miss dump code.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3295 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix missing case in the new PowerPC exception model.
j_mayer [Sun, 30 Sep 2007 15:15:18 +0000 (15:15 +0000)]
Fix missing case in the new PowerPC exception model.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3294 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix inconsistent end conditions in ppc_find_xxx functions.
j_mayer [Sun, 30 Sep 2007 14:52:08 +0000 (14:52 +0000)]
Fix inconsistent end conditions in ppc_find_xxx functions.
  (crash reported by Andreas Farber when using default CPU).

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3293 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix compilation on Darwin platform, avoiding the use of gcc function attributes
j_mayer [Sun, 30 Sep 2007 14:44:52 +0000 (14:44 +0000)]
Fix compilation on Darwin platform, avoiding the use of gcc function attributes
 (problem reported by Andreas Farber).
: ----------------------------------------------------------------------

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3292 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix mmap to handle differing host/target page sizes, by Edgar E. Iglesias.
ths [Sun, 30 Sep 2007 14:32:45 +0000 (14:32 +0000)]
Fix mmap to handle differing host/target page sizes, by Edgar E. Iglesias.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3291 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd get_sp_from_cpustate implementation.
ths [Sun, 30 Sep 2007 13:49:22 +0000 (13:49 +0000)]
Add get_sp_from_cpustate implementation.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3290 c046a42c-6fe2-441c-8c8c-71466251a162

17 years ago* Update OEA environment, following the PowerPC 2.04 specification:
j_mayer [Sun, 30 Sep 2007 13:03:23 +0000 (13:03 +0000)]
* Update OEA environment, following the PowerPC 2.04 specification:
- New mtmsr/mtmsrd form that just update RI and EE bits
- New hrfid, lq and stq instructions
- Add support for supervisor and hypervisor modes process priority update
- Code provision for hypervisor SPR accesses
* Actually implement the wait instruction
* Bugfixes (missing RETURN in micro-op / missing #ifdef)

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3289 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoSupport UltraVNC clients, by Eduardo Felipe.
ths [Sun, 30 Sep 2007 13:01:15 +0000 (13:01 +0000)]
Support UltraVNC clients, by Eduardo Felipe.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3288 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoSynchronize with latest PowerPC ISA VEA:
j_mayer [Sun, 30 Sep 2007 03:46:38 +0000 (03:46 +0000)]
Synchronize with latest PowerPC ISA VEA:
* fix invalid instructions bits masks
* new wait instruction
* more comments about effect of cache instructions on the MMU

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3287 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd mipsn32{,el}-linux-user.
ths [Sun, 30 Sep 2007 02:14:03 +0000 (02:14 +0000)]
Add mipsn32{,el}-linux-user.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3286 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoRemove unused variable.
ths [Sun, 30 Sep 2007 02:10:37 +0000 (02:10 +0000)]
Remove unused variable.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3285 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCode provision for n32/n64 mips userland emulation. Not functional yet.
ths [Sun, 30 Sep 2007 01:58:33 +0000 (01:58 +0000)]
Code provision for n32/n64 mips userland emulation. Not functional yet.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3284 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAvoid crash on NULL timers.
j_mayer [Sun, 30 Sep 2007 01:29:07 +0000 (01:29 +0000)]
Avoid crash on NULL timers.
This is a rework of Stefan Weil proposed patch.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3283 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement Process Priority Register as defined in the PowerPC 2.04 spec.
j_mayer [Sun, 30 Sep 2007 01:18:26 +0000 (01:18 +0000)]
Implement Process Priority Register as defined in the PowerPC 2.04 spec.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3282 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement new floating-point instructions (fre, frin, friz, frip, frim)
j_mayer [Sun, 30 Sep 2007 01:11:48 +0000 (01:11 +0000)]
Implement new floating-point instructions (fre, frin, friz, frip, frim)
  as defined in the PowerPC 2.04 specification.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3281 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImprove single-precision floats load & stores:
j_mayer [Sun, 30 Sep 2007 01:01:08 +0000 (01:01 +0000)]
Improve single-precision floats load & stores:
  as the PowerPC registers only store double-precision floats,
  use float64_to_float32 & float32_to_float64 to do the appropriate conversion.
Implement stfiwx.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3280 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoXER is to be treated as a 64 bits register on 64 bits implementations,
j_mayer [Sun, 30 Sep 2007 00:50:23 +0000 (00:50 +0000)]
XER is to be treated as a 64 bits register on 64 bits implementations,
  according to the PowerPC 2.04 specification.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3279 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoUpdate TODO.
ths [Sun, 30 Sep 2007 00:45:51 +0000 (00:45 +0000)]
Update TODO.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3278 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoImplement the PowerPC alternate time-base, following the 2.04 specification.
j_mayer [Sun, 30 Sep 2007 00:38:38 +0000 (00:38 +0000)]
Implement the PowerPC alternate time-base, following the 2.04 specification.
Share most code with the time-base management routines.
Remove time-base write routines from user-mode emulation environments.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3277 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoDon't hardcode the host architecture name.
ths [Sat, 29 Sep 2007 21:22:33 +0000 (21:22 +0000)]
Don't hardcode the host architecture name.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3276 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoUpdate tarbin rule.
ths [Sat, 29 Sep 2007 21:18:26 +0000 (21:18 +0000)]
Update tarbin rule.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3275 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoEnable sh4-softmmu and sh4-linux-user builds by default, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:55:21 +0000 (19:55 +0000)]
Enable sh4-softmmu and sh4-linux-user builds by default, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3274 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoFix rte opcode, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:52:22 +0000 (19:52 +0000)]
Fix rte opcode, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3273 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd FRQCR read support, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:51:40 +0000 (19:51 +0000)]
Add FRQCR read support, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3272 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd INTC controller prototype, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:47:44 +0000 (19:47 +0000)]
Add INTC controller prototype, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3271 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoStand-alone SCI/SCIF emulation code, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:43:54 +0000 (19:43 +0000)]
Stand-alone SCI/SCIF emulation code, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3270 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoStand-alone TMU emulation code, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:40:09 +0000 (19:40 +0000)]
Stand-alone TMU emulation code, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3269 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoAdd R2D-PLUS support, by Magnus Damm.
ths [Sat, 29 Sep 2007 19:24:41 +0000 (19:24 +0000)]
Add R2D-PLUS support, by Magnus Damm.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3268 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoSupervisor mode implementation, by Aurelien Jarno.
ths [Sat, 29 Sep 2007 19:21:36 +0000 (19:21 +0000)]
Supervisor mode implementation, by Aurelien Jarno.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3267 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoLess magic constants.
ths [Sat, 29 Sep 2007 19:19:59 +0000 (19:19 +0000)]
Less magic constants.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3266 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoPowerPC emulation optimization:
j_mayer [Sat, 29 Sep 2007 15:02:38 +0000 (15:02 +0000)]
PowerPC emulation optimization:
avoid stopping translation after most SPR updates
when a context-synchronization instruction is also needed.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3265 c046a42c-6fe2-441c-8c8c-71466251a162

17 years agoCode provision for hypervisor timers resources,
j_mayer [Sat, 29 Sep 2007 13:21:37 +0000 (13:21 +0000)]
Code provision for hypervisor timers resources,
 as described in PowerPC 2.04 specification.

git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3264 c046a42c-6fe2-441c-8c8c-71466251a162