summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* tcg/mips: Fix regression caused by typo (copy + paste bug)Stefan Weil2011-07-201-1/+1
| | | | | | | | | | | | cppcheck reports an error: qemu/tcg/mips/tcg-target.c:1487: error: Invalid number of character (() The unpatched code won't compile on mips hosts starting with commit cea5f9a28faa528b6b1b117c9ab2d8828f473fef. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: Stefan Weil <weil@mail.berlios.de> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* ds1225y: convert to qdev device, and use it in MIPS Jazz emulationHervé Poussineau2011-07-203-31/+82
| | | | | Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* ds1225y: use trace frameworkHervé Poussineau2011-07-202-11/+9
| | | | | Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* ds1225y: Remove protection stuff, which doesn't belong to this deviceHervé Poussineau2011-07-202-42/+1
| | | | | Signed-off-by: Hervé Poussineau <hpoussin@reactos.org> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* SPARC64: add missing break on fmovdccTsuneo Saito2011-07-201-0/+1
| | | | | | | "break" is missing on V9 fmovdcc (%icc). Signed-off-by: Tsuneo Saito <tsnsaito@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* SPARC64: fix VIS1 SIMD signed compare instructionsTsuneo Saito2011-07-203-28/+31
| | | | | | | | | The destination registers of SIMD signed compare instructions (fcmp*<16|32>) are not FP registers but general purpose r registers. Comparisons should be freg_rs1 CMP freg_rs2, that were reversed. Signed-off-by: Tsuneo Saito <tsnsaito@gmail.com> Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Merge branch 'for-upstream' of git://git.linaro.org/people/pmaydell/qemu-armBlue Swirl2011-07-208-493/+753
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'for-upstream' of git://git.linaro.org/people/pmaydell/qemu-arm: target-arm: Fix BASEPRI, BASEPRI_MAX, and FAULTMASK access target-arm: Minimal implementation of performance counters Revert "Makefile.target: Allow target helpers to be in any *_helper.c file" Revert "target-arm: Use global env in neon_helper.c helpers" target-arm: Pass fp status pointer explicitly to neon fp helpers target-arm: Make VFP binop helpers take pointer to fpstatus, not CPUState target-arm: Add helper function to generate code to get fpstatus pointer Revert "target-arm: Use global env in iwmmxt_helper.c helpers" Conflicts: Makefile.target
| * target-arm: Fix BASEPRI, BASEPRI_MAX, and FAULTMASK accessSebastian Huber2011-06-221-12/+12
| | | | | | | | | | | | | | | | | | Correct the decode of the register numbers for BASEPRI, BASEPRI_MAX and FAULTMASK, according to "ARMv7-M Architecture Reference Manual" issue D section "B5.2.3 MRS" and "B5.2.3 MSR". Signed-off-by: Sebastian Huber <sebastian.huber@embedded-brains.de> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * target-arm: Minimal implementation of performance countersPeter Maydell2011-06-224-16/+183
| | | | | | | | | | | | | | | | | | Newer Linux kernels assume the existence of the performance counter cp15 registers. Provide a minimal implementation of these registers. We support no events. This should be compliant with the ARM ARM, except that we don't implement the cycle counter. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * Revert "Makefile.target: Allow target helpers to be in any *_helper.c file"Peter Maydell2011-06-221-1/+1
| | | | | | | | | | | | | | | | Reverts commit 348883d4828d7434e1053407818598f7fb15e594, so the global env is no longer available to helper.c files other than op_helper.c. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * Revert "target-arm: Use global env in neon_helper.c helpers"Peter Maydell2011-06-223-191/+227
| | | | | | | | | | | | | | | | | | This effectively reverts commit 2a3f75b42ac255be09ec2939b96c549ec830efd3 so that we return to passing CPUState to helpers as an explicit parameter. (There were a number of conflicts in target-arm/translate.c which had to be resolved by hand so it is not a pure revert.) Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * target-arm: Pass fp status pointer explicitly to neon fp helpersPeter Maydell2011-06-223-74/+113
| | | | | | | | | | | | | | | | | | Make the Neon helpers for various floating point operations take an explicit pointer to the float_status they use, so they don't rely on the global environment pointer any more. This also allows us to drop the mul/sub/add helpers completely and just use the vfp versions. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * target-arm: Make VFP binop helpers take pointer to fpstatus, not CPUStatePeter Maydell2011-06-223-18/+25
| | | | | | | | | | | | | | Make the VFP binop helper functions take a pointer to the fp status, not the entire CPUState. This will allow us to use them for Neon operations too. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * target-arm: Add helper function to generate code to get fpstatus pointerPeter Maydell2011-06-221-24/+16
| | | | | | | | | | | | | | Add and use a helper function which returns a TCGv which is a pointer to the fp_status for either Neon or VFP operations. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
| * Revert "target-arm: Use global env in iwmmxt_helper.c helpers"Peter Maydell2011-06-223-156/+175
| | | | | | | | | | | | | | This reverts commit 947a2fa21b61703802a660a938cabd7b3600ee79, returning the iwmmxt helpers to passing env in as a parameter. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* | Merge remote-tracking branch 'agraf/xen-next' into stagingAnthony Liguori2011-07-1917-137/+221
|\ \
| * | xen_console: fall back to qemu serial deviceAlexander Graf2011-07-171-4/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new xen_console protocol changed the default xen_console output device from whatever Qemu chose to whatever xenstore choses and "pty" as fallback. This is not how Qemu works. It has its own serial redirection semantics. So it xenstore doesn't contain information on what to do, Qemu is the place to ask. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen_console: support the new extended xenstore protocolStefano Stabellini2011-07-175-6/+87
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Since CS 21994 on xen-unstable.hg and CS 466608f3a32e1f9808acdf832a5843af37e5fcec on qemu-xen-unstable.git, few changes have been introduced to the PV console xenstore protocol, as described by the document docs/misc/console.txt under xen-unstable.hg. From the Qemu point of view, very few modifications are needed to correctly support the protocol: read from xenstore the "output" node that tell us what the output of the PV console is going to be. In case the output is a tty, write to xenstore the device name. Changes in v2: - fix error paths: free malloc'ed strings and close the xenstore connection before returning; - remove useless snprintf in xenstore_store_pv_console_info if i == 0. Changes in v3: - replace xs_daemon_open/xs_daemon_close with xs_open/xs_close. Changes in v4: - add a compatibility implementation of xs_open/xs_close. Changes in v5: - fix code style. [agraf] fix build error due to missing stub Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | checkpatch: don't error out on },{ linesAlexander Graf2011-07-171-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When having code like this: static PCIDeviceInfo piix_ide_info[] = { { .qdev.name = "piix3-ide", .qdev.size = sizeof(PCIIDEState), .qdev.no_user = 1, .no_hotplug = 1, .init = pci_piix_ide_initfn, .vendor_id = PCI_VENDOR_ID_INTEL, .device_id = PCI_DEVICE_ID_INTEL_82371SB_1, .class_id = PCI_CLASS_STORAGE_IDE, },{ .qdev.name = "piix4-ide", .qdev.size = sizeof(PCIIDEState), .qdev.no_user = 1, .no_hotplug = 1, .init = pci_piix_ide_initfn, .vendor_id = PCI_VENDOR_ID_INTEL, .device_id = PCI_DEVICE_ID_INTEL_82371AB, .class_id = PCI_CLASS_STORAGE_IDE, },{ /* end of list */ } }; checkpatch currently errors out, claiming that spaces need to follow commas. However, this particular style of defining structs is pretty common in qemu code and very readable. So let's declare it as supported for the above case. Reported-by: Kevin Wolf <kwolf@redhat.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen_disk: treat "aio" as "raw"Stefano Stabellini2011-07-171-0/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes the toolstack uses "aio" without an additional format identifier, in such cases use "raw". Updated in v2: - fix code style. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | qemu_ram_ptr_length: take ram_addr_t as argumentsStefano Stabellini2011-07-172-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | qemu_ram_ptr_length should take ram_addr_t as argument rather than target_phys_addr_t because is doing comparisons with RAMBlock addresses. cpu_physical_memory_map should create a ram_addr_t address to pass to qemu_ram_ptr_length from PhysPageDesc phys_offset. Remove code after abort() in qemu_ram_ptr_length. Changes in v2: - handle 0 size in qemu_ram_ptr_length; - rename addr1 to raddr; - initialize raddr to ULONG_MAX. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen_disk: cope with missing xenstore "params" nodeStefano Stabellini2011-07-171-7/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When disk is a cdrom and the drive is empty the "params" node in xenstore might be missing completely: cope with it instead of segfaulting. Updated in v2: - actually removed the strchr(blkdev->params, ':') that caused the segfault; - free all the allocated strings from xenstore before returning; Updated in v3: - set blkdev fields to NULL after free'ing them. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen: add vkbd support for PV on HVM guestsStefano Stabellini2011-07-172-7/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Register the vkbd backend even when running as device emulator for HVM guests: it is useful because it doesn't need a frequent timer like usb. Check whether the XenInput DisplayState has been set in the initialise state, rather than the input state. In case the DisplayState hasn't been set and there is no vfb for this domain, then set the XenInput DisplayState to the default one. Changed in v2: - use qemu_free instead of free; Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen_console: fix memory leakStefano Stabellini2011-07-171-2/+6
| | | | | | | | | | | | | | | | | | | | | con_init leaks the string "type", fix it. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen: enable console and disk backend in HVM modeStefano Stabellini2011-07-171-0/+8
| | | | | | | | | | | | | | | | | | | | | | | | Initialize the Xen console backend and the Xen disk backend even when running in HVM mode so that PV on HVM drivers can connect to them. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen: Fold CONFIG_XEN_MAPCACHE into CONFIG_XENJan Kiszka2011-07-174-58/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | Xen won't be enabled if there is no backend support available for the host. And that also means the map cache will work. So drop the separate config switch and move the required stubs over to xen-stub.c. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen: Clean up map cache API namingJan Kiszka2011-07-176-44/+50
| | | | | | | | | | | | | | | | | | | | | The map cache is a Xen thing, so its API should make this clear. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | xen: Clean up build systemJan Kiszka2011-07-173-13/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | Introduce CONFIG_XEN_BACKEND so that this new config solely controls the target-independent backend build and CONFIG_XEN can focus on per-target building. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Alexander Graf <agraf@suse.de>
* | | Merge remote-tracking branch 'kraxel/usb.19' into stagingAnthony Liguori2011-07-1913-235/+523
|\ \ \
| * | | usb-ohci: raise interrupt on attachGerd Hoffmann2011-07-081-1/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Got lost in commit 618c169b577db64ac6589ad48825d2e11760d1a6, add it back in. Also fix codestyle while we are at it. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-hub: remove unused descriptor arraysGerd Hoffmann2011-07-081-68/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Somehow they where left over when converting the hub to the new usb descriptor infrastructure ... Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: fixup bluetooth descriptorsGerd Hoffmann2011-07-081-12/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Commit 4696425cd05c7baa0a4b469d43ba4b8488bcfc0f changes some endpoints from isocrounous to interrupt by mistake. Fix it. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb_register_port(): do not set port->opaque and port->index twiceJes Sorensen2011-07-081-2/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Jes Sorensen <Jes.Sorensen@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: update documentationGerd Hoffmann2011-07-082-5/+65
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add a paragraph on companion controller mode and a configuration file which sets it all up for you. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | ehci: add ich9 controller.Gerd Hoffmann2011-07-051-14/+29
| | | | | | | | | | | | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | ehci: fix port count.Gerd Hoffmann2011-07-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | The ICH4 EHCI controller which we emulate has six ports not four. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | uhci: add ich9 controllersGerd Hoffmann2011-07-051-15/+39
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Add ich9 controllers, Factor out properties to a separate struct and reference it to reduce duplication. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | pci: add ich9 usb controller idsGerd Hoffmann2011-07-051-0/+8
| | | | | | | | | | | | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ohci: Add support for being a companion controllerHans de Goede2011-07-051-12/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To use as a companion controller, use pci-ohci as device and set the masterbus and num-ports properties, ie: -device usb-ehci,addr=0b.1,multifunction=on,id=ehci0 -device pci-ohci,addr=0b.0,multifunction=on,masterbus=ehci0.0,num-ports=4 Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-uhci: Add support for being a companion controllerHans de Goede2011-07-051-5/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | To use as a companion controller set the masterbus property. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ehci: Add support for registering companion controllersHans de Goede2011-07-051-30/+144
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ehci: Fix handling of PED and PEDC port status bitsHans de Goede2011-07-051-13/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The PED bit should only be set for highspeed devices and the PEDC bit should not be set on "normal" PED bit changes, only on io errors. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: assert on calling usb_attach(port, NULL) on a port without a devHans de Goede2011-07-051-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | with the "usb-ehci: cleanup port reset handling" patch in place no callers are calling usb_attach(port, NULL) for a port where port->dev is NULL. Doing that makes no sense as that causes the port detach op to get called for a port with nothing attached. Add an assert that port->dev != NULL when dev == NULL, and remove the check for not having a port->dev in the dev == NULL case. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ehci: cleanup port reset handlingHans de Goede2011-07-051-6/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Doing a usb_attach when dev is NULL will just result in the port detach op getting called even though nothing was connected in the first place. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ehci: Connect Status bit is read only, don't allow changing it by the guestHans de Goede2011-07-051-2/+2
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb-ehci: drop unused num-ports state memberHans de Goede2011-07-051-1/+0
| | | | | | | | | | | | | | | | | | | | Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: Replace device_destroy bus op with a child_detach port opHans de Goede2011-07-058-29/+69
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Note this fixes 2 things in one go, first of all the device_destroy bus op should be a device_detach bus op, as pending async packets from the device should be cancelled on detach not on destroy. Secondly having this as a bus op won't work with companion controllers, since then there will be 1 bus driven by the ehci controller and thus 1 set of bus ops, but the device being detached may be downstream of a handed over port. Making the detach of a downstream device a port op allows the ehci controller to forward this to the companion controller port for handed over ports. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: Make port wakeup and complete ops take a USBPort instead of a DeviceHans de Goede2011-07-057-26/+28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This makes them consistent with the attach and detach ops, and in general it makes sense to make portops take a port as argument. This also makes adding support for a companion controller easier / cleaner. [ kraxel: fix usb-musb.c build ] Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: Add a register_companion USB bus op.Hans de Goede2011-07-052-0/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This is a preparation patch for adding support for USB companion controllers. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
| * | | usb: Move (initial) call of usb_port_location to usb_fill_portHans de Goede2011-07-055-4/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Cleanup / preparation patch for companion controller support. Note that as a "side-effect" this patch also fixes the milkymist-softusb controller not having a port_location set for its ports. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
OpenPOWER on IntegriCloud