On 11/28/22 15:53, Maxime Ripard wrote: > Accessing a register when running under kunit is a bad idea since our > device is completely mocked. > > Fail the current test if we ever access any of our hardware registers. > > Signed-off-by: Maxime Ripard <maxime@xxxxxxxxxx> > --- [...] > -#define CRTC_WRITE(offset, val) writel(val, vc4_crtc->regs + (offset)) > -#define CRTC_READ(offset) readl(vc4_crtc->regs + (offset)) > +#define CRTC_WRITE(offset, val) \ > + do { \ > + kunit_fail_current_test("Accessing a register in a unit test!\n"); \ > + writel(val, vc4_crtc->regs + (offset)); \ > + } while (0) > + > +#define CRTC_READ(offset) \ > + ({ \ > + kunit_fail_current_test("Accessing a register in a unit test!\n"); \ > + readl(vc4_crtc->regs + (offset)); \ > + }) > Should this be made conditional on whether DRM_VC4_KUNIT_TEST is enabled ? That is, just define the simpler macros when is disabled? The kunit_fail_current_test() is just a no-op if CONFIG_KUNIT isn't enabled, but I think my question still stands. Reviewed-by: Javier Martinez Canillas <javierm@xxxxxxxxxx> -- Best regards, Javier Martinez Canillas Core Platforms Red Hat