summaryrefslogtreecommitdiffstats
path: root/hw
Commit message (Collapse)AuthorAgeFilesLines
* qapi: move include files to include/qobject/Paolo Bonzini2012-12-1910-12/+12
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* janitor: add guards to headersPaolo Bonzini2012-12-1927-0/+127
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* ui: move files to ui/ and include/ui/Paolo Bonzini2012-12-1953-127/+70
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* net: reorganize headersPaolo Bonzini2012-12-1972-98/+71
| | | | | | | | | Move public headers to include/net, and leave private headers in net/. Put the virtio headers in include/net/tap.h, removing the multiple copies that existed. Leave include/net/tap.h as the interface for NICs, and net/tap_int.h as the interface for OS-specific parts of the tap backend. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* net: do not include net.h everywherePaolo Bonzini2012-12-1913-12/+1
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* net: move Bluetooth stuff out of net.hPaolo Bonzini2012-12-194-4/+4
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* janitor: do not include qemu-char everywherePaolo Bonzini2012-12-199-7/+3
| | | | | | | Touching char/char.h basically causes the whole of QEMU to be rebuilt. Avoid this, it is usually unnecessary. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* janitor: do not rely on indirect inclusions of or from qemu-char.hPaolo Bonzini2012-12-1913-0/+14
| | | | | | | | | Various header files rely on qemu-char.h including qemu-config.h or main-loop.h, but they really do not need qemu-char.h at all (particularly interesting is the case of the block layer!). Clean this up, and also add missing inclusions of qemu-char.h itself. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* build: kill libdis, move disassemblers to disas/Paolo Bonzini2012-12-191-1/+1
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* build: move rules from Makefile to */Makefile.objsPaolo Bonzini2012-12-191-0/+2
| | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
* Merge commit '1dd3a74d2ee2d873cde0b390b536e45420b3fe05' into HEADPaolo Bonzini2012-12-17128-273/+260
|\ | | | | | | Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
| * pci_bus.h: tweak include guardsMichael S. Tsirkin2012-12-171-3/+3
| | | | | | | | | | | | | | Now that header has been renamed, tweak include guards to match. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci_bus: update commentMichael S. Tsirkin2012-12-171-7/+3
| | | | | | | | | | | | | | Don't ask everyone to desist from including this header, simply recommend using accessors. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: rename pci_internals.h pci_bus.hMichael S. Tsirkin2012-12-1713-12/+12
| | | | | | | | | | | | | | | | There are lots of external users of pci_internals.h, apparently making it an internal interface only didn't work out. Let's stop pretending it's an internal header. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * Revert "pci: prepare makefiles for pci code reorganization"Michael S. Tsirkin2012-12-171-1/+0
| | | | | | | | | | | | | | | | | | This reverts commit 475d67c3bcd6ba9fef917b6e59d96ae69eb1a9b4. Now that all users have been updated, we don't need the makefile hack or the softlink anymore. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: fix path for local includesMichael S. Tsirkin2012-12-1722-62/+62
| | | | | | | | | | | | | | | | | | Include dependencies from pci core using the correct path. This is required now that it's in the separate directory. Need to check whether they can be minimized, for now, keep the code as is. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: update all users to look in pci/Michael S. Tsirkin2012-12-1796-153/+153
| | | | | | | | | | | | update all users so we can remove the makefile hack. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: move pci core code to hw/pciMichael S. Tsirkin2012-12-1732-11/+11
| | | | | | | | | | | | | | Move files and modify makefiles to pick them at the new location. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * pci: prepare makefiles for pci code reorganizationMichael S. Tsirkin2012-12-121-0/+1
| | | | | | | | | | | | | | | | | | To make it easier to move code around without breaking build at intermedite steps, tweak makefiles to look in pci/ and hw/ for include files, automatically. This will be reverted at the end of the reorganization. Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
| * Fixup q35/ich9 LicensesJason Baron2012-12-123-36/+23
| | | | | | | | | | | | | | | | Cleanup the q35/ich9 license headers. Signed-off-by: Jason Baron <jbaron@redhat.com> Signed-off-by: Michael S. Tsirkin <mst@redhat.com> Acked-by: Isaku Yamahata <yamahata@valinux.co.jp>
* | exec: refactor cpu_restore_stateBlue Swirl2012-12-161-3/+1
| | | | | | | | | | | | | | | | Refactor common code around calls to cpu_restore_state(). tb_find_pc() has now no external users, make it static. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* | Merge branch 'ppc-for-upstream' of git://repo.or.cz/qemu/agrafBlue Swirl2012-12-1519-1005/+1023
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 'ppc-for-upstream' of git://repo.or.cz/qemu/agraf: (40 commits) pseries: Increase default NVRAM size target-ppc: Don't use hwaddr to represent hardware state PPC: e500: pci: Export slot2irq calculation PPC: E500plat: Make a lot of PCI slots available PPC: E500: Move PCI slot information into params PPC: E500: Generate dt pci irq map dynamically PPC: E500: PCI: Make IRQ calculation more generic PPC: E500: PCI: Make first slot qdev settable openpic: Accelerate pending irq search openpic: fix minor coding style issues MSI-X: Fix endianness PPC: e500: Declare pci bridge as bridge PPC: e500: Add MSI support openpic: add Shared MSI support openpic: make brr1 model specific openpic: convert to qdev openpic: remove irq_out openpic: rename openpic_t to OpenPICState openpic: convert simple reg operations to builtin bitops openpic: remove unused type variable ...
| * | pseries: Increase default NVRAM sizeDavid Gibson2012-12-141-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If no image file for NVRAM is specified, the pseries machine currently creates a 16K non-persistent NVRAM by default. This basically works, but is not large enough for current firmware and guest kernels to create all the NVRAM partitions they would like to. Increasing the default size to 64K addresses this and stops the guest generating error messages. Signed-off-by: David Gibson <david@gibson.dropbear.id.au> Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: e500: pci: Export slot2irq calculationAlexander Graf2012-12-143-2/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We need the calculation method to get from a PCI slot ID to its respective interrupt line twice. Once in the internal map function and once when assembling the device tree. So let's extract the calculation to a separate function that can be called by both users. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: E500plat: Make a lot of PCI slots availableAlexander Graf2012-12-141-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The ppce500 machine doesn't have to stick to hardware limitations, as it's defined as being fully device tree based. Thus we can change the initial PCI slot ID to 0x1 which gives us a whopping 31 PCI devices we can support with this machine now! Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: E500: Move PCI slot information into paramsAlexander Graf2012-12-144-1/+9
| | | | | | | | | | | | | | | | | | | | | | | | We have a params struct that allows us to expose differences between e500 machine models. Include PCI slot information there, so we can have different machines with different PCI slot topology. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: E500: Generate dt pci irq map dynamicallyAlexander Graf2012-12-141-20/+31
| | | | | | | | | | | | | | | | | | | | | | | | Today we're hardcoding the PCI interrupt map in the e500 machine file. Instead, let's write it dynamically so that different machine types can have different slot properties. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: E500: PCI: Make IRQ calculation more genericAlexander Graf2012-12-141-10/+3
| | | | | | | | | | | | | | | | | | | | | | | | The IRQ line calculation is more or less hardcoded today. Instead, let's write it as an algorithmic function that theoretically allows an arbitrary number of PCI slots. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: E500: PCI: Make first slot qdev settableAlexander Graf2012-12-141-1/+8
| | | | | | | | | | | | | | | | | | | | | | | | Today the first slot id in our e500 pci implementation is hardcoded to 0x11. Keep it there as default, but allow users to change the default to a different id. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: Accelerate pending irq searchAlexander Graf2012-12-141-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When we're done with one interrupt, we need to search for the next pending interrupt in the queue. This search has grown quite big now that we have more than 256 possible irq lines. So let's memorize how many interrupts we have pending in our bitmaps, so that we can always bail out in the usual case - the one where we're all done. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: fix minor coding style issuesAlexander Graf2012-12-141-6/+6
| | | | | | | | | | | | | | | | | | | | | This patch removes all remaining occurences of spaces before function parameter indicating parenthesis. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | MSI-X: Fix endiannessAlexander Graf2012-12-141-4/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The MSI-X vector tables are usually stored in little endian in memory, so let's mark the accessors as such. This fixes MSI-X on e500 for me. Signed-off-by: Alexander Graf <agraf@suse.de> Acked-by: Michael S. Tsirkin <mst@redhat.com>
| * | PPC: e500: Declare pci bridge as bridgeAlexander Graf2012-12-141-0/+6
| | | | | | | | | | | | | | | | | | | | | The new PCI host bridge device needs to identify itself as PCI host bridge. Declare it as such. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | PPC: e500: Add MSI supportAlexander Graf2012-12-141-0/+23
| | | | | | | | | | | | | | | | | | | | | Now that our interrupt controller supports MSIs, let's expose that feature to the guest through the device tree! Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: add Shared MSI supportAlexander Graf2012-12-141-20/+130
| | | | | | | | | | | | | | | | | | | | | The OpenPIC allows MSI access through shared MSI registers. Implement them for the MPC8544 MPIC, so we can support MSIs. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: make brr1 model specificAlexander Graf2012-12-141-1/+4
| | | | | | | | | | | | | | | | | | | | | Now that we can properly distinguish between openpic model differences, let's move brr1 out of the raven code path. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: convert to qdevAlexander Graf2012-12-144-155/+180
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch converts the OpenPIC device to qdev. Along the way it renames the "openpic" target to "raven" and the "mpic" target to "fsl_mpic_20", to better reflect the actual models they implement. This way we have a generic OpenPIC device now that can handle different flavors of the OpenPIC specification. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: remove irq_outAlexander Graf2012-12-144-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | The current openpic emulation contains half-ready code for bypass mode. Remove it, so that when someone wants to finish it they can start from a clean state. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: rename openpic_t to OpenPICStateAlexander Graf2012-12-141-34/+34
| | | | | | | | | | | | | | | | | | | | | Rename the openpic_t struct to OpenPICState, so it adheres better to the current coding style rules. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: convert simple reg operations to builtin bitopsAlexander Graf2012-12-141-31/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The openpic code has its own bitmap code to access bits inside of a bitmap. However, that is overkill when we simply want to check for a bit inside of a uint32_t. So instead, let's use normal bit masks and C builtin shifts and ands. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: remove unused type variableAlexander Graf2012-12-141-25/+2
| | | | | | | | | | | | | | | | | | | | | The openpic source irqs are carrying around a type indicator that is never accessed by anything. Remove it. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: unify memory api subregionsAlexander Graf2012-12-141-52/+56
| | | | | | | | | | | | | | | | | | | | | | | | The only difference between the "openpic" and "mpic" memory api subregion descriptors is the endianness. Unify them as openpic accessors with explicit endianness markers in their names. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: combine openpic and mpic reset functionsAlexander Graf2012-12-141-61/+42
| | | | | | | | | | | | | | | | | | | | | The openpic and mpic reset handlers are almost identical. Combine them and extract the differences into state variables. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: merge mpic and openpic timer handlingAlexander Graf2012-12-141-100/+31
| | | | | | | | | | | | | | | | | | | | | The openpic and mpic timer handling code is basically the same. Merge them. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: combine mpic and openpic irq raise functionsAlexander Graf2012-12-142-18/+19
| | | | | | | | | | | | | | | | | | | | | | | | | | | The IRQ raise mechanisms of the OpenPIC and MPIC controllers is identical, just that the MPIC one can also raise critical interrupts. Combine those two and check for critical raise capability during runtime. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: Convert subregions to memory apiAlexander Graf2012-12-141-45/+61
| | | | | | | | | | | | | | | | | | | | | The "openpic" controller is currently using one big region and does subregion dispatching manually. Move this to the memory api. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: combine mpic and openpic src handlersAlexander Graf2012-12-141-47/+5
| | | | | | | | | | | | | | | | | | | | | The MPIC source irq handler suddenly became identical to the standard OpenPIC source irq handler. Combine them into the same function. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: update to proper memory apiAlexander Graf2012-12-141-90/+48
| | | | | | | | | | | | | | | | | | | | | | | | The openpic code was still using the old mmio memory api. Convert it to be a generic memory api user and clean up some code that becomes redundant that way. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | mpic: Unify numbering schemeAlexander Graf2012-12-142-249/+45
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | MPIC interrupt numbers in Linux (device tree) and in QEMU are different, because QEMU takes the sparseness of the IRQ number space into account. Remove that cleverness and instead assume a flat number space. This makes the code easier to understand, because we are actually aligned with Linux on the view of our worlds. Signed-off-by: Alexander Graf <agraf@suse.de>
| * | openpic: Remove unused codeAlexander Graf2012-12-141-163/+0
| | | | | | | | | | | | | | | | | | | | | | | | The openpic code had a few WIP bits left that nobody reanimated within the last few years. Remove that code. Signed-off-by: Alexander Graf <agraf@suse.de> Acked-by: Hervé Poussineau <hpoussin@reactos.org>
OpenPOWER on IntegriCloud