diff options
-rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_backlight.c | 3 | ||||
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/engine/falcon.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | 7 |
3 files changed, 12 insertions, 5 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_backlight.c b/drivers/gpu/drm/nouveau/nouveau_backlight.c index 5f5be6368aed..c7a94c94dbf3 100644 --- a/drivers/gpu/drm/nouveau/nouveau_backlight.c +++ b/drivers/gpu/drm/nouveau/nouveau_backlight.c | |||
@@ -253,6 +253,9 @@ nouveau_backlight_init(struct drm_connector *connector) | |||
253 | case NV_DEVICE_INFO_V0_FERMI: | 253 | case NV_DEVICE_INFO_V0_FERMI: |
254 | case NV_DEVICE_INFO_V0_KEPLER: | 254 | case NV_DEVICE_INFO_V0_KEPLER: |
255 | case NV_DEVICE_INFO_V0_MAXWELL: | 255 | case NV_DEVICE_INFO_V0_MAXWELL: |
256 | case NV_DEVICE_INFO_V0_PASCAL: | ||
257 | case NV_DEVICE_INFO_V0_VOLTA: | ||
258 | case NV_DEVICE_INFO_V0_TURING: | ||
256 | ret = nv50_backlight_init(nv_encoder, &props, &ops); | 259 | ret = nv50_backlight_init(nv_encoder, &props, &ops); |
257 | break; | 260 | break; |
258 | default: | 261 | default: |
diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/falcon.c b/drivers/gpu/drm/nouveau/nvkm/engine/falcon.c index 816ccaedfc73..8675613e142b 100644 --- a/drivers/gpu/drm/nouveau/nvkm/engine/falcon.c +++ b/drivers/gpu/drm/nouveau/nvkm/engine/falcon.c | |||
@@ -22,6 +22,7 @@ | |||
22 | #include <engine/falcon.h> | 22 | #include <engine/falcon.h> |
23 | 23 | ||
24 | #include <core/gpuobj.h> | 24 | #include <core/gpuobj.h> |
25 | #include <subdev/mc.h> | ||
25 | #include <subdev/timer.h> | 26 | #include <subdev/timer.h> |
26 | #include <engine/fifo.h> | 27 | #include <engine/fifo.h> |
27 | 28 | ||
@@ -107,8 +108,10 @@ nvkm_falcon_fini(struct nvkm_engine *engine, bool suspend) | |||
107 | } | 108 | } |
108 | } | 109 | } |
109 | 110 | ||
110 | nvkm_mask(device, base + 0x048, 0x00000003, 0x00000000); | 111 | if (nvkm_mc_enabled(device, engine->subdev.index)) { |
111 | nvkm_wr32(device, base + 0x014, 0xffffffff); | 112 | nvkm_mask(device, base + 0x048, 0x00000003, 0x00000000); |
113 | nvkm_wr32(device, base + 0x014, 0xffffffff); | ||
114 | } | ||
112 | return 0; | 115 | return 0; |
113 | } | 116 | } |
114 | 117 | ||
diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c index 3695cde669f8..07914e36939e 100644 --- a/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/therm/base.c | |||
@@ -132,11 +132,12 @@ nvkm_therm_update(struct nvkm_therm *therm, int mode) | |||
132 | duty = nvkm_therm_update_linear(therm); | 132 | duty = nvkm_therm_update_linear(therm); |
133 | break; | 133 | break; |
134 | case NVBIOS_THERM_FAN_OTHER: | 134 | case NVBIOS_THERM_FAN_OTHER: |
135 | if (therm->cstate) | 135 | if (therm->cstate) { |
136 | duty = therm->cstate; | 136 | duty = therm->cstate; |
137 | else | 137 | poll = false; |
138 | } else { | ||
138 | duty = nvkm_therm_update_linear_fallback(therm); | 139 | duty = nvkm_therm_update_linear_fallback(therm); |
139 | poll = false; | 140 | } |
140 | break; | 141 | break; |
141 | } | 142 | } |
142 | immd = false; | 143 | immd = false; |