Hi, This is a try to have some simple DVFS (Dynamic Voltage and Frequency Scaling) support for GK20A. Instead of relying on other existing frequency scaling framework, we create a simple subdev in Nouveau for the same purpose. That's because we don't want to make the DVFS implementation for GK20A far more than enough in the beginning and hinder the implementation for dGPU in the future.
Thanks, Vince Vince Hsu (3): clk: allow non-blocking for nouveau_clock_astate() dvfs: add support for GK20A clk: allow users to enable auto mode when loading driver drm/Kbuild | 2 + drm/core/include/subdev/dvfs.h | 1 + drm/core/subdev/dvfs/base.c | 1 + drm/core/subdev/dvfs/gk20a.c | 1 + drm/core/subdev/dvfs/priv.h | 1 + nvkm/engine/device/nve0.c | 2 + nvkm/include/core/device.h | 1 + nvkm/include/subdev/clock.h | 2 +- nvkm/include/subdev/dvfs.h | 30 ++++++++ nvkm/subdev/Makefile.am | 5 +- nvkm/subdev/clock/base.c | 7 +- nvkm/subdev/dvfs/Makefile.am | 6 ++ nvkm/subdev/dvfs/base.c | 129 ++++++++++++++++++++++++++++++++++ nvkm/subdev/dvfs/gk20a.c | 156 +++++++++++++++++++++++++++++++++++++++++ nvkm/subdev/dvfs/priv.h | 43 ++++++++++++ 15 files changed, 382 insertions(+), 5 deletions(-) create mode 120000 drm/core/include/subdev/dvfs.h create mode 120000 drm/core/subdev/dvfs/base.c create mode 120000 drm/core/subdev/dvfs/gk20a.c create mode 120000 drm/core/subdev/dvfs/priv.h create mode 100644 nvkm/include/subdev/dvfs.h create mode 100644 nvkm/subdev/dvfs/Makefile.am create mode 100644 nvkm/subdev/dvfs/base.c create mode 100644 nvkm/subdev/dvfs/gk20a.c create mode 100644 nvkm/subdev/dvfs/priv.h -- 1.9.1 _______________________________________________ Nouveau mailing list Nouveau@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/nouveau