#define nvkm_uchan(p) …
#include "priv.h"
#include "cgrp.h"
#include "chan.h"
#include "chid.h"
#include "runl.h"
#include <core/gpuobj.h>
#include <core/oproxy.h>
#include <subdev/mmu.h>
#include <engine/dma.h>
#include <nvif/if0020.h>
struct nvkm_uchan { … };
static int
nvkm_uchan_uevent(struct nvkm_object *object, void *argv, u32 argc, struct nvkm_uevent *uevent)
{ … }
struct nvkm_uobj { … };
static int
nvkm_uchan_object_fini_1(struct nvkm_oproxy *oproxy, bool suspend)
{ … }
static int
nvkm_uchan_object_init_0(struct nvkm_oproxy *oproxy)
{ … }
static void
nvkm_uchan_object_dtor(struct nvkm_oproxy *oproxy)
{ … }
static const struct nvkm_oproxy_func
nvkm_uchan_object = …;
static int
nvkm_uchan_object_new(const struct nvkm_oclass *oclass, void *argv, u32 argc,
struct nvkm_object **pobject)
{ … }
static int
nvkm_uchan_sclass(struct nvkm_object *object, int index, struct nvkm_oclass *oclass)
{ … }
static int
nvkm_uchan_map(struct nvkm_object *object, void *argv, u32 argc,
enum nvkm_object_map *type, u64 *addr, u64 *size)
{ … }
static int
nvkm_uchan_fini(struct nvkm_object *object, bool suspend)
{ … }
static int
nvkm_uchan_init(struct nvkm_object *object)
{ … }
static void *
nvkm_uchan_dtor(struct nvkm_object *object)
{ … }
static const struct nvkm_object_func
nvkm_uchan = …;
struct nvkm_chan *
nvkm_uchan_chan(struct nvkm_object *object)
{ … }
int
nvkm_uchan_new(struct nvkm_fifo *fifo, struct nvkm_cgrp *cgrp, const struct nvkm_oclass *oclass,
void *argv, u32 argc, struct nvkm_object **pobject)
{ … }