Merge remote-tracking branch 'asoc/topic/pcm512x' into asoc-next
[sfrench/cifs-2.6.git] / drivers / gpu / drm / nouveau / nvkm / subdev / devinit / priv.h
1 /* SPDX-License-Identifier: GPL-2.0 */
2 #ifndef __NVKM_DEVINIT_PRIV_H__
3 #define __NVKM_DEVINIT_PRIV_H__
4 #define nvkm_devinit(p) container_of((p), struct nvkm_devinit, subdev)
5 #include <subdev/devinit.h>
6
7 struct nvkm_devinit_func {
8         void *(*dtor)(struct nvkm_devinit *);
9         void (*preinit)(struct nvkm_devinit *);
10         void (*init)(struct nvkm_devinit *);
11         int  (*post)(struct nvkm_devinit *, bool post);
12         u32  (*mmio)(struct nvkm_devinit *, u32);
13         void (*meminit)(struct nvkm_devinit *);
14         int  (*pll_set)(struct nvkm_devinit *, u32 type, u32 freq);
15         u64  (*disable)(struct nvkm_devinit *);
16 };
17
18 void nvkm_devinit_ctor(const struct nvkm_devinit_func *, struct nvkm_device *,
19                        int index, struct nvkm_devinit *);
20
21 int nv04_devinit_post(struct nvkm_devinit *, bool);
22 #endif