| .. | .. |
|---|
| 90 | 90 | case NVKM_CLK_BOOST_NONE: |
|---|
| 91 | 91 | if (clk->base_khz && freq > clk->base_khz) |
|---|
| 92 | 92 | return false; |
|---|
| 93 | + fallthrough; |
|---|
| 93 | 94 | case NVKM_CLK_BOOST_BIOS: |
|---|
| 94 | 95 | if (clk->boost_khz && freq > clk->boost_khz) |
|---|
| 95 | 96 | return false; |
|---|
| .. | .. |
|---|
| 134 | 135 | |
|---|
| 135 | 136 | list_for_each_entry_from_reverse(cstate, &pstate->list, head) { |
|---|
| 136 | 137 | if (nvkm_cstate_valid(clk, cstate, max_volt, clk->temp)) |
|---|
| 137 | | - break; |
|---|
| 138 | + return cstate; |
|---|
| 138 | 139 | } |
|---|
| 139 | 140 | |
|---|
| 140 | | - return cstate; |
|---|
| 141 | + return NULL; |
|---|
| 141 | 142 | } |
|---|
| 142 | 143 | |
|---|
| 143 | 144 | static struct nvkm_cstate * |
|---|
| .. | .. |
|---|
| 168 | 169 | if (!list_empty(&pstate->list)) { |
|---|
| 169 | 170 | cstate = nvkm_cstate_get(clk, pstate, cstatei); |
|---|
| 170 | 171 | cstate = nvkm_cstate_find_best(clk, pstate, cstate); |
|---|
| 172 | + if (!cstate) |
|---|
| 173 | + return -EINVAL; |
|---|
| 171 | 174 | } else { |
|---|
| 172 | 175 | cstate = &pstate->base; |
|---|
| 173 | 176 | } |
|---|