drm/nouveau/volt/gk104: round up in gk104_volt_set
authorKarol Herbst <nouveau@karolherbst.de>
Sat, 16 Apr 2016 18:01:59 +0000 (20:01 +0200)
committerBen Skeggs <bskeggs@redhat.com>
Fri, 20 May 2016 04:43:04 +0000 (14:43 +1000)
We always want a equal or higher voltage than the requested ones, otherwise
nouveau undervolts.

Signed-off-by: Karol Herbst <nouveau@karolherbst.de>
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/nvkm/subdev/volt/gk104.c

index b735173a18ff3d055dcfafcae2cd17c58b6a6c4a..420bd84d84834083cfddcb56203811af94a5d799 100644 (file)
@@ -56,7 +56,7 @@ gk104_volt_set(struct nvkm_volt *base, u32 uv)
 
        /* the blob uses this crystal frequency, let's use it too. */
        div = 27648000 / bios->pwm_freq;
-       duty = (uv - bios->base) * div / bios->pwm_range;
+       duty = DIV_ROUND_UP((uv - bios->base) * div, bios->pwm_range);
 
        nvkm_wr32(device, 0x20340, div);
        nvkm_wr32(device, 0x20344, 0x80000000 | duty);