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@cerno.tech
[...]
-#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@redhat.com