Commit Graph

57331 Commits

Author SHA1 Message Date
Peter Maydell
5853e92207 cocoa queue:
* make scrolling work in GUI monitor windows
  * change ungrab to ctrl-alt-g (matching gtk)
  * pass unused ctrl-alt combos to guest
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQIcBAABCAAGBQJaAYekAAoJEDwlJe0UNgzeNHAP/3TIuXoH/HNnFrVWpbKxx4Bj
 V9n4yUNNZhEJneipwDF6knws+OXR2EwolkapUymKgD4wCwQp6rga6gfeytp7ArOw
 A4MX0WGGAROFmbO4fWabOe7YbFM7rYSy+vPNPL/7hEhypYS6/FKULFoWHEG+Dbv8
 XaORoDnmCheUe7hJlc+56GiQ+fYJfN5kocKMnujeo8lq86Rba9iIbZcThCDFtea3
 4CtJE6/1SMpmJLQf6sIQRRBkXPGWGv1qtWis4FcRSk0sYn4OEMcM3eapDZUlJASO
 cBpOeoHI1L64BbyfQklBhi0v+5Nek32KZNJiY49kwSL0JKRtBMhBVKkDtnNXpaLm
 eA5WiwsQttYCqnyBUCWqybExGjzBjUy0TCClSMUdu1G47Wf5a1OzMtqY2CzXVgaF
 0l2ZAOtIud6KACIr9D9ti+z4kTLDhddvg3NOSZA7RTo1hspUZv2Of/+97Ao1MBFk
 gmrC7zm94OwOQXzwPpu38XJBD8Gtxu8O3TNCD2DrWmAcS7zamRE2IP41wjHqUuCz
 fTihyds3ng0BtBYeRyzVQ5Hdd9UCNk8CB/SLKkz7/U1Vt1PiiuAi5kxQ97WvYHsg
 8fRpmgU+wTUjIbp+Ww8tsGZkzInmSjfEGjBsm6MjwWgntEIVD1WqieEZMfk4rAZ8
 7k/MR5amCS9nn3IF5uAI
 =RIdQ
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/pmaydell/tags/pull-cocoa-20171107' into staging

cocoa queue:
 * make scrolling work in GUI monitor windows
 * change ungrab to ctrl-alt-g (matching gtk)
 * pass unused ctrl-alt combos to guest

# gpg: Signature made Tue 07 Nov 2017 10:15:00 GMT
# gpg:                using RSA key 0x3C2525ED14360CDE
# gpg: Good signature from "Peter Maydell <peter.maydell@linaro.org>"
# gpg:                 aka "Peter Maydell <pmaydell@gmail.com>"
# gpg:                 aka "Peter Maydell <pmaydell@chiark.greenend.org.uk>"
# Primary key fingerprint: E1A5 C593 CD41 9DE2 8E83  15CF 3C25 25ED 1436 0CDE

* remotes/pmaydell/tags/pull-cocoa-20171107:
  ui/cocoa.m: Send ctrl-alt key combos to guest if QEMU isn't using them
  ui/cocoa.m: move ungrab to ctrl-alt-g
  ui/cocoa.m: Make scrolling work again in GUI monitor windows

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 12:19:48 +00:00
Peter Maydell
0e82cdd012 Merge build 2017/11/07 v1
-----BEGIN PGP SIGNATURE-----
 
 iQIcBAABCAAGBQJaAYeZAAoJEL6G67QVEE/fuCwP/3TgBkGEyqsH4CrYLtpOZLZF
 0eRx8vzBNhuCgIuiMItAbxKHSJKHhhTZIad6J0tJOTYhtEfLZHKh3USSF28KcaYd
 8/8aYRZdaMO4QK66Lfl/PwebZ5FiD5xb9qTJ9SkHARsHeIogwTcGAkvDhcdVzFtw
 RC7thETESoEpdx6FtVEl95+nfK3C9Fltm9LR6i9u2gsbvoVPp+w3EflhEBlCCdrJ
 Kdc0+GX0EWsVZ7NoU79vUQ5LswGUn+ZwSZB5DLVeCWXbKbgAKCBIwZNet06p60RD
 RuNyG8ivH+s6pSKTqgTIKPeZkwtqnVmjqBVfUEZsTEDgvtYpaXb25XyZLdDbBUCS
 a06RkB03xZVgVY15HL9X7bhVhZVZ56WuLokvHi4LbXjga3+V7ldOcBh21BbUhGnD
 NAuR186SeyCG84HdhSFKebA6xDQMjoLrqo0Y9YfTZUjX2jLlDzpeP337RSKyaO1B
 eLFLekx1PU4OS+QPG+TOjN8fplxNdv46xoW+VgGClDVjOSbnrUQRRe4GfaLuJRqs
 jXs+k9Me3oJWit6UG2gv3sWOGxqGMZKvjTsVKvi1HaQKx2bgd+bzNL7VurvqiEy9
 QLyLP5lYX7riuLnrkavJUxt0vWPVEmfzdL+hrTLTb/cXc5qH0FFBQx0yaTgAmCwA
 /cUrxI2xu2VZKwUXH/Xs
 =TdMN
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/berrange/tags/pull-build-2017-11-07-1' into staging

Merge build 2017/11/07 v1

# gpg: Signature made Tue 07 Nov 2017 10:14:49 GMT
# gpg:                using RSA key 0xBE86EBB415104FDF
# gpg: Good signature from "Daniel P. Berrange <dan@berrange.com>"
# gpg:                 aka "Daniel P. Berrange <berrange@redhat.com>"
# Primary key fingerprint: DAF3 A6FD B26B 6291 2D0E  8E3F BE86 EBB4 1510 4FDF

* remotes/berrange/tags/pull-build-2017-11-07-1:
  build: remove use of MAKELEVEL optimization in submodule handling
  build: delay check for empty git submodule list
  build: don't fail if given a git submodule which does not exist
  build: allow automatic git submodule updates to be disabled
  build: don't create temporary files in source dir
  build: allow setting a custom GIT binary for transparent proxying

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 11:42:57 +00:00
Peter Maydell
d2b8c0910e This fixes a bad errno returned to the guest and a trivial coding style nit.
-----BEGIN PGP SIGNATURE-----
 
 iQIzBAABCAAdFiEEtIKLr5QxQM7yo0kQcdTV5YIvc9YFAloApVQACgkQcdTV5YIv
 c9aLCA/8CJyTPSTVRTdRb0oF9aB8s6NynFKkkkU7aRqjvwIM47TEy96nmBA/W8e8
 4A5Wohwh5RJeJS8EzyamGFHKi1dcd6DOsPIm9G8A3eztGNO8zV5rmLx2LfqCLWyZ
 NojVyMTFVoaX/yphBNFtC19QsoDbm0UV3EP9bx+oWYYO1d5HmuAoB8czzIMSp4qj
 mkbrZ8RKO+8w+Y4pQ66oslg8GliSRKtiaMR5CTcHAkNy1juVWw5ISujfD1LjU7W+
 0y7nVlnhomTfce+K8wc2DkovDczDtomom4fQWHR0FXzzUUoO/RN/yzzDfByfN65g
 9U3GkY7fD/hrSBMTObPF8/F0B9sSOzbX4u4w0xiJ8w2dm2pFPeJegWEBkuNFxVBJ
 929vI/9ZGnMzOuS5k7aJqHl29KemRTQ/5BkSR7e/pLniT6sZvs9ttJEomzCiuopQ
 gZpAbwEMA+VzEqRsUk8lsi08vKnDH2eFOjC01W/FjKzeLw2t0o6EAqRfztrReKT3
 P34C+8DocQEXQBGZCq45ZjzUhcH94gJrg9bkHSkn4cCyALoMaLIJyF4soYuCCKfn
 HJrF3rZrFDsDJ9DAVlCuPV7qSufoXwgZSaZIuAp9wZtB/XwMfdKV38K4mkzqWihT
 Jf2iNZRnuhNnlvI5q4d+/YZIJ+099mnCuojFV2NsjIPL9ziNmZs=
 =qH6G
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/gkurz/tags/for-upstream' into staging

This fixes a bad errno returned to the guest and a trivial coding style nit.

# gpg: Signature made Mon 06 Nov 2017 18:09:24 GMT
# gpg:                using RSA key 0x71D4D5E5822F73D6
# gpg: Good signature from "Greg Kurz <groug@kaod.org>"
# gpg:                 aka "Gregory Kurz <gregory.kurz@free.fr>"
# gpg:                 aka "[jpeg image of size 3330]"
# Primary key fingerprint: B482 8BAF 9431 40CE F2A3  4910 71D4 D5E5 822F 73D6

* remotes/gkurz/tags/for-upstream:
  9pfs: fix v9fs_mark_fids_unreclaim() return value
  9pfs: drop one user of struct V9fsFidState

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 10:59:07 +00:00
Peter Maydell
ef2088f9af ui/cocoa.m: Send ctrl-alt key combos to guest if QEMU isn't using them
Send those ctrl-alt key combos that QEMU doesn't treat specially to
the guest rather than ignoring them.

All the case where we do special handling of ctrl-alt-X exit the
event handling using a "return" statement, so we can simply allow
the rest to fall through into the normal key handling by deleting
the now-spurious "else".

We take the opportunity to clean up some oddly-formatted and
now rather uninformative comments by removing them.

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 10:14:14 +00:00
John Arbuckle
5929e36cac ui/cocoa.m: move ungrab to ctrl-alt-g
Currently the cocoa user interface relis on the user pushing
control-alt to ungrab the mouse.  This is patch changes the key
combination to control-alt-g to be in line with the GTK user
interface.

Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
Message-id: 20171102213907.11443-1-programmingkidx@gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 10:14:14 +00:00
John Arbuckle
9c3a418eac ui/cocoa.m: Make scrolling work again in GUI monitor windows
Make scrolling in the monitor work, by correctly passing through
control+key combinations.

Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
Message-id: 20171101154607.1582-1-programmingkidx@gmail.com
[PMM: fixed coding style nits; cleaned up commit message]
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-07 10:14:14 +00:00
Greg Kurz
267fcadf32 9pfs: fix v9fs_mark_fids_unreclaim() return value
The return value of v9fs_mark_fids_unreclaim() is then propagated to
pdu_complete(). It should be a negative errno, not -1.

Signed-off-by: Greg Kurz <groug@kaod.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
2017-11-06 18:05:35 +01:00
Greg Kurz
21cf9edf4f 9pfs: drop one user of struct V9fsFidState
To comply with QEMU coding style.

Signed-off-by: Greg Kurz <groug@kaod.org>
2017-11-06 18:05:35 +01:00
Mike Nawrocki
e5a11847c4 Enable 8-byte wide MMIO for 16550 serial devices
Some drivers for the PPMC7400 PowerPC evaluation board accesses the
serial registers through the floating point unit (stfd/ldfd), which is
an 8-byte wide access. This patch enables that behavior.

Signed-off-by: Mike Nawrocki <michael.nawrocki@gtri.gatech.edu>
Message-Id: <20171106161039.32596-1-michael.nawrocki@gtri.gatech.edu>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-11-06 17:15:14 +01:00
Peter Maydell
299d1ea9bb MIPS patches 2017-11-06
Changes:
 Update email addresses of Yongbok Kim, James Hogan and Paul Burton.
 -----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.5 (GNU/Linux)
 
 iQIVAwUAWgCCEiI464bV95fCAQLUWA/8D6Cliyogxl8hdFrjU30f0FzHoCanbl/M
 d8tn/KhG+7ams0dxhpZUT3hR77gdId0CufnLa68MGbXy3enGTgP9jwjG/IWW6pjB
 95fLIT8tKhcrNNNRr4IXdV8IZUOmjTnrh8GnqH/BSzIxByCx3tPfz3psLC1EBIFb
 JfOac6MEiyG9a0KHy1Ne5PXYgLrolfUoh0eAcALp0ynK7aGUvX6Rp4HYnhm9HIjX
 mnHR/4tdIEqwhvlqyotgZ6XKEuYBK5pvPi+KoITDgsV2l0avtJGDxDr2xUziyFOm
 sLt1m1q4DC8AU1zV/xNvgWuX90Jacncq1ep7ZK/5jp/JxUA+L9Bw71XaLK0iELxE
 iQxhR283FB1xcq7dfC7LKF04MSe29+v12zIViv3tk1CAPUJ/J/UJ5t/ClM4oRIoe
 mTc6DpSAGUDEVCHB39YxGBKdGwSbFObZVF980SS8k8aQLOATF1PoPuzrkJs4dAvt
 IPj6ULJe7C0IdsJ+zT21jR4HBMmopa2sbmS2jjMDypYvudxHp+GjlC6921BV5KUw
 TLX0cndriSQlP3Oo0pU95xHjE9elJ/A1arwR/Tk6fgK8tHC5TNBE1vVK9kqV5uhM
 d4uya1AOFbbqhP5YOrKfOCLSNVluF9ThVljSYwq5GJxFzW05at/H2BDGXNyB+sik
 p6wiYgNGw5s=
 =OxmK
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/yongbok/tags/mips-20171106' into staging

MIPS patches 2017-11-06

Changes:
Update email addresses of Yongbok Kim, James Hogan and Paul Burton.

# gpg: Signature made Mon 06 Nov 2017 15:38:58 GMT
# gpg:                using RSA key 0x2238EB86D5F797C2
# gpg: Good signature from "Yongbok Kim <yongbok.kim@mips.com>"
# gpg:                 aka "Yongbok Kim <yongbok.kim@imgtec.com>"
# gpg: WARNING: This key is not certified with sufficiently trusted signatures!
# gpg:          It is not certain that the signature belongs to the owner.
# Primary key fingerprint: 8600 4CF5 3415 A5D9 4CFA  2B5C 2238 EB86 D5F7 97C2

* remotes/yongbok/tags/mips-20171106:
  MAINTAINERS: Update Paul Burton's email address
  MAINTAINERS: Update James Hogan's email address
  MAINTAINERS: Update Yongbok Kim's email address

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-06 16:13:10 +00:00
Paul Burton
94d973bdaa MAINTAINERS: Update Paul Burton's email address
Update my email address from paul.burton@imgtec.com to
paul.burton@mips.com, since MIPS will soon no longer be a part of
Imagination Technologies & as such the @imgtec.com address will soon
cease to function.

A mapping is added in .mailmap such that git reports the new @mips.com
address, and get_maintainer.pl in turn reports it when examining git
history. Whilst here add a mapping for my also-defunct
paul@archlinuxmips.org email address too.

Signed-off-by: Paul Burton <paul.burton@imgtec.com>
Cc: Laurent Vivier <laurent@vivier.eu>
Cc: Michael Tokarev <mjt@tls.msk.ru>
Cc: Yongbok Kim <yongbok.kim@imgtec.com>
Cc: Yongbok Kim <yongbok.kim@mips.com>
Cc: qemu-devel@nongnu.org
Cc: qemu-trivial@nongnu.org
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
[Yongbok Kim:
  Updated message subject]
Signed-off-by: Yongbok Kim <yongbok.kim@imgtec.com>
2017-11-06 07:36:43 -08:00
James Hogan
a7a2d7d2a0 MAINTAINERS: Update James Hogan's email address
Update my imgtec.com email address to my kernel.org one in MAINTAINERS
as MIPS will soon no longer be part of Imagination Technologies, and add
a mapping in .mailcap so get_maintainer.pl reports the right address.

Signed-off-by: James Hogan <james.hogan@imgtec.com>
Cc: Michael Tokarev <mjt@tls.msk.ru>
Cc: Laurent Vivier <laurent@vivier.eu>
Cc: qemu-devel@nongnu.org
Cc: qemu-trivial@nongnu.org
Reviewed-by: Laurent Vivier <laurent@vivier.eu>
[Yongbok Kim:
  Updated message subject]
Signed-off-by: Yongbok Kim <yongbok.kim@imgtec.com>
2017-11-06 07:36:43 -08:00
Yongbok Kim
0eb4e1f33a MAINTAINERS: Update Yongbok Kim's email address
Update my email address to mips.com

Signed-off-by: Yongbok Kim <yongbok.kim@imgtec.com>
2017-11-06 07:36:42 -08:00
Daniel P. Berrange
c4b01c7c51 build: remove use of MAKELEVEL optimization in submodule handling
The Makefile attempts to optimize the handling of submodules by using MAKELEVEL
to only check the submodule status when running from the top level make
invokation. This causes problems for people who are using a makefile of their
own to in turn invoke QEMU's makefile, as MAKELEVEL is already set to 1 (or
more) when QEMU's makefile runs.

This optimization should not really be needed, since the git-submodule.sh
script is already used to detect if a submodule update is required. This by
removing the MAKELEVEL check, we at most add an extra 'git-submodule.sh status'
call to each make level, the overhead of which is lost in noise of building
QEMU.

Reviewed-by: Greg Kurz <groug@kaod.org>
Tested-by: Greg Kurz <groug@kaod.org>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 12:49:20 +00:00
Peter Maydell
d24aaf2a29 -----BEGIN PGP SIGNATURE-----
iQEcBAABAgAGBQJaAEVyAAoJEJykq7OBq3PI9ZEIAIkcTGr7O4iAKIZTvT/HA8i4
 QO2GHs/WvojDgLEqqqqOEVH+1HrcsCx0UneXQqwKe665jnOaRN2e+m/p51xnWi9B
 kM1a1HumK/L7LvIk5FJReL8JjHQuYkW40q5NQ7mgHf535Ur2QxmLlMtx9qYCR6vF
 WMPqNGjqnD3m42/oxMN9lL+cM1fDY0WnZEEGIj9UdDqI7dbBjUIyhE6f44+xgDgl
 EdYx9kdEMgVLxeLilPe8wZE2Aw0FtpXbEFJMOEbeoDhdKzO2UU/3CGPe1MdIXRzN
 72ITxMrBZcWT+jPvSmuSkcU+LsfPoTJEZ27TO5ARoGKjuvgQiEOete/hDXoSpOI=
 =xgU+
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/stefanha/tags/block-pull-request' into staging

# gpg: Signature made Mon 06 Nov 2017 11:20:18 GMT
# gpg:                using RSA key 0x9CA4ABB381AB73C8
# gpg: Good signature from "Stefan Hajnoczi <stefanha@redhat.com>"
# gpg:                 aka "Stefan Hajnoczi <stefanha@gmail.com>"
# Primary key fingerprint: 8695 A8BF D3F9 7CDA AC35  775A 9CA4 ABB3 81AB 73C8

* remotes/stefanha/tags/block-pull-request:
  aio-posix: drop QEMU_AIO_POLL_MAX_NS env var

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-06 11:24:14 +00:00
Daniel P. Berrange
49ad3cfa67 build: delay check for empty git submodule list
We short circuit the git submodule update when passed an empty module list.
This accidentally causes the 'status' command to write to the status file. The
test needs to be delayed into the individual commands to avoid this premature
writing of the status file.

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 11:05:24 +00:00
Daniel P. Berrange
37b5e74e28 build: don't fail if given a git submodule which does not exist
If going back in time in git history, across a commit that introduces a new
submodule, the 'git-submodule.sh' script will fail, causing rebuild to fail.

This is because config-host.mak contains a GIT_SUBMODULES variable that lists
a submodule that only exists in the later commit. config-host.mak won't get
repopulated until config.status is invoked, but make won't get this far due to
the submodule error.

This change makes 'git-submodule.sh' check whether each module is known to git
and drops any which are not present. A warning message will be printed when any
submodule is dropped in this manner.

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 11:05:12 +00:00
Stefan Hajnoczi
ef9115dd7c aio-posix: drop QEMU_AIO_POLL_MAX_NS env var
This hunk should not have been merged but I forgot to remove it.  Let's
remove it before it slips into a QEMU release.

¯\_(ツ)_/¯

Reviewed-by: Thomas Huth <thuth@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20171103154041.12617-1-stefanha@redhat.com
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
2017-11-06 11:04:38 +00:00
Daniel P. Berrange
f62bbee55d build: allow automatic git submodule updates to be disabled
Some people building QEMU use VPATH builds where the source directory is on a
read-only volume. In such a case 'scripts/git-submodules.sh update' will always
fail and users are required to run it manually themselves on their original
writable source directory.

While this is already supported, it is nice to give users a command line flag
to configure to permanently disable automatic submodule updates, as it means
they won't get hard to diagnose failures from git-submodules.sh at an arbitrary
later date.

This patch thus introduces a flag '--disable-git-update' which will prevent
'make' from ever running 'scripts/git-submodules.sh update'. It will still run
the 'status' command to determine if a submodule update is needed, but when it
does this it'll simply stop and print a message instructing the developer what
todo. eg

$ ./configure  --target-list=x86_64-softmmu --disable-git-update
...snip...

$ make
  GEN     config-host.h
  GEN     trace/generated-tcg-tracers.h
  GEN     trace/generated-helpers-wrappers.h
  GEN     trace/generated-helpers.h
  GEN     trace/generated-helpers.c
  GEN     module_block.h

GIT submodule checkout is out of date. Please run
  scripts/git-submodule.sh update ui/keycodemapdb
from the source directory checkout /home/berrange/src/virt/qemu

make: *** [Makefile:31: git-submodule-update] Error 1

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 11:04:36 +00:00
Daniel P. Berrange
96089f6d0e build: don't create temporary files in source dir
There are cases where users do VPATH builds with the source directory being on
a read-only volume. In such a case they have to manually run the command
'git-submodule.sh ...modules...' ahead of time. When checking for status we
should not then write into the source dir.

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 11:04:30 +00:00
Daniel P. Berrange
cc84d63a42 build: allow setting a custom GIT binary for transparent proxying
Some users can't run a bare 'git' command, due to need for a transparent
proxying solution such as 'tsocks'. This adds an argument to configure to
let users specify such a thing:

  ./configure --with-git="tsocks git"

The submodule script is also updated to give the user a hint about using this
flag, if we fail to checkout modules.

Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Reviewed-by: Eric Blake <eblake@redhat.com>
Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
2017-11-06 11:03:45 +00:00
Peter Maydell
ec7a8bf0b8 * Remove legacy KVM PCI device assignment
* Fix qemu-pr-helper.c compilation on older compilers
 -----BEGIN PGP SIGNATURE-----
 
 iQFIBAABCAAyFiEE8TM4V0tmI4mGbHaCv/vSX3jHroMFAln/F6QUHHBib256aW5p
 QHJlZGhhdC5jb20ACgkQv/vSX3jHroM1Nwf/WY/pAgBHX7uST5422O0saVmWLDSf
 knFkm5rLf5OhJ0GXluyk8S4x5lD1sqQfGJPHcr6DCnZHFTznA93UeMa+1IPxYd3X
 gr5J4ANFyHwKZ7jNB/64EuckTMSVyGrbtb4B40FJSyQ3aWvIx09VO7ev4I/Yz89M
 xxbeTM0Y0jNGF87bAnOvZLR42vx6lp/9Z0/mxRMC/CyxHcAk8nCbwh9NhzA4OnPg
 bj2c+pGRa4NCbdK7JE7FgwnM7MQGGiIULuQRf45le1Ybt60fAS/S9kdgqFXNnlyJ
 8MB5Y2IEyarEDu6h6h/CFA2Dvo4PSfktEyICL0QZXtSFZE0kbKvrQxWWyg==
 =1CGc
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/bonzini/tags/for-upstream' into staging

* Remove legacy KVM PCI device assignment
* Fix qemu-pr-helper.c compilation on older compilers

# gpg: Signature made Sun 05 Nov 2017 13:52:36 GMT
# gpg:                using RSA key 0xBFFBD25F78C7AE83
# gpg: Good signature from "Paolo Bonzini <bonzini@gnu.org>"
# gpg:                 aka "Paolo Bonzini <pbonzini@redhat.com>"
# Primary key fingerprint: 46F5 9FBD 57D6 12E7 BFD4  E2F7 7E15 100C CD36 69B1
#      Subkey fingerprint: F133 3857 4B66 2389 866C  7682 BFFB D25F 78C7 AE83

* remotes/bonzini/tags/for-upstream:
  build: disable -Wmissing-braces on older compilers
  pci-assign: Remove

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-06 10:04:16 +00:00
Paolo Bonzini
20bc94a2b8 build: disable -Wmissing-braces on older compilers
GCC 4.9 and newer stopped warning for missing braces around the
"universal" C zero initializer {0}.  One such initializer sneaked
into scsi/qemu-pr-helper.c and is breaking the build with such
older GCC versions.

Detect the lack of support for the idiom, and disable the warning
in that case.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-11-05 14:52:10 +01:00
Paolo Bonzini
ab37bfc7d6 pci-assign: Remove
Legacy PCI device assignment has been removed from Linux in 4.12,
and had been deprecated 2 years ago there.  We can remove it from
QEMU as well.

The ROM loading code was shared with Xen PCI passthrough, so move
it to hw/xen.

Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
2017-11-05 14:52:10 +01:00
Peter Maydell
b33afc4156 One fix for win32/64 cross compiles.
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1
 
 iQEcBAABAgAGBQJZ+wfCAAoJEPvQ2wlanipEW7QH/2acWM0OysndgO7fJFEoCL6L
 uqC8H52nrBESeqzz9JJHVimv73bl5Uogo9gdvB2aoaVpyq4dTl5LP72WVlvx1YsX
 Nxpagf5ilEzRGbneHQtkItIRDEQzJm/76J8bX5dd2gqz572g8OavOr1Thr7FTw1m
 vun+zY5Heujq81XLLScK2Ig2WbI72Zj4KJ8AdwhtvL8H0GbehULhKFiDNhHd9Z8r
 Hy79V9U4nG0bBFQqqithJn2uqvlNY+2seSZRyJg/+42mX3Irxn3gwLeE5BUGOyPw
 6/XjR6m1aoew5OIUqMXeyPZhH680ZqssuYRS2f5afVeAgCYjWaV+KLmPqDVxvBs=
 =bQLe
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/stsquad/tags/pull-ci-updates-for-softfreeze-021117-2' into staging

One fix for win32/64 cross compiles.

# gpg: Signature made Thu 02 Nov 2017 11:55:46 GMT
# gpg:                using RSA key 0xFBD0DB095A9E2A44
# gpg: Good signature from "Alex Bennée (Master Work Key) <alex.bennee@linaro.org>"
# Primary key fingerprint: 6685 AE99 E751 67BC AFC8  DF35 FBD0 DB09 5A9E 2A44

* remotes/stsquad/tags/pull-ci-updates-for-softfreeze-021117-2:
  docker: add python stdlib dependency (required by keycodemapdb)

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-03 10:08:34 +00:00
Peter Maydell
9c4da1fa2b Queued tcg patches
-----BEGIN PGP SIGNATURE-----
 
 iQEcBAABAgAGBQJZ/CrmAAoJEGTfOOivfiFfUP4IALDxb3kXUGYELNfQR8+P1Bnk
 x4p5dbDCfyIvMFGIngbjaCYlv/sMIcY780yQLZN0W+hUfr7//2kRemzNPoGWpY1p
 w/tsKzKn/EIpXoKruD12q5qUL6ceIabwuUdDQ5Ezc4tTAz/Nd1kiMA1IA+7i3Gfb
 E9F/0LbG+wXSTD87A7T754dsSLSszL0RaFwx6nJYxk876CjKv9mjJAPlmA23PKTa
 W8Qsk4+Ou5mP0/jyxBEQ4KAgY+LE2maP///diPuZKy7iQbhWwogga7VX1ek/o+4T
 74J1ye/5SSeISGJpIW18PmR0Vcf44eqz1aMavvFRwIw8Wr6bHQ9mcQlpakWjuWo=
 =ncG6
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/rth/tags/pull-tcg-20171103' into staging

Queued tcg patches

# gpg: Signature made Fri 03 Nov 2017 08:37:58 GMT
# gpg:                using RSA key 0x64DF38E8AF7E215F
# gpg: Good signature from "Richard Henderson <richard.henderson@linaro.org>"
# Primary key fingerprint: 7A48 1E78 868B 4DB6 A85A  05C0 64DF 38E8 AF7E 215F

* remotes/rth/tags/pull-tcg-20171103:
  cpu-exec: Exit exclusive region on longjmp from step_atomic
  tcg/s390x: Use constant pool for prologue
  tcg: Allow constant pool entries in the prologue

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-03 09:31:34 +00:00
Peter Maydell
426eeecdf5 cpu-exec: Exit exclusive region on longjmp from step_atomic
Commit ac03ee5331 narrowed the scope of the exclusive
region so it only covers when we're executing the TB, not when
we're generating it. However it missed that there is more than
one execution path out of cpu_tb_exec -- if the atomic insn
causes an exception then the code will longjmp out, skipping
the code to end the exclusive region. This causes QEMU to hang
the next time the CPU calls start_exclusive(), waiting for
itself to exit the region.

Move the "end the region" code out to the end of the
function so that it is run for both normal exit and also
for exit-via-longjmp. We have to use a volatile bool flag
to decide whether we need to end the region, because we
can longjump out of the codegen as well as the execution.

(For some reason this only reproduces for me with a clang
optimized build, not a gcc debug build.)

Reviewed-by: Emilio G. Cota <cota@braap.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Fixes: ac03ee5331
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Message-Id: <1509640536-32160-1-git-send-email-peter.maydell@linaro.org>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2017-11-03 09:34:21 +01:00
Richard Henderson
ba2c747992 tcg/s390x: Use constant pool for prologue
Rather than have separate code only used for guest_base,
rely on a recent change to handle constant pool entries.

Cc: qemu-s390x@nongnu.org
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2017-11-03 09:33:45 +01:00
Richard Henderson
5b38ee3161 tcg: Allow constant pool entries in the prologue
Both ARMv6 and AArch64 currently may drop complex guest_base values
into the constant pool.  But generic code wasn't expecting that, and
the pool is not emitted.  Correct that.

Tested-by: Emilio G. Cota <cota@braap.org>
Tested-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Reported-by: Laurent Desnogues <laurent.desnogues@gmail.com>
Signed-off-by: Richard Henderson <richard.henderson@linaro.org>
2017-11-03 09:33:45 +01:00
Kamil Rytarowski
094611b426 oslib-posix: Use sysctl(2) call to resolve exec_dir on NetBSD
NetBSD 8.0(beta) ships with KERN_PROC_PATHNAME in sysctl(2).
Older NetBSD versions can use argv[0] parsing fallback.

This code section is partly shared with FreeBSD.

Signed-off-by: Kamil Rytarowski <n54@gmx.com>
Message-id: 20171028194833.23858-1-n54@gmx.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-02 16:19:34 +00:00
John Arbuckle
fa73e14625 ui/cocoa.m: Fix console selection keys
Fix console selection keys so that the right console is selected.

Signed-off-by: John Arbuckle <programmingkidx@gmail.com>
Message-id: 20171005190449.15591-1-programmingkidx@gmail.com
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-02 11:50:20 +00:00
Philippe Mathieu-Daudé
e58c1f9b35 docker: add python stdlib dependency (required by keycodemapdb)
Since 927128222b QEMU depends of keycodemapdb, which uses the python 'csv'
module from stdlib to parse keymaps.csv.

Without this package the build fails:

    GEN     ui/input-keymap-linux-to-qcode.c
  Traceback (most recent call last):
    File "ui/keycodemapdb/tools/keymap-gen", line 15, in <module>
      import csv
  ImportError: No module named csv
    GEN     ui/input-keymap-qcode-to-qnum.c
  Traceback (most recent call last):
    File "ui/keycodemapdb/tools/keymap-gen", line 15, in <module>
      import csv
  ImportError: No module named csv
  [...]
    CC      ui/input-keymap.o
  ui/input-keymap.c:8:44: fatal error: ui/input-keymap-linux-to-qcode.c: No such file or directory
  make: *** [ui/input-keymap.o] Error 1

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
2017-11-02 11:46:41 +00:00
Peter Maydell
8a8c493942 -----BEGIN PGP SIGNATURE-----
iQIcBAABAgAGBQJZ+QC+AAoJEH3vgQaq/DkO5OoP/Auic16eyIvEjCKYKysCbFKH
 GPXZnd62w5y3bb4oCmMN7RTlnMD0brZoR8iOcmwhO7M8JcrduDqL0oos0KCum0CX
 MAhQW4jEIg7LqNgbts6Fz3d0Q9VEAnm/7Slyc9HxVy/Cjiut3dqFQcUUpindSgXR
 tEFRJ6NybYEK4C3EN2Sv4xzXX97jpJ2e4SBxZWRsZCbLax74kYzhO3sPdrKfKpkm
 Wq8KgfaebmYYF0rpuK4k9h5lA0hBwvithdICiFd94wA0qpczwyx3lYq/rdYSYc75
 5zI+TtwIbBLPQntwJvwO0sDww6ILlad+j0N39QcsOfmm5B3BI5os2C8L/A8dtCeQ
 alyPY3z8r0paeBEpHexwbC9qzSz5BV10jcvEB+wb0T1LHZYueO+Zo43PVFreiDfD
 tOXAeeBiPZ/AnvX/IqwesguxOOMgb1YAf/tf+HXFqGBq7mnmk6FgVobrsEoN2Mrh
 GXZl2TvA23MW4r3xUCF8LL2HnBP0XiJNvHLHpFf/cGnqz6vqH764QLMSKoHCexJ3
 JnbPIqC7fHV2si6BWJ417Fe8z86AmwmKw7S+VUiYwoXHBt9z4ThERVUAq/pfcztR
 +H3GjLhJTFue/01j2ObfmofEBemUZexpzHLZ+YfmH3bQv0em0ZHC25nCxi2RF3CB
 fNaBx4zR/MfCIbXe1XaM
 =Fgo7
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/jnsnow/tags/ide-pull-request' into staging

# gpg: Signature made Tue 31 Oct 2017 23:01:18 GMT
# gpg:                using RSA key 0x7DEF8106AAFC390E
# gpg: Good signature from "John Snow (John Huston) <jsnow@redhat.com>"
# Primary key fingerprint: FAEB 9711 A12C F475 812F  18F2 88A9 064D 1835 61EB
#      Subkey fingerprint: F9B7 ABDB BCAC DF95 BE76  CBD0 7DEF 8106 AAFC 390E

* remotes/jnsnow/tags/ide-pull-request:
  ide: avoid referencing NULL dev in rotational rate setting
  hw/ide/ahci: Move allwinner code into a separate file

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-11-02 10:11:37 +00:00
Daniel P. Berrange
96f43c2b0a ide: avoid referencing NULL dev in rotational rate setting
The 'dev' variable can be NULL when the guest OS calls identify on an IDE
unit that does not have a drive attached to it.

Signed-off-by: Daniel P. Berrange <berrange@redhat.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Message-id: 20171020091403.1479-1-berrange@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
2017-10-31 18:00:03 -04:00
Peter Maydell
47ba789c97 qemu-sparc update
-----BEGIN PGP SIGNATURE-----
 Version: GnuPG v1.4.12 (GNU/Linux)
 
 iQEcBAABAgAGBQJZ+LYvAAoJEFvCxW+uDzIfcUMIALx38HW26FQVPXXepobzFeNL
 URV1pePXGMg4FZKJ1l0j3rcP5J24DyxNujUR0nJP4bUi/tqzypL1FBc9IaEp3KPz
 oBpionfvtHy0vet2ijZuC+qmEVkJC/TsXVbS5vtSaFs2vNhWRAQ981A3w7tdKkxb
 C860VqoDmBb2skjg4yoPx6Y79lB9aGtzDUluRZfv6eY9/Ybj53ro/Mlf9pW8CmeJ
 cqsFEOHYyggUM5VEfoJL0sFVX/UPBabFJncnoUoHwqZjtHRMEPgf/6dXogbOf/tZ
 dUKUXSzGvsBa5uFLAtovPAvikvEOTAavkqkjwZqU1j7/HUKRMlTEHwXEjKNHlq8=
 =HIuv
 -----END PGP SIGNATURE-----

Merge remote-tracking branch 'remotes/mcayland/tags/qemu-sparc-signed' into staging

qemu-sparc update

# gpg: Signature made Tue 31 Oct 2017 17:43:11 GMT
# gpg:                using RSA key 0x5BC2C56FAE0F321F
# gpg: Good signature from "Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>"
# Primary key fingerprint: CC62 1AB9 8E82 200D 915C  C9C4 5BC2 C56F AE0F 321F

* remotes/mcayland/tags/qemu-sparc-signed:
  sun4m: change TYPE_SUN4M_IOMMU macro from "iommu" to "sun4m-iommu"
  sun4m_iommu: remove legacy sparc_iommu_memory_rw() function
  sparc32_dma: switch over to using IOMMU memory region and DMA API
  sun4m: implement IOMMU translation using IOMMU memory region
  sparc32_dma: add len to esp/le DMA memory tracing
  sparc32_dma: remove is_ledma hack and replace with memory region alias
  sparc32_dma: introduce new SPARC32_DMA type container object
  sparc32_dma: make lance device child of ledma device
  lance: move TYPE_LANCE and SysBusPCNetState from lance.c to lance.h
  sparc32_dma: make esp device child of espdma device
  esp: move TYPE_ESP and SysBusESPState from esp.c to esp.h
  sparc32_dma: use object link instead of qdev property to pass IOMMU reference
  sun4m_iommu: move TYPE_SUN4M_IOMMU declaration to sun4m.h
  sun4m: move DMA device wiring from sparc32_dma_init() to sun4m_hw_init()
  sparc32_dma: move type declarations from sparc32_dma.c to sparc32_dma.h
  sparc32_dma: split esp and le into separate DMA devices
  sparc32_dma: rename SPARC32_DMA type to SPARC32_DMA_DEVICE

Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
2017-10-31 18:09:11 +00:00
Thomas Huth
2585c67983 hw/ide/ahci: Move allwinner code into a separate file
The allwinner code is only needed for the allwinner board (for which
we also have a separate CONFIG_ALLWINNER_A10 config switch), so it
does not make sense that we compile this for all the other boards
that need AHCI, too. Let's move it to a separate file that is only
compiled when CONFIG_ALLWINNER_A10 is set.

Signed-off-by: Thomas Huth <thuth@redhat.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-id: 1508784509-29377-1-git-send-email-thuth@redhat.com
Signed-off-by: John Snow <jsnow@redhat.com>
2017-10-31 13:48:59 -04:00
Mark Cave-Ayland
badd3d62c6 sun4m: change TYPE_SUN4M_IOMMU macro from "iommu" to "sun4m-iommu"
This is a legacy artifact from when the sun4m IOMMU implementation was
the only IOMMU available within QEMU.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2017-10-31 17:25:37 +00:00
Mark Cave-Ayland
3cc71c7992 sun4m_iommu: remove legacy sparc_iommu_memory_rw() function
With the switch to the IOMMU memory region and DMA API, this is no longer
required.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2017-10-31 17:25:37 +00:00
Mark Cave-Ayland
c413e9a426 sparc32_dma: switch over to using IOMMU memory region and DMA API
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2017-10-31 17:25:37 +00:00
Mark Cave-Ayland
8413846631 sun4m: implement IOMMU translation using IOMMU memory region
Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
2017-10-31 17:25:37 +00:00
Mark Cave-Ayland
331b7fc156 sparc32_dma: add len to esp/le DMA memory tracing
This is surprisingly useful when trying to debug DMA issues.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:37 +00:00
Mark Cave-Ayland
4ca3d368d2 sparc32_dma: remove is_ledma hack and replace with memory region alias
This hack originated from before the memory region API was introduced, and
increased the size of the ledma DMA device to capture incorrect accesses
beyond the end of the ledma device. A full analysis can be found on Artyom's
blog at http://tyom.blogspot.co.uk/2010/10/bug-in-all-solaris-versions-after-57.html.

With the memory API we can now simply alias the incorrect access onto its
intended destination allowing us to remove the hack.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
6aa62ed6b8 sparc32_dma: introduce new SPARC32_DMA type container object
Create a new SPARC32_DMA container object (including an appropriate container
memory region) and add instances of the SPARC32_ESPDMA_DEVICE and
SPARC32_LEDMA_DEVICE as child objects. The benefit is that most of the gpio
wiring complexity between esp/espdma and lance/ledma is now hidden within the
SPARC32_DMA realize function.

Since the sun4m IOMMU is already QOMified we can find a reference to
it using object_resolve_path_type() allowing us to completely remove all external
references to the iommu pointer.

Finally we rework sun4m's sparc32_dma_init() to invoke the new SPARC32_DMA object
and wire up the remaining board memory regions/IRQs.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
e6ca02a46a sparc32_dma: make lance device child of ledma device
This makes it possible to reference the lance device from the ledma device as
required.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
76d28ca765 lance: move TYPE_LANCE and SysBusPCNetState from lance.c to lance.h
This enables them to be used outside of lance.c. We also update the comment to
refer to the SPARC32 lance device rather than the AMD PCNet-II device (of which
lance is a register-compatible subset).

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
CC: Jason Wang <jasowang@redhat.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
7f773ff5d0 sparc32_dma: make esp device child of espdma device
This makes it possible to reference the esp device from the espdma device as
required, and by wiring up the device ourselves in sun4m.c we can drop use
of the esp_init() function.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Acked-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
1b13a60c1c esp: move TYPE_ESP and SysBusESPState from esp.c to esp.h
This enables them to be used outside of esp.c.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
CC: Paolo Bonzini <pbonzini@redhat.com>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:36 +00:00
Mark Cave-Ayland
f542ad0388 sparc32_dma: use object link instead of qdev property to pass IOMMU reference
This enables us to remove the last remaining (opaque) qdev property. Whilst we
are here, also update iommu_init() to use TYPE_SUN4M_IOMMU instead of a
hardcoded string.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:35 +00:00
Mark Cave-Ayland
9227f296a9 sun4m_iommu: move TYPE_SUN4M_IOMMU declaration to sun4m.h
This is in preparation to allow the type to be used elsewhere.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:35 +00:00
Mark Cave-Ayland
9540619d82 sun4m: move DMA device wiring from sparc32_dma_init() to sun4m_hw_init()
By using the sysbus interface it is possible to wire up the esp/le devices
to the sun4m DMA controller directly during sun4m_hw_init() instead of
passing qemu_irqs into the sparc32_dma_init() function.

This is an intermediate step to allow further reorganisation as more logic
is moved into the relevant SPARC32 DMA devices; there will be a final
refactoring of sparc32_dma_init() once this work is complete.

Signed-off-by: Mark Cave-Ayland <mark.cave-ayland@ilande.co.uk>
Reviewed-by: Artyom Tarasenko <atar4qemu@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
2017-10-31 17:25:35 +00:00