Lines Matching +full:a +full:- +full:f
1 /* SPDX-License-Identifier: MIT */
17 * - added support for tiled system memory buffer objects
18 * - added support for NOUVEAU_GETPARAM_GRAPH_UNITS on [nvc0,nve0].
19 * - added support for compressed memory storage types on [nvc0,nve0].
20 * - added support for software methods 0x600,0x644,0x6ac on nvc0
25 * - fixes multiple bugs in flip completion events and timestamping
27 * - object api exposed to userspace
28 * - fermi,kepler,maxwell zbc
30 * - allow concurrent access to bo's mapped read/write.
32 * - add NOUVEAU_GEM_DOMAIN_COHERENT flag
34 * - NVIF ABI modified, safe because only (current) users are test
37 * - implemented limited ABI16/NVIF interop
126 return cli ? cli->uvmm.ptr : NULL; in nouveau_cli_uvmm()
134 mutex_lock(&cli->mutex); in nouveau_cli_uvmm_locked()
136 mutex_unlock(&cli->mutex); in nouveau_cli_uvmm_locked()
148 return &uvmm->vmm; in nouveau_cli_vmm()
150 if (cli->svm.cli) in nouveau_cli_vmm()
151 return &cli->svm; in nouveau_cli_vmm()
153 return &cli->vmm; in nouveau_cli_vmm()
162 cli->uvmm.disabled = true; in __nouveau_cli_disable_uvmm_noinit()
168 mutex_lock(&cli->mutex); in nouveau_cli_disable_uvmm_noinit()
170 mutex_unlock(&cli->mutex); in nouveau_cli_disable_uvmm_noinit()
179 return fpriv ? fpriv->driver_priv : NULL; in nouveau_cli()
195 return ERR_PTR(-EOVERFLOW); in u_memcpya()
257 int chan_nr; /* 0 if per-runlist CHIDs. */
268 /* context for accelerated drm-internal operations */
274 /* nv10-nv40 tiling regions */
314 return dev->dev_private; in nouveau_drm()
320 struct nvif_mmu *mmu = &drm->client.mmu; in nouveau_drm_use_coherent_gpu_mapping()
321 return !(mmu->type[drm->ttm.type_host[0]].type & NVIF_MEM_UNCACHED); in nouveau_drm_use_coherent_gpu_mapping()
335 #define NV_PRINTK(l,c,f,a...) do { \ argument
337 dev_##l(_cli->drm->dev->dev, "%s: "f, _cli->name, ##a); \
340 #define NV_PRINTK_(l,drm,f,a...) do { \ argument
341 dev_##l((drm)->nvkm->dev, "drm: "f, ##a); \
343 #define NV_FATAL(drm,f,a...) NV_PRINTK_(crit, (drm), f, ##a) argument
344 #define NV_ERROR(drm,f,a...) NV_PRINTK_(err, (drm), f, ##a) argument
345 #define NV_WARN(drm,f,a...) NV_PRINTK_(warn, (drm), f, ##a) argument
346 #define NV_INFO(drm,f,a...) NV_PRINTK_(info, (drm), f, ##a) argument
348 #define NV_DEBUG(drm,f,a...) do { \ argument
350 NV_PRINTK_(info, (drm), f, ##a); \
352 #define NV_ATOMIC(drm,f,a...) do { \ argument
354 NV_PRINTK_(info, (drm), f, ##a); \
357 #define NV_PRINTK_ONCE(l,c,f,a...) NV_PRINTK(l##_once,c,f, ##a) argument
359 #define NV_ERROR_ONCE(drm,f,a...) NV_PRINTK_ONCE(err, &(drm)->client, f, ##a) argument
360 #define NV_WARN_ONCE(drm,f,a...) NV_PRINTK_ONCE(warn, &(drm)->client, f, ##a) argument
361 #define NV_INFO_ONCE(drm,f,a...) NV_PRINTK_ONCE(info, &(drm)->client, f, ##a) argument
367 * These accessors are used in a few places (mostly older code paths)
368 * to get direct access to NVKM structures, where a more well-defined
372 * This is especially important when considering GSP-RM, as a lot the
374 * the GSP-RM paths to be bootstrapped.
387 return drm->nvkm; in nvxx_device()
390 #define nvxx_bios(a) nvxx_device(a)->bios argument
391 #define nvxx_fb(a) nvxx_device(a)->fb argument
392 #define nvxx_gpio(a) nvxx_device(a)->gpio argument
393 #define nvxx_clk(a) nvxx_device(a)->clk argument
394 #define nvxx_i2c(a) nvxx_device(a)->i2c argument
395 #define nvxx_iccsense(a) nvxx_device(a)->iccsense argument
396 #define nvxx_therm(a) nvxx_device(a)->therm argument
397 #define nvxx_volt(a) nvxx_device(a)->volt argument
401 #define nvxx_gr(a) nvxx_device(a)->gr argument