#define gt215_clk(p) …
#include "gt215.h"
#include "pll.h"
#include <engine/fifo.h>
#include <subdev/bios.h>
#include <subdev/bios/pll.h>
#include <subdev/timer.h>
struct gt215_clk { … };
static u32 read_clk(struct gt215_clk *, int, bool);
static u32 read_pll(struct gt215_clk *, int, u32);
static u32
read_vco(struct gt215_clk *clk, int idx)
{ … }
static u32
read_clk(struct gt215_clk *clk, int idx, bool ignore_en)
{ … }
static u32
read_pll(struct gt215_clk *clk, int idx, u32 pll)
{ … }
static int
gt215_clk_read(struct nvkm_clk *base, enum nv_clk_src src)
{ … }
static int
gt215_clk_info(struct nvkm_clk *base, int idx, u32 khz,
struct gt215_clk_info *info)
{ … }
int
gt215_pll_info(struct nvkm_clk *base, int idx, u32 pll, u32 khz,
struct gt215_clk_info *info)
{ … }
static int
calc_clk(struct gt215_clk *clk, struct nvkm_cstate *cstate,
int idx, u32 pll, int dom)
{ … }
static int
calc_host(struct gt215_clk *clk, struct nvkm_cstate *cstate)
{ … }
int
gt215_clk_pre(struct nvkm_clk *clk, unsigned long *flags)
{ … }
void
gt215_clk_post(struct nvkm_clk *clk, unsigned long *flags)
{ … }
static void
disable_clk_src(struct gt215_clk *clk, u32 src)
{ … }
static void
prog_pll(struct gt215_clk *clk, int idx, u32 pll, int dom)
{ … }
static void
prog_clk(struct gt215_clk *clk, int idx, int dom)
{ … }
static void
prog_host(struct gt215_clk *clk)
{ … }
static void
prog_core(struct gt215_clk *clk, int dom)
{ … }
static int
gt215_clk_calc(struct nvkm_clk *base, struct nvkm_cstate *cstate)
{ … }
static int
gt215_clk_prog(struct nvkm_clk *base)
{ … }
static void
gt215_clk_tidy(struct nvkm_clk *base)
{ … }
static const struct nvkm_clk_func
gt215_clk = …;
int
gt215_clk_new(struct nvkm_device *device, enum nvkm_subdev_type type, int inst,
struct nvkm_clk **pclk)
{ … }