fw_cfg: fix sparse warnings in fw_cfg_sel_endianness()
authorMarc-André Lureau <marcandre.lureau@redhat.com>
Wed, 28 Feb 2018 15:06:05 +0000 (16:06 +0100)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 20 Mar 2018 01:17:37 +0000 (03:17 +0200)
commit8d59d5bd8f088be1366f69590729aaef2f8cb17b
tree47ff380353af03da24c13f63b3a5c4dfa6963ca6
parentc8f06a066816b17f3d1c07da9a5c4f387871c590
fw_cfg: fix sparse warnings in fw_cfg_sel_endianness()

Dispatch to the appropriate iowrite() instead of casting restricted
type to u16.

- if fw_cfg_is_mmio:
  before: iowrite16(cpu_to_be16(key))
  after: iowrite16be(key)
- if !fw_cfg_is_mmio:
  before: iowrite16(cpu_to_le16(key))
  after: iowrite16(key)
  which is equivalent on little-endian systems, where fw_cfg IO is supported.

Fixes:
$ make C=1 CF=-D__CHECK_ENDIAN__ drivers/firmware/qemu_fw_cfg.o

drivers/firmware/qemu_fw_cfg.c:55:33: warning: restricted __be16 degrades to integer
drivers/firmware/qemu_fw_cfg.c:55:52: warning: restricted __le16 degrades to integer

Signed-off-by: Marc-André Lureau <marcandre.lureau@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/firmware/qemu_fw_cfg.c