summaryrefslogtreecommitdiffstats
path: root/hw/sun4u.c
Commit message (Collapse)AuthorAgeFilesLines
...
* qdev/prop: convert sun4u.c to helper macros.Gerd Hoffmann2009-08-101-6/+2Star
| | | | | | Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> Message-Id:
* Use qemu_irq for system_powerdownBlue Swirl2009-08-091-4/+0Star
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: configure screen size from QEMU command line optionsBlue Swirl2009-08-081-0/+8
| | | | | | | Use the FW_CFG interface to send user requested screen size and depth to OpenBIOS like 7f1aec5f93382eef75920899f4065613aeaf02a2 for ppc_oldworld. Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* kill drives_tableGerd Hoffmann2009-07-271-12/+6Star
| | | | | | | | | | | | | | First step cleaning up the drives handling. This one does nothing but removing drives_table[], still it became seriously big. drive_get_index() is gone and is replaced by drives_get() which hands out DriveInfo pointers instead of a table index. This needs adaption in *tons* of places all over. The drives are now maintained as linked list. Signed-off-by: Gerd Hoffmann <kraxel@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* Sparc32/64: use 64 bit type for memory sizeBlue Swirl2009-07-211-2/+2
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: refactor kernel initBlue Swirl2009-07-211-42/+55
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: refactor CPU initBlue Swirl2009-07-211-19/+27
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: convert memory to qdevBlue Swirl2009-07-211-4/+59
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: convert boot prom to qdevBlue Swirl2009-07-211-29/+62
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Sparc64: convert ebus to qdevBlue Swirl2009-07-121-2/+18
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* sparc64: really initialize irqIgor Kovalenko2009-07-121-2/+3
| | | | | | | | | | | Allocate irq just before passing it to pci bridge initialization and actually use it to initialize pci bridge. Signed-off-by: igor.v.kovalenko@gmail.com -- Kind regards, Igor V. Kovalenko
* Revert "Introduce reset notifier order"Jan Kiszka2009-06-291-1/+1
| | | | | | | | | This reverts commit 8217606e6edb49591b4a6fd5a0d1229cebe470a9 (and updates later added users of qemu_register_reset), we solved the problem it originally addressed less invasively. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* sparc64 follow pci_nic_init changeIgor V. Kovalenko2009-06-231-1/+1
| | | | | | | sun4u.c: correct pci_nic_init arguments following commit 5607c38820366954c38dd702e979499486057481 Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>
* Rename pci_register_io_region() to pci_register_bar()Avi Kivity2009-06-161-2/+2
| | | | | | | | This function is used to manage a PCI BAR, so make the more generic pci_register_io_region() available to other uses. Signed-off-by: Avi Kivity <avi@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* Use relative path for biosPaul Brook2009-05-301-10/+16
| | | | | | | Look for bios and other support files relative to qemu binary, rather than a hardcoded prefix. Signed-off-by: Paul Brook <paul@codesourcery.com>
* Introduce reset notifier orderJan Kiszka2009-05-221-1/+1
| | | | | | | | | | | | | | | Add the parameter 'order' to qemu_register_reset and sort callbacks on registration. On system reset, callbacks with lower order will be invoked before those with higher order. Update all existing users to the standard order 0. Note: At least for x86, the existing users seem to assume that handlers are called in their registration order. Therefore, the patch preserves this property. If someone feels bored, (s)he could try to identify this dependency and express it properly on callback registration. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* Introduce is_default field for QEMUMachineAnthony Liguori2009-05-221-0/+1
| | | | | | | | f80f9ec changed the order that machines are registered which had the effect of changing the default machine. This changeset introduces a new is_default field so that machine types can declare that they are the default for an architecture. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* Convert machine registration to use module init functionsAnthony Liguori2009-05-211-3/+12
| | | | | | This cleans up quite a lot of #ifdefs, extern variables, and other ugliness. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
* Replace gcc variadic macro extension with C99 versionBlue Swirl2009-05-131-3/+3
| | | | Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
* Remove vga_ram_sizePaul Brook2009-05-131-8/+8
| | | | | | | | | | The vga_ram_size argument to machine init functions always has the same value, and is ignored by many machines (including SPARC32 which has an obsolete ifdef for VGA_RAM_SIZE). Remove it and push VGA_RAM_SIZE into vga_int.h. Signed-off-by: Paul Brook <paul@codesourcery.com>
* use PCI_HEADER_TYPE.Isaku Yamahata2009-05-031-1/+1
| | | | | | use symbolic value instead of 0x0e and related value. Signed-off-by: Isaku Yamahata <yamahata@valinux.co.jp>
* Remove redundant ram_require machine properly.pbrook2009-04-111-3/+0Star
| | | | | | | Signed-off-by: Paul Brook <paul@codesourcery.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7090 c046a42c-6fe2-441c-8c8c-71466251a162
* Clean up VGA ram allocation.pbrook2009-04-101-5/+2Star
| | | | | | | Signed-off-by: Paul Brook <paul@codesourcery.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@7063 c046a42c-6fe2-441c-8c8c-71466251a162
* Remove nodisk_ok machine feature (Jan Kiszka)aliguori2009-03-281-3/+0Star
| | | | | | | | | | | | | All archs have some kind of firmware to load and can be fine with it already. So there is not much use in enforcing the presence of a disk. If the system setup requires one, the user will notice it anyway once the firmware/bios fails to boot from it. Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6899 c046a42c-6fe2-441c-8c8c-71466251a162
* Use firmware configuration instead of NVRAM (initial patch by Aurelien Jarno)blueswir12009-03-081-60/+15Star
| | | | | | | | | | Use firmware configuration device for boot device, kernel, initrd and kernel command line parameters on PPC, Sparc32 and Sparc64. Update OpenBIOS images to r479 which supports the change. git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6777 c046a42c-6fe2-441c-8c8c-71466251a162
* Fix sparc64-softmmu breakage from r6711blueswir12009-03-071-2/+2
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6733 c046a42c-6fe2-441c-8c8c-71466251a162
* Reload ptimers on resetblueswir12009-02-211-3/+3
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6635 c046a42c-6fe2-441c-8c8c-71466251a162
* Add and use #defines for PCI device classesblueswir12009-02-011-2/+1Star
| | | | | | | | | | | | | This patch adds and uses #defines for PCI device classes and subclases, using a new pci_config_set_class() function, similar to the recently added pci_config_set_vendor_id() and pci_config_set_device_id(). Change since v1: fixed compilation of hw/sun4u.c Signed-off-by: Stuart Brady <stuart.brady@gmail.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6491 c046a42c-6fe2-441c-8c8c-71466251a162
* Define PCI vendor and device IDs in pci.h (Stuart Brady)aliguori2009-01-261-4/+2Star
| | | | | | | | | | | | | | | This patch defines PCI vendor and device IDs in pci.h (matching those from Linux's pci_ids.h), and uses those definitions where appropriate. Change from v1: Introduces pci_config_set_vendor_id() / pci_config_set_device_id() accessors as suggested by Anthony Liguori. Signed-off-by: Stuart Brady <stuart.brady@gmail.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6442 c046a42c-6fe2-441c-8c8c-71466251a162
* Switch to CMD646 IDEblueswir12009-01-171-2/+2
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6361 c046a42c-6fe2-441c-8c8c-71466251a162
* graphical_console_init change (Stefano Stabellini)aliguori2009-01-161-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch 5/7 This patch changes the graphical_console_init function to return an allocated DisplayState instead of a QEMUConsole. This patch contains just the graphical_console_init change and few other modifications mainly in console.c and vl.c. It was necessary to move the display frontends (e.g. sdl and vnc) initialization after machine->init in vl.c. This patch does *not* include any required changes to any device, these changes come with the following patches. Patch 6/7 This patch changes the QEMUMachine init functions not to take a DisplayState as an argument because is not needed any more; In few places the graphic hardware initialization function was called only if DisplayState was not NULL, now they are always called. Apart from these cases, the rest are all mechanical substitutions. Patch 7/7 This patch updates the graphic device code to use the new graphical_console_init function. As for the previous patch, in few places graphical_console_init was called only if DisplayState was not NULL, now it is always called. Apart from these cases, the rest are all mechanical substitutions. Signed-off-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6344 c046a42c-6fe2-441c-8c8c-71466251a162
* Make pci_nic_init() use qemu_setup_nic_model() (Mark McLoughlin)aliguori2009-01-131-5/+2Star
| | | | | | | | | | | | | | Add a table of PCI NIC models to pass to qemu_setup_nic_model(). While we're at it, also add a corresponding table of NIC init functions. Signed-off-by: Mark McLoughlin <markmc@redhat.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6287 c046a42c-6fe2-441c-8c8c-71466251a162
* Add EBUS bridgeblueswir12009-01-101-2/+48
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6266 c046a42c-6fe2-441c-8c8c-71466251a162
* Fix APBblueswir12009-01-091-2/+3
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6265 c046a42c-6fe2-441c-8c8c-71466251a162
* Implement tick interrupt disable bitsblueswir12008-12-231-9/+20
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@6122 c046a42c-6fe2-441c-8c8c-71466251a162
* Use qemu_ram_allocblueswir12008-11-051-5/+8
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5630 c046a42c-6fe2-441c-8c8c-71466251a162
* More realistic max_cpusblueswir12008-11-021-3/+3
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5604 c046a42c-6fe2-441c-8c8c-71466251a162
* Make DMA bottom-half driven (v2)aliguori2008-10-311-1/+0Star
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The current DMA routines are driven by a call in main_loop_wait() after every select. This patch converts the DMA code to be driven by a constantly rescheduled bottom half. The advantage of using a scheduled bottom half is that we can stop scheduling the bottom half when there no DMA channels are runnable. This means we can potentially detect this case and sleep longer in the main loop. The only two architectures implementing DMA_run() are cris and i386. For cris, I converted it to a simple repeating bottom half. I've only compile tested this as cris does not seem to work on a 64-bit host. It should be functionally identical to the previous implementation so I expect it to work. For x86, I've made sure to only fire the DMA bottom half if there is a DMA channel that is runnable. The effect of this is that unless you're using sb16 or a floppy disk, the DMA bottom half never fires. You probably should test this malc. My own benchmarks actually show slight improvement by it's possible the change in timing could affect your demos. Since v1, I've changed the code to use a BH instead of a timer. cris at least seems to depend on faster than 10ms polling. Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5573 c046a42c-6fe2-441c-8c8c-71466251a162
* machine struct - specify max_cpus at the per machine level (Jes Sorensen)aliguori2008-10-071-0/+3
| | | | | | | | | | | | | | | Introduce a max_cpus per-machine variable, allowing individual boards to limit it's number of CPUs. Check requested number of CPUs in setup code and exit if it exceeds the supported number for the machine. This also renders the static MAX_CPUS check obsolete, so remove this from vl.c. Signed-off-by: Jes Sorensen <jes@sgi.com> Signed-off-by: Anthony Liguori <aliguori@us.ibm.com> git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5443 c046a42c-6fe2-441c-8c8c-71466251a162
* Move nographic export to sysemu.hblueswir12008-10-041-2/+0Star
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5414 c046a42c-6fe2-441c-8c8c-71466251a162
* Rearrange tick functionsblueswir12008-10-031-0/+15
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5408 c046a42c-6fe2-441c-8c8c-71466251a162
* Add a generic Niagara machineblueswir12008-09-261-10/+71
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5329 c046a42c-6fe2-441c-8c8c-71466251a162
* Add software and timer interrupt supportblueswir12008-09-221-5/+59
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5299 c046a42c-6fe2-441c-8c8c-71466251a162
* Add common keys to firmware configurationblueswir12008-09-181-0/+10
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5260 c046a42c-6fe2-441c-8c8c-71466251a162
* Key/value based qemu<->guest firmware communication mechanism (Gleb Natapov)blueswir12008-09-181-0/+5
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5256 c046a42c-6fe2-441c-8c8c-71466251a162
* Fix OpenBSD linker warningsblueswir12008-08-211-6/+9
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@5044 c046a42c-6fe2-441c-8c8c-71466251a162
* Allow boot without a drive on Sparc machines (partly extracted from Xen)blueswir12008-08-121-0/+2
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4997 c046a42c-6fe2-441c-8c8c-71466251a162
* Use C99 initializersblueswir12008-08-121-8/+8
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4996 c046a42c-6fe2-441c-8c8c-71466251a162
* Add T1 and T2 CPUs, add a Sun4v machineblueswir12008-07-221-8/+51
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4923 c046a42c-6fe2-441c-8c8c-71466251a162
* Add idpromblueswir12008-07-151-7/+11
| | | | git-svn-id: svn://svn.savannah.nongnu.org/qemu/trunk@4870 c046a42c-6fe2-441c-8c8c-71466251a162