- 13 10月, 2012 1 次提交
-
-
由 Andreas Färber 提交于
Needed for changing cpu_kick_irq() argument type to SPARCCPU. Signed-off-by: NAndreas Färber <afaerber@suse.de> Signed-off-by: NBlue Swirl <blauwirbel@gmail.com>
-
- 12 10月, 2012 9 次提交
-
-
由 Peter Maydell 提交于
Rename the gic_state struct to match QEMU's coding style conventions for structure names, since the impending KVM-for-ARM patches will create another subclass of it. This patch was created using: sed -i 's/gic_state/GICState/g' hw/arm_gic.c hw/arm_gic_common.c \ hw/arm_gic_internal.h hw/armv7m_nvic.c Acked-by: NAndreas Färber <afaerber@suse.de> Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
There is a gap in the reset region of the address space at offset 0x208. This throws out all these enum values by one when translating them to address offsets. Fixed by putting the corresponding gap in the enum as well. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Reviewed-by: NPeter Maydell <peter.maydell@linaro.org> Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
Signed-off-by: NJean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com> Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter Maydell 提交于
Implement state save/restore for the DS1338. This requires the usual minor adjustment of types in the state struct to get fixed-width ones with vmstate macros. Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter Maydell 提交于
The 'struct tm now' field in the state structure is in fact only ever used as a temporary (the actual RTC state is held in 'offset'). Remove it from the state structure in favour of using local variables to avoid confusion about whether it needs to be saved on migration. Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter Maydell 提交于
The DS1338 datasheet documents that the current time is captured into the secondary registers when the register pointer wraps round to zero as well as at a START condition. Implement this. Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter Maydell 提交于
Correct several deficiencies in the handling of the register pointer: * it should wrap around after 0x3f, not 0xff * guard against the caller handing us an out of range pointer (on h/w this can never happen, because only a 7 bit value is transferred over the I2C bus) * there was confusion over whether nvram[] holds only the 56 bytes of guest-accessible NVRAM, or also the secondary registers which hold the value of the clock captured at the start of a multibyte read. Correct to consistently be the latter, by fixing the array size and the offset used for NVRAM writes. * ds1338_send was attempting to use 'data' as both the data and the register offset simultaneously, which meant that writes to any register were broken; fix to use the register pointer. Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Evgeny Voevodin 提交于
s->cpu_enabled is an array, so s->cpu_enabled ? "En" : "Dis" returns "En" always. We should use s->cpu_enabled[cpu] here. Signed-off-by: NEvgeny Voevodin <e.voevodin@samsung.com> Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Soren Brinkmann 提交于
A missing call to qemu_set_irq() when reading the IRQ register required SW to write to the IRQ register to acknowledge an interrupt. With this patch the behavior is fixed: - Reading the interrupt register clears it and updates the timers interrupt status - Writes to the interrupt register are ignored Signed-off-by: NSoren Brinkmann <soren.brinkmann@xilinx.com> Signed-off-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com> Signed-off-by: NPeter Maydell <peter.maydell@linaro.org>
-
- 11 10月, 2012 3 次提交
-
-
由 Hans de Goede 提交于
According to the spec we must raise an interrupt when one is requested even for non active tds. Linux depends on this, for bulk transfers it runs an inactivity timer to work around a bug in early uhci revisions, when we take longer then 200 ms to process a packet, this timer goes of, and as part of the handling Linux then unlinks the qh, and relinks it after the frindex has increased by atleast 1, the problem is Linux only checks for the frindex increases on an interrupt, and we don't send that, causing the qh to go inactive for more then 32 frames, at which point we consider the packet cancelled. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Hans de Goede 提交于
Instead simple disconnect the device like host redirection does on migration. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
-
由 Hans de Goede 提交于
As we need to create the parser at more places. Signed-off-by: NHans de Goede <hdegoede@redhat.com> Signed-off-by: NGerd Hoffmann <kraxel@redhat.com>
-
- 10 10月, 2012 12 次提交
-
-
由 Peter Crosthwaite 提交于
Added helper function to automatically connect SPI slaves based on the QOM child nodes of a device. A SSI master device can call this routine to automatically hook-up all child nodes to its SPI bus. Signed-off-by: NPeter Crosthwaite <peter.crosthwaite@xilinx.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Added the two SPI controllers to the zynq machine model. Attached two SPI flash devices to each controller. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Added device model for the Xilinx Zynq SPI controller (SPIPS). Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Added SPI controller to the reference design, with two n25q128 spi-flashes connected. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Device model for xilinx XPS SPI controller (v2.0) Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
-
由 Peter A. G. Crosthwaite 提交于
Added device model for m25p80 style SPI flash family. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
-
由 Peter A. G. Crosthwaite 提交于
Added a FIFO API that can be used to create and operate byte FIFOs. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
-
由 Peter A. G. Crosthwaite 提交于
Removed the explicit SSI mux and wired the CS line directly up to the SSI devices. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com>
-
由 Peter A. G. Crosthwaite 提交于
Allow multiple qdev_init_gpio_in() calls for the one device. The first call will define GPIOs 0-N-1, the next GPIOs N- ... . Allows different GPIOs to be handled with different handlers. Needed when two levels of the QOM class heirachy both define GPIO functionality, as a single GPIO handler with an index selecter is not possible. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Reviewed-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Slave creation function that can be used to create an SSI slave without qdev_init() being called. This give machine models a chance to set properties. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Added default CS behaviour for SSI slaves. SSI devices can set a property to enable CS behaviour which will create a GPIO on the device which is the CS. Tristating of the bus on SSI transfers is implemented. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
由 Peter A. G. Crosthwaite 提交于
Removed assertion that only one device is attached to the SSI bus. When multiple devices are attached, all slaves have their transfer function called for transfers. Each device is responsible for knowing whether or not its CS is active, and if not returning 0. The returned data is the logical or of all responses from the (mulitple) devices. Signed-off-by: NPeter A. G. Crosthwaite <peter.crosthwaite@petalogix.com> Acked-by: NPeter Maydell <peter.maydell@linaro.org>
-
- 08 10月, 2012 15 次提交
-
-
由 Jan Kiszka 提交于
DO_UPCAST is supposed to translate from the first member of a struct to that struct, not from arbitrary ones. And it (usually) breaks the build when neglecting this rule. Use container_of to fix the build breakage and likely also the runtime behavior. Signed-off-by: NJan Kiszka <jan.kiszka@siemens.com> aw: runtime behavior is actually the same, but clearly misuse of DO_UPCAST Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
Blue Swirl reports that Clang doesn't like the structure we define to avoid dynamic allocation for a number of calls to VFIO_DEVICE_SET_IRQS. Adding an element after a variable sized type is a GNU extension. Switch back to dynamic allocation, which really isn't a problem since this is only done on interrupt setup changes. Cc: Blue Swirl <blauwirbel@gmail.com> Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
Missing some unwind code. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
Take what we've learned from pci-assign and apply it to vfio-pci. On reset, disable previous interrupt config, perform a device reset if available, re-enable INTx, and disable memory regions on the device to prevent continuing DMA. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
This was a misinterpretation of the spec, hardware doesn't get to specify how many were actually enabled through this field. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
We don't seem to run into any sign extension problems, but unsigned looks more correct. Signed-off-by: NAlex williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
Let the init function fail, just don't warn for -ENOTSUP. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
It's only ~100 lines and nobody else should be using this. Suggested by Michael Tsirkin. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
FreeBSD doesn't like these spurious MSIs, remove them as they're mostly paranoia anyway. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
We try to do lazy initialization of MSIX since we don't actually need to setup anything until MSIX vectors start getting used. This leads to problems if MSIX is enabled, but never used (we can end up trying to re-enable INTx while it's still enabled). We also run into problems trying to expand our reset function to tear down interrupts as we can then get vector release notifications after we've released data structures. By making explicit initialization and teardown we can avoid both of these problems and behave more similar to bare metal. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
Occasionally we get regions added that overlap with existing mappings. These always seems to be in the VGA ROM range. VFIO returns EBUSY for these mapping attempts. We can try a little harder and assume that the latest mapping is correct by removing any overlapping ranges and retrying the original request. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
This cleans up the next patch that calls unmap from map. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Alex Williamson 提交于
We can't afford the overhead of switching out and back into mmap mode around each interrupt, but we can do it lazily via a timer. On INTx interrupt, disable the mmap'd memory regions and set a timer. On every interrupt, push the timer out. If the timer expires and the interrupt is no longer pending, switch back to mmap mode. This has the benefit that things like graphics cards, which rarely or never, fire an interrupt don't need manual user intervention to add the x-intx=off parameter. They'll just remain in mmap mode until they trigger an interrupt, and if they don't continue to regularly fire interrupts, they'll switch back. The default timeout is tuned for network cards so that a ping is just enough to keep them in non-mmap mode, where they have much better latency. It is tunable with an experimental option, x-intx-mmap-timeout-ms. A value of 0 keeps the device in non-mmap mode after the first interrupt. It's possible we could look at the class code of devices and come up with reasonable per-class defaults based on expected interrupt frequency and latency. None of this is used for MSI interrupts and also won't be used if we can bypass through KVM. Signed-off-by: NAlex Williamson <alex.williamson@redhat.com>
-
由 Amos Kong 提交于
nc.link_down could not be migrated, this patch updates link_down in virtio_post_load() to keep it coincident with real link status. Signed-off-by: NAmos Kong <akong@redhat.com> Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com>
-
由 Amos Kong 提交于
This patch introduced e1000_post_load(), it will be called in the end of migration. nc.link_down could not be migrated, this patch updates link_down in e1000_post_load() to keep it coincident with real link status. Signed-off-by: NAmos Kong <akong@redhat.com> Signed-off-by: NStefan Hajnoczi <stefanha@gmail.com>
-