Commit Graph

871 Commits

Author SHA1 Message Date
balrog
d8f699cb32 Zeroing ITR shouldn't ack irq zero.
Fix PWT & PWL clocks, fix user refcounting for clocks, add 'hsab_ck' and 'usb_w2fc_ck'.
Fix TCMI register addresses.
Implement OMAP McBSP controller and connection to I2S-compatible CODECs.
Add audio support for TSC2102 as an I2S CODEC.
Connect TSC2102 I2S interface to CPU's McBSP1 interface in the Palm Tungsten|E.
Correct '>' instead of '>>' typos.
Implement GPIO PIN_CONTROL register (not in OMAP310 TRM, from OMAP1510).


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3534 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 22:53:50 +00:00
blueswir1
bfa30a3896 Change sysctrl register to 32 bits (original patch by Robert Reif)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3533 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 17:27:07 +00:00
j_mayer
d6c1a327a9 Fix memory corruption: bdrv_read/write API has been changed to take
nb_sectors instead of len in bytes but the fdc driver has never been fixed.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3532 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 17:17:08 +00:00
blueswir1
a06e5a3c64 Fix Solaris breakage
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3531 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 16:58:07 +00:00
balrog
cf965d2406 Add register mappings in DSP space (must be accessible for MPU too).
Don't set microwire CSR-busy bit too early.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3530 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 12:19:22 +00:00
blueswir1
51a6527174 Constification
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3529 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 12:00:17 +00:00
blueswir1
741402f933 Remove target dependent code
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3528 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 11:59:15 +00:00
balrog
b854bc196f Make accesses with wrong width also work as apparently real hardware allows them when the fault is disabled.
Fix DMA register writes if target_phys_addr_t is 64-bit.
Make more functions static.
A timer hack to make PalmOS run in finite time (uses very short timer periods, much shorter than clocksource tick).
Re-calculate internal clock rates on start-up.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3527 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 11:42:11 +00:00
j_mayer
e616a7e821 Fix grackle (in fact MPC106) PCI host bridge header
to avoid confusing firmwares and OSes.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3526 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 08:49:01 +00:00
j_mayer
74e9115560 Fix PowerMac NVRAM device.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3521 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-04 01:16:04 +00:00
balrog
0264592627 Split I^2C controller out of hw/omap.c.
Insert a list of missing memory mappings from OMAP310 datasheet.
Add missing "rtc" field for RTC.
Correct PWL and PWT register read/write handler pointers.
Add a Changelog entry about OMAP emulation.
Add a qemu-doc snippet about Palm T|E platform.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3516 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 12:50:46 +00:00
balrog
5c1c390fea Implement OMAP on-chip RTC (Linux guest date/time now matches with host).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3515 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 12:44:02 +00:00
balrog
4a2c8ac2bc Initial OMAP I^2C controller implementation (communication not tested).
Correct an i2c_start_transfer comment.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3514 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 00:51:03 +00:00
balrog
f34c417ba6 Add OMAP Pulse-width Tone module.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3513 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 00:48:26 +00:00
balrog
66450b1596 Implement OMAP PWL (backlight) module.
Fix GPIO clock name and output level change notifications.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3512 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 00:46:16 +00:00
balrog
7fc42b4bbd The PINT/DAV pin is active low in the chip spec, not inverted on the board.
Make changes on known GPIO lines be verbose, initialise GPIO levels.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3511 c046a42c-6fe2-441c-8c8c-71466251a162
2007-11-03 00:41:31 +00:00
ths
a79ee211ce Add copyright and license header.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3500 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-31 17:14:08 +00:00
balrog
6ac0e82da1 Set boot sequence from command line (Dan Kenigsberg).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3497 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-31 01:54:04 +00:00
balrog
7bfe577702 OHCI USB isochronous transfers support (Arnon Gilboa).
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3493 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-31 00:34:21 +00:00
balrog
b50a6563d8 Add a qemu_irq_invert() shortcut for inverting a signal.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3485 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:59:29 +00:00
balrog
3efda49d15 Add a TI TSC2102 chip (touchscreen/ADC/audio-CODEC controller).
Fix GPIO memory mapping address and register width.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3484 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:34:01 +00:00
j_mayer
8c9d7f83bf Fix PreP PCI IRQ mapping.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3483 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:24:59 +00:00
j_mayer
ef397e88e9 Temporary hack to avoid Qemu crash at PowerPC reset time.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3482 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:22:58 +00:00
j_mayer
c4781a51a5 Implement PreP reset port.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3481 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:21:12 +00:00
j_mayer
4c823cff9e PowerPC 601 / 620 / 970 need a 1MB firmware.
This option is not allowed for PowerMac, as it would overlap with NVRAM.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3480 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 10:19:50 +00:00
balrog
d951f6ff3f Implement OMAP MicroWire controller.
Fix GPIO interrupt number.
Reorder a couple of variables.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3477 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-29 01:50:05 +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
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
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
fce62c4eb3 Bugfix: now PCI NICs really work on PowerPC PreP platform.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3424 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-21 15:53:01 +00:00
j_mayer
bd3e2c4e69 Allow use of PCI NICs on PowerPC PreP platform.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3423 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-21 12:29:36 +00:00
ths
a47b8d38b7 "QEMU keyboard issue with Gujin-2.2", by Etienne Lorrain.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3421 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-20 20:48:09 +00:00
ths
3f6ffb6ac9 Enable ACPI interrupts, by Igor Lvovsky.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3419 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-20 20:36:52 +00:00
ths
1931e26054 Check the Galilleo config register instead of hardcoding the endianness.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3417 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-20 19:47:14 +00:00
j_mayer
5a9b7d36a0 Avoid PreP target kernel freeze waiting for IRQs.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3414 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-20 09:13:55 +00:00
ths
b533415989 Only map BIOS space when it was actually loaded.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3408 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-18 15:05:11 +00:00
ths
f0fc6f8fbc Second half of mipssim support, plus documentation improvements.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3401 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-17 13:39:42 +00:00
blueswir1
952a328ff5 SuperSparc MXCC support (Robert Reif)
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3397 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-14 16:29:21 +00:00
j_mayer
dbdd25065e Implement time-base start/stop helpers.
Implement PowerPC 6xx time-base enable input pin.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3394 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-14 09:35:30 +00:00
j_mayer
a01d8cadad Fix memory corruption reported by Julian Seward
(still more bugs to fix in PreP emulation).


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3390 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-14 08:52:44 +00:00
j_mayer
e63ecc6f68 Do not allow PowerPC CPU restart after entering checkstop mode.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3388 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-14 08:48:23 +00:00
j_mayer
6ebbf39000 Replace is_user variable with mmu_idx in softmmu core,
allowing support of more than 2 mmu access modes.
Add backward compatibility is_user variable in targets code when needed.
Implement per target cpu_mmu_index function, avoiding duplicated code
  and #ifdef TARGET_xxx in softmmu core functions.
Implement per target mmu modes definitions. As an example, add PowerPC
  hypervisor mode definition and Alpha executive and kernel modes definitions.
Optimize PowerPC case, precomputing mmu_idx when MSR register changes
  and using the same definition in code translation code.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3384 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-14 07:07:08 +00:00
ths
ea6fd42fa2 Static-ify function.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3381 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-13 14:00:23 +00:00
ths
bf367b5409 Match values with the ones documented in the PIIX4 datasheet.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3377 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-09 11:41:47 +00:00
ths
6dab28d5b5 Fix vmmouse for 64bit guest, by Dan Kenigsberg.
git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3374 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-09 03:19:01 +00:00
ths
0e21e12bb3 Don't route PIC interrupts through the local APIC if the local APIC
config says so. By Ari Kivity.


git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@3371 c046a42c-6fe2-441c-8c8c-71466251a162
2007-10-09 03:08:56 +00:00