forked from ~ljy/RK356X_SDK_RELEASE

hc
2024-05-11 04dd17822334871b23ea2862f7798fb0e0007777
kernel/drivers/gpu/drm/nouveau/nvkm/subdev/clk/base.c
....@@ -90,6 +90,7 @@
9090 case NVKM_CLK_BOOST_NONE:
9191 if (clk->base_khz && freq > clk->base_khz)
9292 return false;
93
+ fallthrough;
9394 case NVKM_CLK_BOOST_BIOS:
9495 if (clk->boost_khz && freq > clk->boost_khz)
9596 return false;
....@@ -134,10 +135,10 @@
134135
135136 list_for_each_entry_from_reverse(cstate, &pstate->list, head) {
136137 if (nvkm_cstate_valid(clk, cstate, max_volt, clk->temp))
137
- break;
138
+ return cstate;
138139 }
139140
140
- return cstate;
141
+ return NULL;
141142 }
142143
143144 static struct nvkm_cstate *
....@@ -168,6 +169,8 @@
168169 if (!list_empty(&pstate->list)) {
169170 cstate = nvkm_cstate_get(clk, pstate, cstatei);
170171 cstate = nvkm_cstate_find_best(clk, pstate, cstate);
172
+ if (!cstate)
173
+ return -EINVAL;
171174 } else {
172175 cstate = &pstate->base;
173176 }