1 /* SPDX-License-Identifier: MIT */
7 #define ioread16_native ioread16be
8 #define iowrite16_native iowrite16be
9 #define ioread32_native ioread32be
10 #define iowrite32_native iowrite32be
12 #define ioread16_native ioread16
13 #define iowrite16_native iowrite16
14 #define ioread32_native ioread32
15 #define iowrite32_native iowrite32
18 #define iowrite64_native(v,p) do { \
19 u32 __iomem *_p = (u32 __iomem *)(p); \
21 iowrite32_native(lower_32_bits(_v), &_p[0]); \
22 iowrite32_native(upper_32_bits(_v), &_p[1]); \
31 nvkm_blob_dtor(struct nvkm_blob *blob)
38 #define nvkm_list_find_next(p,h,m,c) ({ \
39 typeof(p) _p = NULL; \
40 list_for_each_entry_continue(p, (h), m) { \
48 #define nvkm_list_find(p,h,m,c) \
49 (p = container_of((h), typeof(*p), m), nvkm_list_find_next(p, (h), m, (c)))
50 #define nvkm_list_foreach(p,h,m,c) \
51 for (p = nvkm_list_find(p, (h), m, (c)); p; p = nvkm_list_find_next(p, (h), m, (c)))