forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-11 04dd17822334871b23ea2862f7798fb0e0007777
kernel/drivers/gpu/drm/nouveau/nvkm/subdev/mmu/ummu.c
....@@ -111,15 +111,17 @@
111111 } *args = argv;
112112 const u8 *kind = NULL;
113113 int ret = -ENOSYS, count = 0;
114
+ u8 kind_inv = 0;
114115
115116 if (mmu->func->kind)
116
- kind = mmu->func->kind(mmu, &count);
117
+ kind = mmu->func->kind(mmu, &count, &kind_inv);
117118
118119 if (!(ret = nvif_unpack(ret, &argv, &argc, args->v0, 0, 0, true))) {
119120 if (argc != args->v0.count * sizeof(*args->v0.data))
120121 return -EINVAL;
121122 if (args->v0.count > count)
122123 return -EINVAL;
124
+ args->v0.kind_inv = kind_inv;
123125 memcpy(args->v0.data, kind, args->v0.count);
124126 } else
125127 return ret;
....@@ -157,9 +159,10 @@
157159 struct nvkm_mmu *mmu = device->mmu;
158160 struct nvkm_ummu *ummu;
159161 int ret = -ENOSYS, kinds = 0;
162
+ u8 unused = 0;
160163
161164 if (mmu->func->kind)
162
- mmu->func->kind(mmu, &kinds);
165
+ mmu->func->kind(mmu, &kinds, &unused);
163166
164167 if (!(ret = nvif_unpack(ret, &argv, &argc, args->v0, 0, 0, false))) {
165168 args->v0.dmabits = mmu->dma_bits;