ths
1b6fd0bc55
Restrict CP0_PerfCnt to legal values.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3476 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 00:49:32 +00:00
j_mayer
3cbee15b9a
* sort the PowerPC target object files
...
* make PowerPC NVRAM accessors generic to be able to use a MacIO NVRAM
instead of the M48T59 one
* split PowerMac targets code:
- move all PowerMac related definitions and prototypes into hw/ppc_mac.h
- add hw/mac_dbdma.c, hw/mac_nvram.c and macio.c
which implements shared PowerMac devices
- define the g3bw machine in a new hw/ppc_oldworld.c file
* Fix the g3bw target:
- fix the Grackle host PCI device
- connect the Heathrow PIC to the PowerPC 6xx bus pins
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3475 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 23:42:18 +00:00
j_mayer
897b4c6c4e
Give an opaque to the m48t59 direct access routines to make it easier
...
to use another NVRAM with the same API.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3474 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 23:33:05 +00:00
balrog
6433014805
Add OMAP Shared GPIO module.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3473 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 21:02:29 +00:00
ths
623a930ec3
Implement missing MIPS supervisor mode bits.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3472 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 19:45:05 +00:00
balrog
8e129e0748
Handle MMC card insertion/removal/readonly signals.
...
Hook them up to Palm T|E GPIOs.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3471 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 19:24:52 +00:00
balrog
38a34e1d7a
Add PalmT|E matrix keypad connected to OMAP GPIOs.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3470 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 18:29:04 +00:00
balrog
fe71e81aba
Implement OMAP1 MPU I/O module.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3469 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 16:45:01 +00:00
blueswir1
eed152bba5
Use shared ctpop64 helper
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3468 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 14:35:04 +00:00
j_mayer
2f96c28d55
Use cpp to generate correct build dependencies for target objects
...
instead of using incomplete hardcoded ones.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3467 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 13:07:12 +00:00
j_mayer
603fcccece
Make Alpha and PowerPC targets use shared helpers
...
for clz, clo, ctz, cto and ctpop.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3466 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 12:54:53 +00:00
j_mayer
b9ef45ffa8
Add shared ctz32, cto32, ctz64, cto64,
...
ctpop8, ctpop16, ctpop32 and ctpop64 helpers.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3465 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 12:52:38 +00:00
ths
941db52871
Use the shiny new clz helpers.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3464 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 01:44:40 +00:00
ths
57ba97deb8
Less debug noise from the mipsnet driver.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3463 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 01:43:52 +00:00
j_mayer
f071b4d3ca
Alpha coding style and inlining fixes.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3462 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 00:56:24 +00:00
j_mayer
a11b8151df
PowerPC coding style and inlining fixes.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3461 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-28 00:55:05 +00:00
j_mayer
5bda28432f
PowerPC floating-point helper typo.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3460 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 23:34:30 +00:00
j_mayer
4f8eb6cfa2
PowerPC float bugfix: 64 bits float mantissa is 52 bits long.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3459 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 17:59:46 +00:00
j_mayer
7c58044c0a
Fix PowerPC FPSCR update and floating-point exception generation
...
in most useful cases.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3458 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 17:54:30 +00:00
j_mayer
a32ff1ad95
PowerPC user-mode fix: MSR is now entirelly set-up in the cpu_reset routine.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3457 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 17:29:35 +00:00
j_mayer
8378e71f13
Fix endianness bug for PowerPC stfiwx instruction.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3456 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 17:18:49 +00:00
ths
05f778c8bd
Add sharable clz/clo inline functions and use them for the mips target.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3455 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-27 13:05:54 +00:00
ths
5592a750b9
The other half of the mul64 rework. Sorry for the breakage, I committed
...
an incomplete version of what I tested.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3454 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 22:35:02 +00:00
blueswir1
7878ff6bc7
Add const etc. to places forgotten from the previous commit
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3453 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 19:34:46 +00:00
blueswir1
9634d9031c
Use const and static as needed, disable unused code
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3452 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 19:01:16 +00:00
blueswir1
31a60e2275
Make Slirp statistics gathering and output conditional to LOG_ENABLED
...
Add 'info slirp' command to monitor to display statistics
Disable Slirp debugging code by default
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3451 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 18:42:59 +00:00
ths
7d294b61ed
Fix Windows build failure, by Stefan Weil.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3450 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 17:21:58 +00:00
j_mayer
f0685f6e7a
For consistency, align the address to the cache line before using it,
...
when invalidating the instruction cache.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3449 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 00:55:17 +00:00
j_mayer
dac454af57
Bugfix in PowerPC dcbi instruction:
...
we must do a load before the store, or we'll store random data.
Update cache instructions comments.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3448 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 00:48:00 +00:00
j_mayer
c7697e1f51
Pretty dump for specific PowerPC instructions names.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3447 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 00:46:07 +00:00
j_mayer
f9fdea6b85
Make PowerPC hypervisor resources able to compile, even if not enabled for now.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3446 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 00:38:37 +00:00
j_mayer
2c1ee068b4
Bugfix: PowerPC 64 slbia never invalidates the first segment entry.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3445 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-26 00:37:04 +00:00
j_mayer
88ad920b8a
Fix PowerPC 64x64 bits multiplication overflow check.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3444 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:36:08 +00:00
j_mayer
e14fe0a921
Use host-utils for Alpha 64x64 bits multiplications.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3443 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:34:44 +00:00
j_mayer
9d901a201b
Use host-utils for PowerPC 64 64x64 bits multiplications.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3442 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:28:36 +00:00
j_mayer
cd346349b4
Add PowerPC power-management state check callback.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3441 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:27:04 +00:00
j_mayer
2f462816ac
Implement power-management for all defined PowerPC CPUs.
...
Fix PowerPC 970MP definition.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3440 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:14:50 +00:00
ths
e494ead521
Restore a more maintainable version of the 64bit multiply code.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3439 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 23:00:03 +00:00
j_mayer
86f1d3ac73
Update PowerPC emulation status file.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3438 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 21:38:16 +00:00
j_mayer
8ca3f6c382
Allow selection of all defined PowerPC 74xx (aka G4) CPUs.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3437 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 21:37:25 +00:00
j_mayer
0411a97258
Gprof prooved the PowerPC emulation spent too much time in MSR load and store
...
routines. Coming back to a raw MSR storage model then speed-up the emulation.
Improve fast MSR updates (wrtee wrteei and mtriee cases).
Share rfi family instructions helpers code to avoid bug in duplicated code.
Allow entering halt mode as the result of a rfi instruction.
Add a new helper_regs.h file to avoid duplication of special registers
manipulation routines (currently XER and MSR).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3436 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 21:35:50 +00:00
ths
7ac256b872
Fix gdb stub for MIPS64.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3435 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-25 21:30:37 +00:00
ths
d8871c5a49
Fix typo, spotted by Edivaldo de Araujo Pereira.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3434 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-24 16:11:42 +00:00
ths
9f77c1cdcf
Remove bogus instruction decode.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3433 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-24 00:52:07 +00:00
ths
6ad3872210
Force proper sign extension for mfc0/mfhc0 on MIPS64.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3432 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-24 00:10:32 +00:00
ths
60445285a8
Fix writable length of the index register.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3431 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-23 23:58:21 +00:00
ths
7d307e9edc
Enforce proper sign extension for lwl/lwr on MIPS64.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3430 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-23 23:23:43 +00:00
ths
67fc07d3fb
Fix overflow when multiplying two large positive numbers.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3429 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-23 23:22:54 +00:00
ths
9278480e8f
Fix CLO calculation for MIPS64. And a small code cleanup.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3428 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-23 23:22:03 +00:00
ths
7385ac0ba2
Use the standard ASE check for MIPS-3D and MT.
...
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3427 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-23 17:04:27 +00:00