#include "priv.h"
#include <subdev/mc.h>
#include <subdev/timer.h>
#include <subdev/top.h>
void
nvkm_falcon_intr_retrigger(struct nvkm_falcon *falcon)
{ … }
bool
nvkm_falcon_riscv_active(struct nvkm_falcon *falcon)
{ … }
static const struct nvkm_falcon_func_dma *
nvkm_falcon_dma(struct nvkm_falcon *falcon, enum nvkm_falcon_mem *mem_type, u32 *mem_base)
{ … }
int
nvkm_falcon_dma_wr(struct nvkm_falcon *falcon, const u8 *img, u64 dma_addr, u32 dma_base,
enum nvkm_falcon_mem mem_type, u32 mem_base, int len, bool sec)
{ … }
static const struct nvkm_falcon_func_pio *
nvkm_falcon_pio(struct nvkm_falcon *falcon, enum nvkm_falcon_mem *mem_type, u32 *mem_base)
{ … }
int
nvkm_falcon_pio_rd(struct nvkm_falcon *falcon, u8 port, enum nvkm_falcon_mem mem_type, u32 mem_base,
const u8 *img, u32 img_base, int len)
{ … }
int
nvkm_falcon_pio_wr(struct nvkm_falcon *falcon, const u8 *img, u32 img_base, u8 port,
enum nvkm_falcon_mem mem_type, u32 mem_base, int len, u16 tag, bool sec)
{ … }
void
nvkm_falcon_load_imem(struct nvkm_falcon *falcon, void *data, u32 start,
u32 size, u16 tag, u8 port, bool secure)
{ … }
void
nvkm_falcon_load_dmem(struct nvkm_falcon *falcon, void *data, u32 start,
u32 size, u8 port)
{ … }
void
nvkm_falcon_start(struct nvkm_falcon *falcon)
{ … }
int
nvkm_falcon_reset(struct nvkm_falcon *falcon)
{ … }
static int
nvkm_falcon_oneinit(struct nvkm_falcon *falcon)
{ … }
void
nvkm_falcon_put(struct nvkm_falcon *falcon, struct nvkm_subdev *user)
{ … }
int
nvkm_falcon_get(struct nvkm_falcon *falcon, struct nvkm_subdev *user)
{ … }
void
nvkm_falcon_dtor(struct nvkm_falcon *falcon)
{ … }
int
nvkm_falcon_ctor(const struct nvkm_falcon_func *func,
struct nvkm_subdev *subdev, const char *name, u32 addr,
struct nvkm_falcon *falcon)
{ … }