diff options
author | Peter Maydell <peter.maydell@linaro.org> | 2016-04-13 20:35:23 +0100 |
---|---|---|
committer | Peter Maydell <peter.maydell@linaro.org> | 2016-04-13 20:35:23 +0100 |
commit | 33e570288985611345c7d6e073a4b258c97573a8 (patch) | |
tree | 2d1953ee05dc1211a5efa7167d06de61290da70b /include | |
parent | 8b4aaba736e55c8ab6d71350f850a6642f0165b9 (diff) | |
parent | b065e275a8066c3ec478f326f39c5fc3c9db103c (diff) |
Merge remote-tracking branch 'remotes/kraxel/tags/pull-input-20160413-1' into staging
virtio-input; live migration support, various bugfixes.
# gpg: Signature made Wed 13 Apr 2016 16:41:27 BST using RSA key ID D3E87138
# gpg: Good signature from "Gerd Hoffmann (work) <kraxel@redhat.com>"
# gpg: aka "Gerd Hoffmann <gerd@kraxel.org>"
# gpg: aka "Gerd Hoffmann (private) <kraxel@gmail.com>"
* remotes/kraxel/tags/pull-input-20160413-1:
virtio-input: support absolute axis config in pass-through
input-linux: refine mouse detection
virtio-input: fix emulated tablet axis ranges
virtio-input: add live migration support
virtio-input: implement pass-through evdev writes
virtio-input: retrieve EV_LED host config bits
virtio-input: add missing key mappings
move const_le{16, 23} to qemu/bswap.h, add comment
virtio-input: add parenthesis to const_le{16, 32}
Signed-off-by: Peter Maydell <peter.maydell@linaro.org>
Diffstat (limited to 'include')
-rw-r--r-- | include/hw/virtio/virtio-input.h | 17 | ||||
-rw-r--r-- | include/qemu/bswap.h | 19 |
2 files changed, 22 insertions, 14 deletions
diff --git a/include/hw/virtio/virtio-input.h b/include/hw/virtio/virtio-input.h index af1c207ab1..bddbd4b287 100644 --- a/include/hw/virtio/virtio-input.h +++ b/include/hw/virtio/virtio-input.h @@ -13,20 +13,6 @@ typedef struct virtio_input_absinfo virtio_input_absinfo; typedef struct virtio_input_config virtio_input_config; typedef struct virtio_input_event virtio_input_event; -#if defined(HOST_WORDS_BIGENDIAN) -# define const_le32(_x) \ - (((_x & 0x000000ffU) << 24) | \ - ((_x & 0x0000ff00U) << 8) | \ - ((_x & 0x00ff0000U) >> 8) | \ - ((_x & 0xff000000U) >> 24)) -# define const_le16(_x) \ - (((_x & 0x00ff) << 8) | \ - ((_x & 0xff00) >> 8)) -#else -# define const_le32(_x) (_x) -# define const_le16(_x) (_x) -#endif - /* ----------------------------------------------------------------- */ /* qemu internals */ @@ -111,6 +97,9 @@ struct VirtIOInputHost { void virtio_input_send(VirtIOInput *vinput, virtio_input_event *event); void virtio_input_init_config(VirtIOInput *vinput, virtio_input_config *config); +virtio_input_config *virtio_input_find_config(VirtIOInput *vinput, + uint8_t select, + uint8_t subsel); void virtio_input_add_config(VirtIOInput *vinput, virtio_input_config *config); void virtio_input_idstr_config(VirtIOInput *vinput, diff --git a/include/qemu/bswap.h b/include/qemu/bswap.h index fcedf0d249..ce3c42e4d9 100644 --- a/include/qemu/bswap.h +++ b/include/qemu/bswap.h @@ -125,6 +125,25 @@ static inline uint32_t qemu_bswap_len(uint32_t value, int len) return bswap32(value) >> (32 - 8 * len); } +/* + * Same as cpu_to_le{16,23}, except that gcc will figure the result is + * a compile-time constant if you pass in a constant. So this can be + * used to initialize static variables. + */ +#if defined(HOST_WORDS_BIGENDIAN) +# define const_le32(_x) \ + ((((_x) & 0x000000ffU) << 24) | \ + (((_x) & 0x0000ff00U) << 8) | \ + (((_x) & 0x00ff0000U) >> 8) | \ + (((_x) & 0xff000000U) >> 24)) +# define const_le16(_x) \ + ((((_x) & 0x00ff) << 8) | \ + (((_x) & 0xff00) >> 8)) +#else +# define const_le32(_x) (_x) +# define const_le16(_x) (_x) +#endif + /* Unions for reinterpreting between floats and integers. */ typedef union { |