#define nvkm_udevice(p) …
#include "priv.h"
#include "ctrl.h"
#include <core/client.h>
#include <subdev/fb.h>
#include <subdev/instmem.h>
#include <subdev/timer.h>
#include <nvif/class.h>
#include <nvif/cl0080.h>
#include <nvif/unpack.h>
struct nvkm_udevice { … };
static int
nvkm_udevice_info_subdev(struct nvkm_device *device, u64 mthd, u64 *data)
{ … }
static void
nvkm_udevice_info_v1(struct nvkm_device *device,
struct nv_device_info_v1_data *args)
{ … }
static int
nvkm_udevice_info(struct nvkm_udevice *udev, void *data, u32 size)
{ … }
static int
nvkm_udevice_time(struct nvkm_udevice *udev, void *data, u32 size)
{ … }
static int
nvkm_udevice_mthd(struct nvkm_object *object, u32 mthd, void *data, u32 size)
{ … }
static int
nvkm_udevice_rd08(struct nvkm_object *object, u64 addr, u8 *data)
{ … }
static int
nvkm_udevice_rd16(struct nvkm_object *object, u64 addr, u16 *data)
{ … }
static int
nvkm_udevice_rd32(struct nvkm_object *object, u64 addr, u32 *data)
{ … }
static int
nvkm_udevice_wr08(struct nvkm_object *object, u64 addr, u8 data)
{ … }
static int
nvkm_udevice_wr16(struct nvkm_object *object, u64 addr, u16 data)
{ … }
static int
nvkm_udevice_wr32(struct nvkm_object *object, u64 addr, u32 data)
{ … }
static int
nvkm_udevice_map(struct nvkm_object *object, void *argv, u32 argc,
enum nvkm_object_map *type, u64 *addr, u64 *size)
{ … }
static int
nvkm_udevice_fini(struct nvkm_object *object, bool suspend)
{ … }
static int
nvkm_udevice_init(struct nvkm_object *object)
{ … }
static int
nvkm_udevice_child_new(const struct nvkm_oclass *oclass,
void *data, u32 size, struct nvkm_object **pobject)
{ … }
static int
nvkm_udevice_child_get(struct nvkm_object *object, int index,
struct nvkm_oclass *oclass)
{ … }
static const struct nvkm_object_func
nvkm_udevice_super = …;
static const struct nvkm_object_func
nvkm_udevice = …;
static int
nvkm_udevice_new(const struct nvkm_oclass *oclass, void *data, u32 size,
struct nvkm_object **pobject)
{ … }
const struct nvkm_sclass
nvkm_udevice_sclass = …;