Displaying 6 results from an estimated 6 matches for "set_cstate".
Did you mean:
best_cstate
2016 Apr 18
0
[PATCH v4 32/37] clk: only do partial reclocks as required
...clk->eng));
}
+static int
+gf100_clk_update_volt(struct nvkm_clk *clk)
+{
+ struct nvkm_subdev *subdev = &clk->subdev;
+ struct nvkm_volt *volt = subdev->device->volt;
+ struct nvkm_therm *therm = subdev->device->therm;
+
+ if (!volt || !therm || !clk->pstate || !clk->set_cstate)
+ return -EINVAL;
+
+ return nvkm_volt_set_id(volt, clk->set_cstate->voltage,
+ clk->pstate->base.voltage, 0);
+}
+
+void
+gf100_clk_update(struct nvkm_clk *clk, int pstate)
+{
+ struct nvkm_subdev *subdev = &clk->subdev;
+ int ret;
+
+ if (!clk->pstate || clk->pstate-...
2016 Apr 18
0
[PATCH v4 28/37] clk: hold information about the current cstate status
...lude/nvkm/subdev/clk.h
+++ b/drm/nouveau/include/nvkm/subdev/clk.h
@@ -95,6 +95,11 @@ struct nvkm_clk {
int ustate_ac; /* user-requested (-1 disabled, -2 perfmon) */
int ustate_dc; /* user-requested (-1 disabled, -2 perfmon) */
int astate; /* perfmon adjustment (base) */
+ struct nvkm_cstate *set_cstate;
+#define NVKM_CLK_CSTATE_DEFAULT -1
+#define NVKM_CLK_CSTATE_BASE -2
+#define NVKM_CLK_CSTATE_HIGHEST -3
+ int exp_cstate;
bool allow_reclock;
#define NVKM_CLK_BOOST_NONE 0x0
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c b/drm/nouveau/nvkm/subdev/clk/base.c
index 762dfe2..23f4cfe 100644...
2016 Apr 18
0
[PATCH v4 35/37] clk: set clocks to pre suspend state after suspend
...p;clk->wait);
nvkm_notify_get(&clk->pwrsrc_ntfy);
@@ -613,11 +613,7 @@ nvkm_clk_init(struct nvkm_subdev *subdev)
if (clk->func->init)
return clk->func->init(clk);
- clk->astate = -1;
- clk->pstate = NULL;
- clk->exp_cstate = NVKM_CLK_CSTATE_DEFAULT;
- clk->set_cstate = NULL;
- nvkm_clk_update(clk, true);
+ nvkm_clk_update_impl(clk, true);
return 0;
}
@@ -672,8 +668,15 @@ nvkm_clk_ctor(const struct nvkm_clk_func *func, struct nvkm_device *device,
clk->func = func;
INIT_LIST_HEAD(&clk->states);
clk->domains = func->domains;
+
+ clk->...
2016 Apr 07
29
[PATCH v3 00/29] Volting/Clocking improvements for Fermi and newer
This is an updated series for the old clocking improvement one.
I think I got everything needed in place and also a simple update mechanism for
updating the cstates/voltage on temperature changes.
If anything is unclear how I REed or got the information, please leave a note
so that I can provide additional information in the commits.
Besides that I think we are pretty close now and only some
2016 Apr 18
63
[PATCH v4 00/37] Volting/Clocking improvements for Fermi and newer
We are slowly getting there!
v4 of the series with some realy good improvements, so I am sure this is like
95% done and only needs some proper polishing and proper Reviews!
I also added the NvVoltOffsetmV module parameter, so that a user is able to
over and !under!-volt the GPU. Overvolting makes sense, when there are still
some reclocking issues left, which might be solved by a higher voltage.
2016 Apr 18
0
[PATCH v4 29/37] clk: we should pass the pstate id around not the index in the list
...pdate(clk, true);
}
@@ -623,7 +602,7 @@ nvkm_clk_init(struct nvkm_subdev *subdev)
if (clk->func->init)
return clk->func->init(clk);
- clk->astate = clk->state_nr - 1;
+ clk->astate = -1;
clk->pstate = NULL;
clk->exp_cstate = NVKM_CLK_CSTATE_DEFAULT;
clk->set_cstate = NULL;
--
2.8.1