Merge tag 'drm-for-v4.15' of git://people.freedesktop.org/~airlied/linux
[sfrench/cifs-2.6.git] / drivers / gpu / drm / nouveau / include / nvkm / core / os.h
index fc9e8cd360877dda261c280d5d37e5c253f8dd6c..445602d1e8d3a987396807c587860c73a8eeb408 100644 (file)
@@ -2,4 +2,23 @@
 #ifndef __NVKM_OS_H__
 #define __NVKM_OS_H__
 #include <nvif/os.h>
+
+#ifdef __BIG_ENDIAN
+#define ioread16_native ioread16be
+#define iowrite16_native iowrite16be
+#define ioread32_native  ioread32be
+#define iowrite32_native iowrite32be
+#else
+#define ioread16_native ioread16
+#define iowrite16_native iowrite16
+#define ioread32_native  ioread32
+#define iowrite32_native iowrite32
+#endif
+
+#define iowrite64_native(v,p) do {                                             \
+       u32 __iomem *_p = (u32 __iomem *)(p);                                  \
+       u64 _v = (v);                                                          \
+       iowrite32_native(lower_32_bits(_v), &_p[0]);                           \
+       iowrite32_native(upper_32_bits(_v), &_p[1]);                           \
+} while(0)
 #endif