summaryrefslogtreecommitdiffstats
path: root/hw
Commit message (Collapse)AuthorAgeFilesLines
* hw/sd.c: Fix erase for high capacity cardsIgor Mitsyanko2012-10-302-4/+14
| | | | | | | | | | Standard capacity cards SDSC use byte unit address while SDHC and SDXC cards use block unit address (512 bytes) when setting ERASE_START and ERASE_END with CMD32 and CMD33, we have to account for this. Signed-off-by: Igor Mitsyanko <i.mitsyanko@samsung.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* pflash_cfi01: Fix debug mode printferyPeter Crosthwaite2012-10-301-1/+2
| | | | | | | | This DPRINTF was throwing a warning due to a missing cast. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* pflash_cfi0x: QOMifiedPeter Crosthwaite2012-10-302-87/+214
| | | | | | | | | | | QOMified the pflash_cfi0x so machine models can connect them up in custom ways. Kept the pflash_cfi0x_register functions as is. They can still be used to create a flash straight onto system memory. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* pflash_cfi01: remove unused total_len fieldPeter Crosthwaite2012-10-301-2/+0
| | | | | | | | This field is completely unused. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* pflash_cfi0x: remove unused base fieldPeter Crosthwaite2012-10-302-5/+1
| | | | | | | | | This field is completely unused. The base address should also be abstracted away from the device anyway. Removed. Signed-off-by: Peter Crosthwaite <peter.crosthwaite@xilinx.com> Reviewed-by: Peter Maydell <peter.maydell@linaro.org> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/versatile_i2c: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-2/+4
| | | | | | Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/arm_l2x0: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-2/+4
| | | | | | Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/arm_sysctl: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-2/+6
| | | | | | Use LOG_GUEST_ERROR to report bad guest accesses. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/armv7m_nvic: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell2012-10-301-12/+19
| | | | | | | Use LOG_GUEST_ERROR and LOG_UNIMP rather than hw_error() where appropriate. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/arm_timer: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell2012-10-301-6/+13
| | | | | | | | Use LOG_GUEST_ERROR to report guest accesses to bad register offsets, and LOG_UNIMP for access to the unimplemented test registers. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/arm_gic: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-4/+8
| | | | | | Use LOG_GUEST_ERROR to report guest accesses to bad offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/arm11mpcore: Use LOG_GUEST_ERROR rather than hw_error()Peter Maydell2012-10-301-2/+5
| | | | | | Use LOG_GUEST_ERROR to report guest accesses to bad offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/pl190: Use LOG_UNIMP rather than hw_error()Peter Maydell2012-10-301-1/+1
| | | | | | Use LOG_UNIMP to report attempts to use the unimplemented test mode. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/pl110: Use LOG_GUEST_ERROR rather than hw_error()Peter Maydell2012-10-301-2/+4
| | | | | | | Use LOG_GUEST_ERROR to report guest accesses to invalid register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/pl080: Use LOG_GUEST_ERROR and LOG_UNIMPPeter Maydell2012-10-301-4/+7
| | | | | | Use LOG_GUEST_ERROR and LOG_UNIMP in preference to hw_error(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/pl061: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-2/+4
| | | | | | Use LOG_GUEST_ERROR to report guest attempts to access bad register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/pl050: Use LOG_GUEST_ERRORPeter Maydell2012-10-301-2/+4
| | | | | | | Use LOG_GUEST_ERROR for reporting guest attempts to access invalid register offsets. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/exynos4_boards: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-21/+11
| | | | | | | Don't explode QEMUMachineInitArgs before passing it to exynos4_boards_init_common(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/mainstone: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-14/+7
| | | | | | Don't explode QEMUMachineInitArgs before passing it to mainstone_init(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/nseries: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-28/+11
| | | | | | Don't explode QEMUMachineInitArgs before passing it to n8x0_init(). Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/omap_sx1: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-27/+9
| | | | | | | Don't explode QEMUMachineInitArgs before passing it to the omap_sx1 common init function. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/spitz: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-35/+10
| | | | | | Don't explode QEMUMachineInitArgs before calling common init function. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/versatilepb: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-33/+11
| | | | | | | Don't explode QEMUMachineInitArgs before passing it to the common versatile init function. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/realview.c: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-49/+19
| | | | | | | | Don't explode QEMUMachineInitArgs in every realview init function; just pass it to the common realview_init() code instead. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/vexpress.c: Don't prematurely explode QEMUMachineInitArgsPeter Maydell2012-10-301-29/+9
| | | | | | | Don't explode QEMUMachineInitArgs before passing it to the vexpress common init function. Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* hw/armv7m_nvic: Implement byte/halfword access for NVIC SCB_SHPRx registersAndre Beckus2012-10-301-30/+28
| | | | | | | | | | | | | | Implement byte/halfword read and write for the NVIC SCB_SHPRx (System Handler Priority Registers). Do this by removing SHPR word access from nvic_readl/writel and adding common code to hande all access sizes in nvic_sysreg_read/write. Because the "nvic_state *s" variable now needs to be declared in nvic_sysreg_read/write, the "void *opaque" parameter of nvic_readl/writel is changed to "nvic_state *s". Signed-off-by: Andre Beckus <mikemail98-qemu@yahoo.com> Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
* Merge branch 's390-for-upstream' of git://repo.or.cz/qemu/agrafAurelien Jarno2012-10-308-2/+1211
|\ | | | | | | | | | | | | | | | | | | | | * 's390-for-upstream' of git://repo.or.cz/qemu/agraf: s390: sclp ascii console support s390: sclp signal quiesce support s390: sclp event support s390: sclp base support s390: use sync regs for register transfer s390/kvm_stat: correct sys_perf_event_open syscall number s390x: fix -initrd in virtio machine
| * s390: sclp ascii console supportHeinz Graalfs2012-10-292-1/+307
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This code adds console support by implementing SCLP's ASCII Console Data event. This is the same console as LPARs ASCII console or z/VMs sysascii. The console can be specified manually with something like -chardev stdio,id=charconsole0 -device sclpconsole,chardev=charconsole0,id=console0 Newer kernels will autodetect that console and prefer that over virtio console. When data is received from the character layer it creates a service interrupt to trigger a Read Event Data command from the guest that will pick up the received character byte-stream. When characters are echo'ed by the linux guest a Write Event Data occurs which is forwarded by the Event Facility to the console that supports a corresponding mask value. Console resizing is not supported. The character layer byte-stream is buffered using a fixed size iov buffer. Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * s390: sclp signal quiesce supportHeinz Graalfs2012-10-293-0/+131
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This implements the sclp signal quiesce event via the SCLP Event Facility. This allows to gracefully shutdown a guest by using system_powerdown notifiers. It creates a service interrupt that will trigger a Read Event Data command from the guest. This code will then add an event that is interpreted by linux guests as ctrl-alt-del. Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * s390: sclp event supportHeinz Graalfs2012-10-296-2/+579
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Several SCLP features are considered to be events. Those events don't provide SCLP commands on their own, instead they are all based on Read Event Data, Write Event Data, Write Event Mask and the service interrupt. Follow-on patches will provide SCLP's Signal Quiesce (via system_powerdown) and the ASCII console. Further down the road the sclp line mode console and configuration change events (e.g. cpu hotplug) can be implemented. Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * s390: sclp base supportHeinz Graalfs2012-10-293-0/+195
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This adds a more generic infrastructure for handling Service-Call requests on s390. Currently we only support a small subset of Read SCP Info directly in target-s390x. This patch provides the base infrastructure for supporting more commands and moves Read SCP Info. In the future we could add additional commands for hotplug, call home and event handling. Signed-off-by: Heinz Graalfs <graalfs@linux.vnet.ibm.com> Signed-off-by: Christian Borntraeger <borntraeger@de.ibm.com> Signed-off-by: Jens Freimann <jfrei@linux.vnet.ibm.com> Signed-off-by: Alexander Graf <agraf@suse.de>
| * s390x: fix -initrd in virtio machineAlexander Graf2012-10-291-2/+2
| | | | | | | | | | | | | | | | | | | | When using -initrd in the virtio machine, we need to indicate the initrd start and size inside the kernel image. These parameters need to be stored in native endianness. Signed-off-by: Alexander Graf <agraf@suse.de> Acked-by: Richard Henderson <rth@twiddle.net> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com>
* | Merge remote-tracking branch 'mst/tags/for_anthony' into stagingAnthony Liguori2012-10-2911-133/+212
|\ \ | |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | virtio,pci infrastructure This includes infrastructure patches that don't do much by themselves but should help vfio and q35 make progress. Also included is rework of virtio-net to use iovec APIs for vector access - helpful to make it more secure and in preparation for a new feature that will allow arbitrary s/g layout for guests. Also included is a pci bridge bugfix by Avi. Signed-off-by: Michael S. Tsirkin <mst@redhat.com> * mst/tags/for_anthony: (25 commits) pci: avoid destroying bridge address space windows in a transaction virtio-net: enable mrg buf header in tap on linux virtio-net: test peer header support at init time virtio-net: minor code simplification virtio-net: simplify rx code virtio-net: switch tx to safe iov functions virtio-net: first s/g is always at start of buf virtio-net: refactor receive_hdr virtio-net: use safe iov operations for rx virtio-net: avoid sg copy iov: add iov_cpy virtio-net: track host/guest header length pcie: Convert PCIExpressHost to use the QOM. pcie: pass pcie window size to pcie_host_mmcfg_update() pci: Add class 0xc05 as 'SMBus' pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt pin swizzle pci_ids: add intel 82801BA pci-to-pci bridge id pci: pci capability must be in PCI space pci: make each capability DWORD aligned qemu: enable PV EOI for qemu 1.3 ... Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
| * pci: avoid destroying bridge address space windows in a transactionAvi Kivity2012-10-292-30/+44
| | | | | | | | | | | | | | | | | | | | | | Calling memory_region_destroy() in a transaction is illegal (and aborts), as until the transaction is committed, the region remains live. Fix by moving destruction until after the transaction commits. This requires having an extra set of regions, so the new and old regions can coexist. Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: enable mrg buf header in tap on linuxMichael S. Tsirkin2012-10-292-21/+18
| | | | | | | | | | | | | | | | | | | | | | | | Modern linux supports arbitrary header size, which makes it possible to pass mrg buf header to tap directly without iovec mangling. Use this capability when it is there. This removes the need to deal with it in vhost-net as we do now. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: test peer header support at init timeMichael S. Tsirkin2012-10-291-9/+14
| | | | | | | | | | | | | | | | | | There's no reason to query header support at random times: at load or feature query. Driver also might not query functions. Cleaner to do it at device init. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: minor code simplificationMichael S. Tsirkin2012-10-291-3/+1
| | | | | | | | | | | | | | During packet filtering, we can now use host hdr len to offset incoming buffer unconditionally. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: simplify rx codeMichael S. Tsirkin2012-10-291-7/+2
| | | | | | | | | | | | | | | | Remove code duplication using guest header length that we track. Drop specific layout requirement for rx buffers: things work using generic iovec functions in any case. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: switch tx to safe iov functionsMichael S. Tsirkin2012-10-291-12/+19
| | | | | | | | | | | | | | Avoid mangling iovec manually: use safe iov_* functions. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: first s/g is always at start of bufMichael S. Tsirkin2012-10-291-2/+3
| | | | | | | | | | | | We know offset is 0, assert that. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: refactor receive_hdrMichael S. Tsirkin2012-10-291-11/+7
| | | | | | | | | | | | | | | | Now that we know host hdr length, we don't need to duplicate the logic in receive_hdr: caller can figure out the offset itself. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: use safe iov operations for rxMichael S. Tsirkin2012-10-291-11/+14
| | | | | | | | | | | | | | | | | | Avoid magling iov manually: use safe iov operations for processing packets incoming to guest. This also removes the requirement for virtio header to fit the first s/g entry exactly. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: avoid sg copyMichael S. Tsirkin2012-10-291-25/+23
| | | | | | | | | | | | | | | | | | | | Avoid tweaking iovec during receive. This removes the need to copy the vector. Note: we currently have an evil cast in work_around_broken_dhclient and unfortunately this patch does not fix it - just pushes the evil cast to another place. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * virtio-net: track host/guest header lengthMichael S. Tsirkin2012-10-291-12/+17
| | | | | | | | | | | | | | | | Tracking these in device state instead of re-calculating on each packet. No functional changes. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pcie: Convert PCIExpressHost to use the QOM.Jason Baron2012-10-292-0/+18
| | | | | | | | | | | | | | | | | | Let's use PCIExpressHost with QOM. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Acked-by: Andreas Färber <afaerber@suse.de> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pcie: pass pcie window size to pcie_host_mmcfg_update()Jason Baron2012-10-292-12/+16
| | | | | | | | | | | | | | | | This allows q35 to pass/set the size of the pcie window in its update routine. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: Add class 0xc05 as 'SMBus'Jan Kiszka2012-10-292-0/+2
| | | | | | | | | | | | | | | | [jbaron@redhat.com: add PCI_CLASS_SERIAL_SMBUS definition] Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: introduce pci_swizzle_map_irq_fn() for standardized interrupt pin swizzleIsaku Yamahata2012-10-292-0/+20
| | | | | | | | | | | | | | | | | | | | | | | | Introduce pci_swizzle_map_irq_fn() for interrupt pin swizzle which is standardized. PCI bridge swizzle is common logic, by introducing this function duplicated swizzle logic will be avoided later. [jbaron@redhat.com: drop opaque argument] Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci_ids: add intel 82801BA pci-to-pci bridge idIsaku Yamahata2012-10-291-0/+1
| | | | | | | | | | | | | | | | | | Adds pci id constants which will be used by q35. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: pci capability must be in PCI spaceIsaku Yamahata2012-10-291-3/+3
| | | | | | | | | | | | | | | | | | | | pci capability must be in PCI space. It can't lay in PCIe extended config space. Reviewed-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp> Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
OpenPOWER on IntegriCloud