target-ppc: add declarations of microcontrollers based on e300
Add CPU declarations of MPC8343, MPC8343E, MPC8347 and MPC8347E.
Signed-off-by: Thomas Monjalon <thomas@monjalon.net>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target-ppc: better support of e300 CPU core
Declare HID2 register.
Use high BATs for e300 (8 instead of 4).
Fix index of high BATs registers.Before the fix, IBAT4-7 were overwriting IBAT0-3.
Signed-off-by: François Armand <francois.armand@os4i.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target-arm: fix bugs introduced by 1b2b1e547bd912b7d3c4863d0a0f75f6f38330ed
Use load_reg_var() instead of accessing cpu_R[rn] directly to generatecorrect code when rn = 15.
Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target-arm: fix bugs introduced by 3174f8e91fecf8756e861d1febb049f3c619a2c7
target-arm: remove T0 and T1
target-arm: remove cpu_T for ARM once and for all
Signed-off-by: Filip Navara <filip.navara@gmail.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
target-arm: convert gen_lookup_tb not to use cpu_T
target-arm: convert NEON VZIP/VUZP/VTRN helper functions to pure TCG
The neon_trn_u8, neon_trn_u16, neon_unzip_u8, neon_zip_u8 and neon_zip_u16helpers used fixed registers to return values. This patch replaces that withTCG code, so T0/T1 is no longer directly used by the helper functions....
target-arm: fix TANDC and TORC instructions
Uninitialized register was used instead of proper TCG variable.
target-arm: replace thumb usage of cpu_T registers by proper register allocations
The goal is eventually to get rid of all cpu_T register usage and to usejust short-lived tmp/tmp2 registers. This patch converts all the places wherecpu_T was used in the Thumb code and replaces it with explicit TCG register...
target-arm: convert rest of disas_arm_insn / disas_thumb2_insn not to use cpu_T
target-arm: convert disas_neon_data_insn and helpers not to use cpu_T
target-arm: convert disas_neon_ls_insn not to use cpu_T
target-arm: convert disas_dsp_insn not use cpu_T
target-arm: convert disas_iwmmxt_insn not to use cpu_T
target-arm: convert VFP not to use cpu_T
target-arm: use tcg_global_mem_new_i32 to allocate registers
Currently each read/write of ARM register involves a LD/ST TCG operation. Thispatch uses TCG memory-backed registers to represent the ARM register set. Withmemory-backed registers the LD/ST operations are transparently generated by TCG...
target-arm: get rid of temporary variable cache
The temporary variable cache in no longer need since tcg_temp_free was introduced.
target-arm: remove useless line that sets register that is never used again
target-arm: remove unused gen_movl_T2_reg function
target-arm: fix SRS/RFE instructions
The encoding of 'IA' and 'DB' conditions was swapped.SRS instruction must store banked SPSR instead of CPSR at the specific address.Missing 'return' statement at the end of RFE handling.Fixed write-back code to reference correct registers....
target-arm: get rid of gen_set_psr_T0 and replace it by gen_set_psr/gen_set_psr_im
Only IDE needs limits for CHS configuration
Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
MIPS jazz: create isa bus
As i8259 in mips_jazz.c is not correctly connected to the isa bus, themc146818rtc isa devices fails to be created.
Signed-off-by: Roy Tam <roytam@gmail.com>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
qcow2: Bring synchronous read/write back to life
When the synchronous read and write functions were dropped, they were replacedby generic emulation functions. Unfortunately, these emulation functions don'tprovide the same semantics as the original functions did....
pcnet: Extend hardware reset
Update the IRQ state and stop the poll timer on reset. Moreover,register the reset function with qemu.
Patchworks-ID: 35462Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ksm support
Call MADV_MERGEABLE on guest memory allocations. MADV_MERGABLE will beavailable starting in Linux 2.6.32. This system call registers a region ofvirtual address space with Linux as a candidate for transparent memorysharing.
Patchworks-ID: 35447...
multiboot: Fix cmdline of modules
Fix address specified for cmdline value of module in multiboot structure.
Patchworks-ID: 35699Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
multiboot: Limit number of multiboot modules
Add size checks to avoid overwriting the multiboot structurewhen too many modules are loaded.
Patchworks-ID: 35700Signed-off-by: Adam Lackorzynski <adam@os.inf.tu-dresden.de>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: refactor packet queueing code
The packet queue code is fairly standalone, has some complex details andeasily reusable. It makes sense to split it out on its own. This patchdoesn't contain any functional changes.
Patchworks-ID: 35511Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
net: add queue for peer-to-peer packet forwarding
Now that we have re-factored the packet queue code, we can re-useit for peer-to-peer also.
Patchworks-ID: 35520Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: fix multiple NICs causing net opts process to stop
For NICs, net_init_client() returns the index into the NICInfo table.
qemu_opts_foreach() interprets non-zero as an error return an stopsiterating over the options.
So, if you have more than one '-net nic' on the command line, subsequent...
Documentation: Highlight placeholders in suboptions
Currently, suboptions (i.e. something like file=file for -drive) are renderedas @code, so we're losing any @var highlighting in the man pages.
Replace them by @option, so that you actually can see what is a placeholder and...
Documentation: Add missing tags to placeholders
Not all placeholders in options descriptions had the @var tag on them. Add thetag so that it's clearly visible that they are placeholders.
Patchworks-ID: 35602Signed-off-by: Kevin Wolf <kwolf@redhat.com>...
Documentation: Move msmouse description to an appropriate place
Putting it right in the middle of the explanation for "-serial udp" probablywasn't the best idea.
Patchworks-ID: 35603Signed-off-by: Kevin Wolf <kwolf@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: maintain a list of vlan-less clients
Allows them to be cleaned up at shutdown.
This is pretty lame, but will eventually go away as we make vlansthe special case.
Patchworks-ID: 35518Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: add -net nic,netdev= option
Patchworks-ID: 35515Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: allow NICs to be connected to netdevs
Introduce a 'peer' member to VLANClientState as an alternativeto a vlan. The idea being that packets are transfered directlyfrom peer clients rather than going through a vlan.
Patchworks-ID: 35516Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
net: allow clients not associated with a vlan
Allow net clients to be created which are not connected to any vlan.
This is needed by Gerd in order to allow adding -device nic, wherethe absence of a vlan parameter will not imply vlan=0. Also neededto allow adding a -netdevice option which doesn't connect the backend...
net: add QemuOptsList arg to net_client_parse()
Patchworks-ID: 35505Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: add -netdev option
Patchworks-ID: 35506Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: handle -netdevice options
Same as for -net except for:
- only tap, user, vde and socket types are supported- the vlan parameter is not allowed- the name parameter is not allowed but the id parameter isrequired
Patchworks-ID: 35517Signed-off-by: Mark McLoughlin <markmc@redhat.com>...
eepro100: Remove unused device status entries
Once upon the time when QEMU hacking was funthere was a brave knight who wanted to havea driver for a special intel nic.
So he started by cloning ne2000.c which alsomeant that the new born eepro100.c wasimmediately three years old....
hotplug: safely iterate bus's sibling list while removing a device
Without this, I'm seeing a segfault when unpluging a NIC.
Cc: Gerd Hoffmann <kraxel@redhat.com>Patchworks-ID: 35519Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: pass monitor handle to client init functions
Needed for e.g. looking up a file descriptor name usingmonitor_get_fd() in net_init_tap()
Patchworks-ID: 35509Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: remove unused qemu_handler_true()
Patchworks-ID: 35504Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: handle id= parameter for -net
Use id= in the same was as the current name= parameter; if both arespecified, id= is used.
Patchworks-ID: 35514Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
net: remove id field from NICInfo
Just use the name field instead since we now use the id paramater asthe name, if supplied. Only implication with this change is that ifid is not supplied, the value of the name paramater is used as anid.
Patchworks-ID: 35512...
net: use qtailq for vlan and client lists
Patchworks-ID: 35507Signed-off-by: Mark McLoughlin <markmc@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
winwave: ADC support
Signed-off-by: malc <av1474@comtv.ru>
audio: remove last remnants of _t
winwave: make error logging more consistent
winwave: follow the rules when closing the output device
a. call waveOutReset to drain the queueb. unprepare headers before freeing underlying memory
configure: clean temporary executable files even on Windows
scsi disk block descriptor v2
The SCSI-2 documentation suggests, that although the blockdescriptor is optional for an arbitrary SCSI-2 device (chapter 8.2.10,http://ldkelley.com/SCSI2/SCSI2/SCSI2/SCSI2/SCSI2-08.html )it is mandatory for a disk: chapters 9.1.2, 9.3.3...
Add some chipset doc links
user: fix libuser build messages
sparc64: fix done instruction pc
Fix done instruction to resume with pc=tnpc, npc=tnpc+4
Signed-off-by: Igor V. Kovalenko <igor.v.kovalenko@gmail.com>Signed-off-by: Blue Swirl <blauwirbel@gmail.com>
qemu: allow pulseaudio to be the default
We're seeing various issues with the SDL audio backend and want toswitch to the pulseaudio backend. See e.g.
https://bugzilla.redhat.com/495964 https://bugzilla.redhat.com/519540 https://bugzilla.redhat.com/496627...
rom loader: also try filename as-is.
In case qemu_find_file fails try to open the file as-is.
Patchworks-ID: 35263Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fixed wacom emulation
- for absolute mode, scale coordinates to the real device maximum values,since some drivers (on Haiku and Linux at least) need them as such,and the HID descriptor is boggus on some models anyway,- keep the coordinates even when no button is pressed, on real tablet...
ide: cmd646 ->unit has just the value that we want
Patchworks-ID: 35307Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: BMDMAState don't need a pci_dev field anymore
Patchworks-ID: 35306Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
slirp: fix !CONFIG_SLIRP compilation
This moves the code that depens on slirp under CONFIG_SLIRP again.
Patchworks-ID: 35372Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
TARGET_I386 is always defined if TARGET_X86_64 is defined
Patchworks-ID: 35378Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
unlock iothread mutex before running kvm ioctl
Without this, kvm will hold the mutex while it issues its run ioctl,and never be able to step out of it, causing a deadlock.
Patchworks-ID: 35359Signed-off-by: Glauber Costa <glommer@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
rom loader: fix sparc -kernel boot.
Changes:(1) register pstrcpy_targphys() in rom list, it is used for kernelcommand lines by a number of architectures.(2) add rom_ptr() function to get a pointer for applying changesto loaded images. Needed for example to tell the linux kernel...
ide: change cast to DO_UPCAST
Patchworks-ID: 35293Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: Remove cast in pci_register_bar
We already have a PCIDevice at that point
Patchworks-ID: 35296Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: Remove duplicated definitions
Patchworks-ID: 35297Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: remove uselsess casts from void *
Patchworks-ID: 35298Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: create ide/pci.h for common ide pci definitions
Patchworks-ID: 35299Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: export needed ide-pci functions for split
Patchworks-ID: 35300Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: split cmd646 and piix from pci.c
This patch splits cmd646 specific code from pci.c.This patch splits piix4 specific code from pci.c.And compile new piix.o and cmd646.o when they are needed.The only change that is not code movemet is removal of cmd646 specific parts...
ide: PCIIDEState type field is not needed anymore
We have split the functions that needed it for cmd646
Patchworks-ID: 35302Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: 'secondary' field is only used by cmd646
Patchworks-ID: 35303Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
ide: cmd646 we can get the pci device with container_of
Patchworks-ID: 35305Signed-off-by: Juan Quintela <quintela@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
Fix bswap in comment
Replace bsawp -> bswap.
Signed-off-by: Stefan Weil <weil@mail.berlios.de>Signed-off-by: Aurelien Jarno <aurelien@aurel32.net>
Move dependency generation falgs out of configure
configure: clean up temporary dependency files
winwave: pause/restore playing upon seeing VOICE_DISABLE/ENABLE
winwave: close event handle and delete wait object after closing HWAVEOUT
To avoid possibly being called back and thus racing.
winwave: remove wait object when finalizing DAC voice
CRIS: Segmented addressing only for kernel mode.
Segmented translation through the CRIS MMU is only done foraccesses in kernel mode. In user-mode, all accesses are treatedas paged regardless of the mode config in RW_MM_CFG.
Signed-off-by: Edgar E. Iglesias <edgar.iglesias@gmail.com>
Fix Windows host breakage by 45a50b1668822c23afc2a89f724654e176518bc4 (TeLeMan)
winwave: poll mode
Windows Waveform Audio driver (no ADC support yet)
pcnet: Restart poll timer on pcnet_start
Just like we call into pcnet_poll_timer on stop, we need to call it onstart to trigger the setup of the poll timer.
Patchworks-ID: 35313Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
pcnet: Drop unused recv_pos field
This state field was never used, simply remained 0. Drop it from thePCNetState and update the save/restore code accordingly, keepingbackward compatibility.
Patchworks-ID: 35314Signed-off-by: Jan Kiszka <jan.kiszka@siemens.com>...
monitor: Convert do_quit() do QObject
Patchworks-ID: 35345Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
monitor: Convert do_stop() to QObject
Patchworks-ID: 35343Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
monitor: Convert do_system_reset() to QObject
Patchworks-ID: 35347Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
monitor: Convert do_system_powerdown() to QObject
Patchworks-ID: 35346Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
monitor: Convert do_cont() to QObject
Appropriate error handling support will be needed to haveencrypted images working under the future machine protocol,but this initial conversion will work with the currentuser protocol.
Patchworks-ID: 35348Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>...
monitor: Convert do_balloon() to QObject
It is important to note that it never fails, as big refactoringof the virtio code would be needed to get the proper error code.
Patchworks-ID: 35349Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>Signed-off-by: Anthony Liguori <aliguori@us.ibm.com>
monitor: Convert do_info_version() to QObject
The returned data is always a QString.
Also introduces monitor_print_qobject(), which can be used asa standard way to print QObjects in the user protocol format.
Patchworks-ID: 35350Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>...
monitor: Convert do_info_balloon() to QObject
On success return a QInt with the balloon's value.
This also introduces monitor_print_balloon() to print theballoon information in the user protocol.
Please, note that errors are not being converted yet.
Patchworks-ID: 35351...
monitor: Convert do_info_cpus() to QObject
Each CPU information is stored in a QDict and the returnedQObject is a QList of all CPUs.
The QDict contains the following information:
- "CPU": cpu index- "current": "yes" or "no" - "pc": current PC- "halted": "yes" or "no"...
monitor: Handle new and old style handlers
This commit changes monitor_handle_command() to support old styleand new style handlers.
New style handlers are protocol independent, they return theirdata to the Monitor, which in turn decides how to print them...
monitor: do_info(): handle new and old info handlers
do_info() is special, its job is to call 'info handlers'.This is similar to what monitor_handle_command() does,therefore do_info() also has to distinguish among new andold style info handlers.
This commit converts do_info() to the new QObject style and...