/* logging for client-facing objects */
 #define nvif_printk(o,l,p,f,a...) do {                                         \
-       struct nvkm_object *_object = (o);                                     \
-       struct nvkm_client *_client = _object->client;                         \
+       const struct nvkm_object *_object = (o);                               \
+       const struct nvkm_client *_client = _object->client;                   \
        if (_client->debug >= NV_DBG_##l)                                      \
                printk(KERN_##p "nouveau: %s:%08x:%08x: "f, _client->name,     \
                       _object->handle, _object->oclass, ##a);                 \
 
 
 /* device logging */
 #define nvdev_printk_(d,l,p,f,a...) do {                                       \
-       struct nvkm_device *_device = (d);                                     \
+       const struct nvkm_device *_device = (d);                               \
        if (_device->debug >= (l))                                             \
                dev_##p(_device->dev, f, ##a);                                 \
 } while(0)
 
 
 /* subdev logging */
 #define nvkm_printk_(s,l,p,f,a...) do {                                        \
-       struct nvkm_subdev *_subdev = (s);                                     \
+       const struct nvkm_subdev *_subdev = (s);                               \
        if (_subdev->debug >= (l)) {                                           \
                dev_##p(_subdev->device->dev, "%s: "f,                         \
                        nvkm_subdev_name[_subdev->index], ##a);                \