summaryrefslogtreecommitdiffstats
path: root/include/linux/vringh.h
diff options
context:
space:
mode:
authorGreg Kurz <gkurz@linux.vnet.ibm.com>2015-04-24 08:24:58 -0400
committerMichael S. Tsirkin <mst@redhat.com>2015-06-01 09:48:52 -0400
commit5da7b160b36a42f161980c5e20d3960d6d076fb8 (patch)
tree3138a9e37c4920a8888414d59f699a835a751d51 /include/linux/vringh.h
parent5b11e15f24744d2ea6210451529d2b180337965a (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.h17
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
229static inline bool vringh_is_little_endian(const struct vringh *vrh)
230{
231 return vrh->little_endian;
232}
233
229static inline u16 vringh16_to_cpu(const struct vringh *vrh, __virtio16 val) 234static 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
234static inline __virtio16 cpu_to_vringh16(const struct vringh *vrh, u16 val) 239static 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
239static inline u32 vringh32_to_cpu(const struct vringh *vrh, __virtio32 val) 244static 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
244static inline __virtio32 cpu_to_vringh32(const struct vringh *vrh, u32 val) 249static 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
249static inline u64 vringh64_to_cpu(const struct vringh *vrh, __virtio64 val) 254static 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
254static inline __virtio64 cpu_to_vringh64(const struct vringh *vrh, u64 val) 259static 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 */