diff options
author | Greg Kurz <gkurz@linux.vnet.ibm.com> | 2015-04-24 08:24:58 -0400 |
---|---|---|
committer | Michael S. Tsirkin <mst@redhat.com> | 2015-06-01 09:48:52 -0400 |
commit | 5da7b160b36a42f161980c5e20d3960d6d076fb8 (patch) | |
tree | 3138a9e37c4920a8888414d59f699a835a751d51 /include/linux/vringh.h | |
parent | 5b11e15f24744d2ea6210451529d2b180337965a (diff) |
vringh: introduce vringh_is_little_endian() helper
Signed-off-by: Greg Kurz <gkurz@linux.vnet.ibm.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
Acked-by: Cornelia Huck <cornelia.huck@de.ibm.com>
Reviewed-by: David Gibson <david@gibson.dropbear.id.au>
Diffstat (limited to 'include/linux/vringh.h')
-rw-r--r-- | include/linux/vringh.h | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/include/linux/vringh.h b/include/linux/vringh.h index a3fa537e717a..3ed62efc2bc5 100644 --- a/include/linux/vringh.h +++ b/include/linux/vringh.h | |||
@@ -226,33 +226,38 @@ static inline void vringh_notify(struct vringh *vrh) | |||
226 | vrh->notify(vrh); | 226 | vrh->notify(vrh); |
227 | } | 227 | } |
228 | 228 | ||
229 | static inline bool vringh_is_little_endian(const struct vringh *vrh) | ||
230 | { | ||
231 | return vrh->little_endian; | ||
232 | } | ||
233 | |||
229 | static inline u16 vringh16_to_cpu(const struct vringh *vrh, __virtio16 val) | 234 | static inline u16 vringh16_to_cpu(const struct vringh *vrh, __virtio16 val) |
230 | { | 235 | { |
231 | return __virtio16_to_cpu(vrh->little_endian, val); | 236 | return __virtio16_to_cpu(vringh_is_little_endian(vrh), val); |
232 | } | 237 | } |
233 | 238 | ||
234 | static inline __virtio16 cpu_to_vringh16(const struct vringh *vrh, u16 val) | 239 | static inline __virtio16 cpu_to_vringh16(const struct vringh *vrh, u16 val) |
235 | { | 240 | { |
236 | return __cpu_to_virtio16(vrh->little_endian, val); | 241 | return __cpu_to_virtio16(vringh_is_little_endian(vrh), val); |
237 | } | 242 | } |
238 | 243 | ||
239 | static inline u32 vringh32_to_cpu(const struct vringh *vrh, __virtio32 val) | 244 | static inline u32 vringh32_to_cpu(const struct vringh *vrh, __virtio32 val) |
240 | { | 245 | { |
241 | return __virtio32_to_cpu(vrh->little_endian, val); | 246 | return __virtio32_to_cpu(vringh_is_little_endian(vrh), val); |
242 | } | 247 | } |
243 | 248 | ||
244 | static inline __virtio32 cpu_to_vringh32(const struct vringh *vrh, u32 val) | 249 | static inline __virtio32 cpu_to_vringh32(const struct vringh *vrh, u32 val) |
245 | { | 250 | { |
246 | return __cpu_to_virtio32(vrh->little_endian, val); | 251 | return __cpu_to_virtio32(vringh_is_little_endian(vrh), val); |
247 | } | 252 | } |
248 | 253 | ||
249 | static inline u64 vringh64_to_cpu(const struct vringh *vrh, __virtio64 val) | 254 | static inline u64 vringh64_to_cpu(const struct vringh *vrh, __virtio64 val) |
250 | { | 255 | { |
251 | return __virtio64_to_cpu(vrh->little_endian, val); | 256 | return __virtio64_to_cpu(vringh_is_little_endian(vrh), val); |
252 | } | 257 | } |
253 | 258 | ||
254 | static inline __virtio64 cpu_to_vringh64(const struct vringh *vrh, u64 val) | 259 | static inline __virtio64 cpu_to_vringh64(const struct vringh *vrh, u64 val) |
255 | { | 260 | { |
256 | return __cpu_to_virtio64(vrh->little_endian, val); | 261 | return __cpu_to_virtio64(vringh_is_little_endian(vrh), val); |
257 | } | 262 | } |
258 | #endif /* _LINUX_VRINGH_H */ | 263 | #endif /* _LINUX_VRINGH_H */ |