linux/drivers/gpu/drm/nouveau/include/nvkm/engine/pm.h
<<
>>
Prefs
   1/* SPDX-License-Identifier: MIT */
   2#ifndef __NVKM_PM_H__
   3#define __NVKM_PM_H__
   4#include <core/engine.h>
   5
   6struct nvkm_pm {
   7        const struct nvkm_pm_func *func;
   8        struct nvkm_engine engine;
   9
  10        struct {
  11                spinlock_t lock;
  12                struct nvkm_object *object;
  13        } client;
  14
  15        struct list_head domains;
  16        struct list_head sources;
  17        u32 sequence;
  18};
  19
  20int nv40_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  21int nv50_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  22int g84_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  23int gt200_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  24int gt215_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  25int gf100_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  26int gf108_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  27int gf117_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  28int gk104_pm_new(struct nvkm_device *, enum nvkm_subdev_type, int inst, struct nvkm_pm **);
  29#endif
  30