static int
 nvkm_perfsrc_enable(struct nvkm_pm *pm, struct nvkm_perfctr *ctr)
 {
-       struct nvkm_device *device = pm->engine.subdev.device;
+       struct nvkm_subdev *subdev = &pm->engine.subdev;
+       struct nvkm_device *device = subdev->device;
        struct nvkm_perfdom *dom = NULL;
        struct nvkm_perfsig *sig;
        struct nvkm_perfsrc *src;
 
                        /* enable the source */
                        nvkm_mask(device, src->addr, mask, value);
-                       nv_debug(pm, "enabled source 0x%08x 0x%08x 0x%08x\n",
-                                src->addr, mask, value);
+                       nvkm_debug(subdev,
+                                  "enabled source %08x %08x %08x\n",
+                                  src->addr, mask, value);
                }
        }
        return 0;
 static int
 nvkm_perfsrc_disable(struct nvkm_pm *pm, struct nvkm_perfctr *ctr)
 {
-       struct nvkm_device *device = pm->engine.subdev.device;
+       struct nvkm_subdev *subdev = &pm->engine.subdev;
+       struct nvkm_device *device = subdev->device;
        struct nvkm_perfdom *dom = NULL;
        struct nvkm_perfsig *sig;
        struct nvkm_perfsrc *src;
 
                        /* disable the source */
                        nvkm_mask(device, src->addr, mask, 0);
-                       nv_debug(pm, "disabled source 0x%08x 0x%08x\n",
-                                src->addr, mask);
+                       nvkm_debug(subdev, "disabled source %08x %08x\n",
+                                  src->addr, mask);
                }
        }
        return 0;