From: Karol Herbst <kher...@redhat.com>

id: id of the state
idx: index of the state inside the parent list
pstate/cstate: the struct itself

Signed-off-by: Karol Herbst <kher...@redhat.com>
---
 drm/nouveau/include/nvkm/subdev/bios/boost.h |  2 +-
 drm/nouveau/include/nvkm/subdev/bios/perf.h  |  2 +-
 drm/nouveau/include/nvkm/subdev/clk.h        |  4 +-
 drm/nouveau/nouveau_debugfs.c                | 14 +++---
 drm/nouveau/nvkm/engine/device/ctrl.c        |  4 +-
 drm/nouveau/nvkm/subdev/bios/boost.c         | 11 +++--
 drm/nouveau/nvkm/subdev/bios/perf.c          |  2 +-
 drm/nouveau/nvkm/subdev/clk/base.c           | 70 ++++++++++++++--------------
 drm/nouveau/nvkm/subdev/clk/gk20a.c          |  2 +-
 drm/nouveau/nvkm/subdev/pmu/gk20a.c          |  4 +-
 10 files changed, 59 insertions(+), 56 deletions(-)

diff --git a/drm/nouveau/include/nvkm/subdev/bios/boost.h 
b/drm/nouveau/include/nvkm/subdev/bios/boost.h
index 2ff64a20..74791349 100644
--- a/drm/nouveau/include/nvkm/subdev/bios/boost.h
+++ b/drm/nouveau/include/nvkm/subdev/bios/boost.h
@@ -3,7 +3,7 @@
 u32 nvbios_boostTe(struct nvkm_bios *, u8 *, u8 *, u8 *, u8 *, u8 *, u8 *);
 
 struct nvbios_boostE {
-       u8  pstate;
+       u8  pstate_id;
        u32 min;
        u32 max;
 };
diff --git a/drm/nouveau/include/nvkm/subdev/bios/perf.h 
b/drm/nouveau/include/nvkm/subdev/bios/perf.h
index 478b1c0d..69800168 100644
--- a/drm/nouveau/include/nvkm/subdev/bios/perf.h
+++ b/drm/nouveau/include/nvkm/subdev/bios/perf.h
@@ -4,7 +4,7 @@ u32 nvbios_perf_table(struct nvkm_bios *, u8 *ver, u8 *hdr,
                      u8 *cnt, u8 *len, u8 *snr, u8 *ssz);
 
 struct nvbios_perfE {
-       u8  pstate;
+       u8  pstate_id;
        u8  fanspeed;
        u8  voltage;
        u32 core;
diff --git a/drm/nouveau/include/nvkm/subdev/clk.h 
b/drm/nouveau/include/nvkm/subdev/clk.h
index 506f8cc6..1f4fa5f5 100644
--- a/drm/nouveau/include/nvkm/subdev/clk.h
+++ b/drm/nouveau/include/nvkm/subdev/clk.h
@@ -63,7 +63,7 @@ struct nvkm_pstate {
        struct list_head head;
        struct list_head list; /* c-states */
        struct nvkm_cstate base;
-       u8 pstate;
+       u8 id;
        u8 fanspeed;
        enum nvkm_pcie_speed pcie_speed;
        u8 pcie_width;
@@ -95,7 +95,7 @@ struct nvkm_clk {
 
        struct nvkm_notify pwrsrc_ntfy;
        int pwrsrc;
-       int pstate; /* current */
+       int pstate_idx; /* current */
        int ustate_ac; /* user-requested (-1 disabled, -2 perfmon) */
        int ustate_dc; /* user-requested (-1 disabled, -2 perfmon) */
        int astate; /* perfmon adjustment (base) */
diff --git a/drm/nouveau/nouveau_debugfs.c b/drm/nouveau/nouveau_debugfs.c
index 9109b69c..df7e2f29 100644
--- a/drm/nouveau/nouveau_debugfs.c
+++ b/drm/nouveau/nouveau_debugfs.c
@@ -63,10 +63,10 @@ nouveau_debugfs_pstate_get(struct seq_file *m, void *data)
                return ret;
 
        for (i = 0; i < info.count + 1; i++) {
-               const s32 state = i < info.count ? i :
+               const s32 state_idx = i < info.count ? i :
                        NVIF_CONTROL_PSTATE_ATTR_V0_STATE_CURRENT;
                struct nvif_control_pstate_attr_v0 attr = {
-                       .state = state,
+                       .state = state_idx,
                        .index = 0,
                };
 
@@ -83,7 +83,7 @@ nouveau_debugfs_pstate_get(struct seq_file *m, void *data)
 
                attr.index = 0;
                do {
-                       attr.state = state;
+                       attr.state = state_idx;
                        ret = nvif_mthd(ctrl, NVIF_CONTROL_PSTATE_ATTR,
                                        &attr, sizeof(attr));
                        if (ret)
@@ -95,12 +95,12 @@ nouveau_debugfs_pstate_get(struct seq_file *m, void *data)
                        seq_printf(m, " %s", attr.unit);
                } while (attr.index);
 
-               if (state >= 0) {
-                       if (info.ustate_ac == state)
+               if (state_idx >= 0) {
+                       if (info.ustate_ac == state_idx)
                                seq_printf(m, " AC");
-                       if (info.ustate_dc == state)
+                       if (info.ustate_dc == state_idx)
                                seq_printf(m, " DC");
-                       if (info.pstate == state)
+                       if (info.pstate == state_idx)
                                seq_printf(m, " *");
                } else {
                        if (info.ustate_ac < -1)
diff --git a/drm/nouveau/nvkm/engine/device/ctrl.c 
b/drm/nouveau/nvkm/engine/device/ctrl.c
index b0ece71a..e07948e6 100644
--- a/drm/nouveau/nvkm/engine/device/ctrl.c
+++ b/drm/nouveau/nvkm/engine/device/ctrl.c
@@ -52,7 +52,7 @@ nvkm_control_mthd_pstate_info(struct nvkm_control *ctrl, void 
*data, u32 size)
                args->v0.ustate_ac = clk->ustate_ac;
                args->v0.ustate_dc = clk->ustate_dc;
                args->v0.pwrsrc = clk->pwrsrc;
-               args->v0.pstate = clk->pstate;
+               args->v0.pstate = clk->pstate_idx;
        } else {
                args->v0.count = 0;
                args->v0.ustate_ac = NVIF_CONTROL_PSTATE_INFO_V0_USTATE_DISABLE;
@@ -115,7 +115,7 @@ nvkm_control_mthd_pstate_attr(struct nvkm_control *ctrl, 
void *data, u32 size)
                        hi = max(hi, cstate->domain[domain->name]);
                }
 
-               args->v0.state = pstate->pstate;
+               args->v0.state = pstate->id;
        } else {
                lo = max(nvkm_clk_read(clk, domain->name), 0);
                hi = lo;
diff --git a/drm/nouveau/nvkm/subdev/bios/boost.c 
b/drm/nouveau/nvkm/subdev/bios/boost.c
index 8ab896dd..6554e937 100644
--- a/drm/nouveau/nvkm/subdev/bios/boost.c
+++ b/drm/nouveau/nvkm/subdev/bios/boost.c
@@ -78,20 +78,21 @@ nvbios_boostEp(struct nvkm_bios *bios, int idx,
        u32 data = nvbios_boostEe(bios, idx, ver, hdr, cnt, len);
        memset(info, 0x00, sizeof(*info));
        if (data) {
-               info->pstate = (nvbios_rd16(bios, data + 0x00) & 0x01e0) >> 5;
-               info->min    =  nvbios_rd16(bios, data + 0x02) * 1000;
-               info->max    =  nvbios_rd16(bios, data + 0x04) * 1000;
+               info->pstate_id =
+                       (nvbios_rd16(bios, data + 0x00) & 0x01e0) >> 5;
+               info->min       =  nvbios_rd16(bios, data + 0x02) * 1000;
+               info->max       =  nvbios_rd16(bios, data + 0x04) * 1000;
        }
        return data;
 }
 
 u32
-nvbios_boostEm(struct nvkm_bios *bios, u8 pstate,
+nvbios_boostEm(struct nvkm_bios *bios, u8 pstate_id,
               u8 *ver, u8 *hdr, u8 *cnt, u8 *len, struct nvbios_boostE *info)
 {
        u32 data, idx = 0;
        while ((data = nvbios_boostEp(bios, idx++, ver, hdr, cnt, len, info))) {
-               if (info->pstate == pstate)
+               if (info->pstate_id == pstate_id)
                        break;
        }
        return data;
diff --git a/drm/nouveau/nvkm/subdev/bios/perf.c 
b/drm/nouveau/nvkm/subdev/bios/perf.c
index c3068358..82ba4300 100644
--- a/drm/nouveau/nvkm/subdev/bios/perf.c
+++ b/drm/nouveau/nvkm/subdev/bios/perf.c
@@ -97,7 +97,7 @@ nvbios_perfEp(struct nvkm_bios *bios, int idx,
 {
        u32 perf = nvbios_perf_entry(bios, idx, ver, hdr, cnt, len);
        memset(info, 0x00, sizeof(*info));
-       info->pstate = nvbios_rd08(bios, perf + 0x00);
+       info->pstate_id = nvbios_rd08(bios, perf + 0x00);
        switch (!!perf * *ver) {
        case 0x12:
        case 0x13:
diff --git a/drm/nouveau/nvkm/subdev/clk/base.c 
b/drm/nouveau/nvkm/subdev/clk/base.c
index 0b28dbb9..77a0624a 100644
--- a/drm/nouveau/nvkm/subdev/clk/base.c
+++ b/drm/nouveau/nvkm/subdev/clk/base.c
@@ -39,14 +39,15 @@
  *****************************************************************************/
 static u32
 nvkm_clk_adjust(struct nvkm_clk *clk, bool adjust,
-               u8 pstate, u8 domain, u32 input)
+               u8 pstate_id, u8 domain, u32 input)
 {
        struct nvkm_bios *bios = clk->subdev.device->bios;
        struct nvbios_boostE boostE;
        u8  ver, hdr, cnt, len;
        u32 data;
 
-       data = nvbios_boostEm(bios, pstate, &ver, &hdr, &cnt, &len, &boostE);
+       data = nvbios_boostEm(bios, pstate_id, &ver, &hdr, &cnt, &len,
+                             &boostE);
        if (data) {
                struct nvbios_boostS boostS;
                u8  idx = 0, sver, shdr;
@@ -143,14 +144,14 @@ nvkm_cstate_find_best(struct nvkm_clk *clk, struct 
nvkm_pstate *pstate,
 }
 
 static struct nvkm_cstate *
-nvkm_cstate_get(struct nvkm_clk *clk, struct nvkm_pstate *pstate, int cstatei)
+nvkm_cstate_get(struct nvkm_clk *clk, struct nvkm_pstate *pstate, int 
cstate_id)
 {
        struct nvkm_cstate *cstate;
-       if (cstatei == NVKM_CLK_CSTATE_HIGHEST)
+       if (cstate_id == NVKM_CLK_CSTATE_HIGHEST)
                return list_last_entry(&pstate->list, typeof(*cstate), head);
        else {
                list_for_each_entry(cstate, &pstate->list, head) {
-                       if (cstate->id == cstatei)
+                       if (cstate->id == cstate_id)
                                return cstate;
                }
        }
@@ -158,7 +159,8 @@ nvkm_cstate_get(struct nvkm_clk *clk, struct nvkm_pstate 
*pstate, int cstatei)
 }
 
 static int
-nvkm_cstate_prog(struct nvkm_clk *clk, struct nvkm_pstate *pstate, int cstatei)
+nvkm_cstate_prog(struct nvkm_clk *clk, struct nvkm_pstate *pstate,
+                int cstate_id)
 {
        struct nvkm_subdev *subdev = &clk->subdev;
        struct nvkm_device *device = subdev->device;
@@ -168,7 +170,7 @@ nvkm_cstate_prog(struct nvkm_clk *clk, struct nvkm_pstate 
*pstate, int cstatei)
        int ret;
 
        if (!list_empty(&pstate->list)) {
-               cstate = nvkm_cstate_get(clk, pstate, cstatei);
+               cstate = nvkm_cstate_get(clk, pstate, cstate_id);
                cstate = nvkm_cstate_find_best(clk, pstate, cstate);
        } else {
                cstate = &pstate->base;
@@ -248,7 +250,7 @@ nvkm_cstate_new(struct nvkm_clk *clk, int idx, struct 
nvkm_pstate *pstate)
 
        while (domain && domain->name != nv_clk_src_max) {
                if (domain->flags & NVKM_CLK_DOM_FLAG_CORE) {
-                       u32 freq = nvkm_clk_adjust(clk, true, pstate->pstate,
+                       u32 freq = nvkm_clk_adjust(clk, true, pstate->id,
                                                   domain->bios, cstepX.freq);
                        cstate->domain[domain->name] = freq;
                }
@@ -263,7 +265,7 @@ nvkm_cstate_new(struct nvkm_clk *clk, int idx, struct 
nvkm_pstate *pstate)
  * P-States
  *****************************************************************************/
 static int
-nvkm_pstate_prog(struct nvkm_clk *clk, int pstatei)
+nvkm_pstate_prog(struct nvkm_clk *clk, int pstate_idx)
 {
        struct nvkm_subdev *subdev = &clk->subdev;
        struct nvkm_fb *fb = subdev->device->fb;
@@ -272,12 +274,12 @@ nvkm_pstate_prog(struct nvkm_clk *clk, int pstatei)
        int ret, idx = 0;
 
        list_for_each_entry(pstate, &clk->states, head) {
-               if (idx++ == pstatei)
+               if (idx++ == pstate_idx)
                        break;
        }
 
-       nvkm_debug(subdev, "setting performance state %d\n", pstatei);
-       clk->pstate = pstatei;
+       nvkm_debug(subdev, "setting performance state %d\n", pstate_idx);
+       clk->pstate_idx = pstate_idx;
 
        nvkm_pcie_set_link(pci, pstate->pcie_speed, pstate->pcie_width);
 
@@ -300,31 +302,31 @@ nvkm_pstate_work(struct work_struct *work)
 {
        struct nvkm_clk *clk = container_of(work, typeof(*clk), work);
        struct nvkm_subdev *subdev = &clk->subdev;
-       int pstate;
+       int pstate_idx;
 
        if (!atomic_xchg(&clk->waiting, 0))
                return;
        clk->pwrsrc = power_supply_is_system_supplied();
 
        nvkm_trace(subdev, "P %d PWR %d U(AC) %d U(DC) %d A %d T %d°C D %d\n",
-                  clk->pstate, clk->pwrsrc, clk->ustate_ac, clk->ustate_dc,
+                  clk->pstate_idx, clk->pwrsrc, clk->ustate_ac, clk->ustate_dc,
                   clk->astate, clk->temp, clk->dstate);
 
-       pstate = clk->pwrsrc ? clk->ustate_ac : clk->ustate_dc;
-       if (clk->state_nr && pstate != -1) {
-               pstate = (pstate < 0) ? clk->astate : pstate;
-               pstate = min(pstate, clk->state_nr - 1);
-               pstate = max(pstate, clk->dstate);
+       pstate_idx = clk->pwrsrc ? clk->ustate_ac : clk->ustate_dc;
+       if (clk->state_nr && pstate_idx != -1) {
+               pstate_idx = (pstate_idx < 0) ? clk->astate : pstate_idx;
+               pstate_idx = min(pstate_idx, clk->state_nr - 1);
+               pstate_idx = max(pstate_idx, clk->dstate);
        } else {
-               pstate = clk->pstate = -1;
+               pstate_idx = clk->pstate_idx = -1;
        }
 
-       nvkm_trace(subdev, "-> %d\n", pstate);
-       if (pstate != clk->pstate) {
-               int ret = nvkm_pstate_prog(clk, pstate);
+       nvkm_trace(subdev, "-> %d\n", pstate_idx);
+       if (pstate_idx != clk->pstate_idx) {
+               int ret = nvkm_pstate_prog(clk, pstate_idx);
                if (ret) {
                        nvkm_error(subdev, "error setting pstate %d: %d\n",
-                                  pstate, ret);
+                                  pstate_idx, ret);
                }
        }
 
@@ -352,8 +354,8 @@ nvkm_pstate_info(struct nvkm_clk *clk, struct nvkm_pstate 
*pstate)
        char name[4] = "--";
        int i = -1;
 
-       if (pstate->pstate != 0xff)
-               snprintf(name, sizeof(name), "%02x", pstate->pstate);
+       if (pstate->id != 0xff)
+               snprintf(name, sizeof(name), "%02x", pstate->id);
 
        while ((++clock)->name != nv_clk_src_max) {
                u32 lo = pstate->base.domain[clock->name];
@@ -413,7 +415,7 @@ nvkm_pstate_new(struct nvkm_clk *clk, int idx)
        data = nvbios_perfEp(bios, idx, &ver, &hdr, &cnt, &len, &perfE);
        if (!data)
                return -EINVAL;
-       if (perfE.pstate == 0xff)
+       if (perfE.pstate_id == 0xff)
                return 0;
 
        pstate = kzalloc(sizeof(*pstate), GFP_KERNEL);
@@ -423,7 +425,7 @@ nvkm_pstate_new(struct nvkm_clk *clk, int idx)
 
        INIT_LIST_HEAD(&pstate->list);
 
-       pstate->pstate = perfE.pstate;
+       pstate->id = perfE.pstate_id;
        pstate->fanspeed = perfE.fanspeed;
        pstate->pcie_speed = perfE.pcie_speed;
        pstate->pcie_width = perfE.pcie_width;
@@ -444,7 +446,7 @@ nvkm_pstate_new(struct nvkm_clk *clk, int idx)
 
                if (domain->flags & NVKM_CLK_DOM_FLAG_CORE) {
                        perfS.v40.freq = nvkm_clk_adjust(clk, false,
-                                                        pstate->pstate,
+                                                        pstate->id,
                                                         domain->bios,
                                                         perfS.v40.freq);
                }
@@ -452,7 +454,7 @@ nvkm_pstate_new(struct nvkm_clk *clk, int idx)
                cstate->domain[domain->name] = perfS.v40.freq;
        }
 
-       data = nvbios_cstepEm(bios, pstate->pstate, &ver, &hdr, &cstepE);
+       data = nvbios_cstepEm(bios, pstate->id, &ver, &hdr, &cstepE);
        if (data) {
                int idx = cstepE.index;
                do {
@@ -480,12 +482,12 @@ nvkm_clk_ustate_update(struct nvkm_clk *clk, int req)
 
        if (req != -1 && req != -2) {
                list_for_each_entry(pstate, &clk->states, head) {
-                       if (pstate->pstate == req)
+                       if (pstate->id == req)
                                break;
                        i++;
                }
 
-               if (pstate->pstate != req)
+               if (pstate->id != req)
                        return -EINVAL;
                req = i;
        }
@@ -597,7 +599,7 @@ nvkm_clk_init(struct nvkm_subdev *subdev)
 
        memset(&clk->bstate, 0x00, sizeof(clk->bstate));
        INIT_LIST_HEAD(&clk->bstate.list);
-       clk->bstate.pstate = 0xff;
+       clk->bstate.id = 0xff;
 
        while (clock->name != nv_clk_src_max) {
                ret = nvkm_clk_read(clk, clock->name);
@@ -616,7 +618,7 @@ nvkm_clk_init(struct nvkm_subdev *subdev)
 
        clk->astate = clk->state_nr - 1;
        clk->dstate = 0;
-       clk->pstate = -1;
+       clk->pstate_idx = -1;
        clk->temp = 90; /* reasonable default value */
        nvkm_pstate_calc(clk, true);
        return 0;
diff --git a/drm/nouveau/nvkm/subdev/clk/gk20a.c 
b/drm/nouveau/nvkm/subdev/clk/gk20a.c
index 218893e3..dc98ad62 100644
--- a/drm/nouveau/nvkm/subdev/clk/gk20a.c
+++ b/drm/nouveau/nvkm/subdev/clk/gk20a.c
@@ -622,7 +622,7 @@ gk20a_clk_ctor(struct nvkm_device *device, int index,
        /* Finish initializing the pstates */
        for (i = 0; i < func->nr_pstates; i++) {
                INIT_LIST_HEAD(&func->pstates[i].list);
-               func->pstates[i].pstate = i + 1;
+               func->pstates[i].id = i + 1;
        }
 
        clk->params = params;
diff --git a/drm/nouveau/nvkm/subdev/pmu/gk20a.c 
b/drm/nouveau/nvkm/subdev/pmu/gk20a.c
index 05e81855..0c169215 100644
--- a/drm/nouveau/nvkm/subdev/pmu/gk20a.c
+++ b/drm/nouveau/nvkm/subdev/pmu/gk20a.c
@@ -60,7 +60,7 @@ gk20a_pmu_dvfs_get_cur_state(struct gk20a_pmu *pmu, int 
*state)
 {
        struct nvkm_clk *clk = pmu->base.subdev.device->clk;
 
-       *state = clk->pstate;
+       *state = clk->pstate_idx;
 }
 
 static int
@@ -72,7 +72,7 @@ gk20a_pmu_dvfs_get_target_state(struct gk20a_pmu *pmu,
        int cur_level, level;
 
        /* For GK20A, the performance level is directly mapped to pstate */
-       level = cur_level = clk->pstate;
+       level = cur_level = clk->pstate_idx;
 
        if (load > data->p_load_max) {
                level = min(clk->state_nr - 1, level + (clk->state_nr / 3));
-- 
2.15.0

_______________________________________________
Nouveau mailing list
Nouveau@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/nouveau

Reply via email to