On Thu, Jan 26, 2023 at 05:37:54PM +0100, Arnd Bergmann wrote: > From: Arnd Bergmann <arnd@xxxxxxxx> > > When CONFIG_PM is disabled, the driver fails to build: > > drivers/accel/ivpu/ivpu_pm.c: In function 'ivpu_rpm_get': > drivers/accel/ivpu/ivpu_pm.c:240:84: error: 'struct dev_pm_info' has no member named 'usage_count' > 240 | ivpu_dbg(vdev, RPM, "rpm_get count %d\n", atomic_read(&vdev->drm.dev->power.usage_count)); > | ^ > include/linux/dynamic_debug.h:223:29: note: in definition of macro '__dynamic_func_call_cls' > 223 | func(&id, ##__VA_ARGS__); \ > | ^~~~~~~~~~~ > include/linux/dynamic_debug.h:249:9: note: in expansion of macro '_dynamic_func_call_cls' > 249 | _dynamic_func_call_cls(_DPRINTK_CLASS_DFLT, fmt, func, ##__VA_ARGS__) > | ^~~~~~~~~~~~~~~~~~~~~~ > include/linux/dynamic_debug.h:272:9: note: in expansion of macro '_dynamic_func_call' > 272 | _dynamic_func_call(fmt, __dynamic_dev_dbg, \ > | ^~~~~~~~~~~~~~~~~~ > include/linux/dev_printk.h:155:9: note: in expansion of macro 'dynamic_dev_dbg' > 155 | dynamic_dev_dbg(dev, dev_fmt(fmt), ##__VA_ARGS__) > | ^~~~~~~~~~~~~~~ > drivers/accel/ivpu/ivpu_drv.h:65:17: note: in expansion of macro 'dev_dbg' > 65 | dev_dbg((vdev)->drm.dev, "[%s] " fmt, #type, ##args); \ > | ^~~~~~~ > drivers/accel/ivpu/ivpu_pm.c:240:9: note: in expansion of macro 'ivpu_dbg' > 240 | ivpu_dbg(vdev, RPM, "rpm_get count %d\n", atomic_read(&vdev->drm.dev->power.usage_count)); > | ^~~~~~~~ > > It would be possible to rework these statements to only conditionally print > the reference counter, or to make the driver depend on CONFIG_PM, but my > impression is that these are not actually needed at all if the driver generally > works, or they could be put back when required. Just remove all four of these > to make the driver build in all configurations. > > Fixes: 852be13f3bd3 ("accel/ivpu: Add PM support") > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx> Reviewed-by: Stanislaw Gruszka <stanislaw.gruszka@xxxxxxxxxxxxxxx>