Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

of: kunit: Extract some overlay boiler plate into macros

Make the lives of __of_overlay_apply_kunit() callers easier by
extracting some of the boiler plate involved in referencing the DT
overlays.

Cc: Brendan Higgins <brendan.higgins@linux.dev>
Cc: David Gow <davidgow@google.com>
Cc: Rae Moar <rmoar@google.com>
Cc: Peng Fan <peng.fan@nxp.com>
Signed-off-by: Stephen Boyd <sboyd@kernel.org>
Link: https://lore.kernel.org/r/20240822002433.1163814-3-sboyd@kernel.org

+10 -4
+10 -4
include/kunit/of.h
··· 62 62 &unused); 63 63 } 64 64 65 + #define of_overlay_begin(overlay_name) __dtbo_##overlay_name##_begin 66 + #define of_overlay_end(overlay_name) __dtbo_##overlay_name##_end 67 + 68 + #define OF_OVERLAY_DECLARE(overlay_name) \ 69 + extern uint8_t of_overlay_begin(overlay_name)[]; \ 70 + extern uint8_t of_overlay_end(overlay_name)[] \ 71 + 65 72 /** 66 73 * of_overlay_apply_kunit() - Test managed of_overlay_fdt_apply() for built-in overlays 67 74 * @test: test context ··· 111 104 */ 112 105 #define of_overlay_apply_kunit(test, overlay_name) \ 113 106 ({ \ 114 - extern uint8_t __dtbo_##overlay_name##_begin[]; \ 115 - extern uint8_t __dtbo_##overlay_name##_end[]; \ 107 + OF_OVERLAY_DECLARE(overlay_name); \ 116 108 \ 117 109 __of_overlay_apply_kunit((test), \ 118 - __dtbo_##overlay_name##_begin, \ 119 - __dtbo_##overlay_name##_end); \ 110 + of_overlay_begin(overlay_name), \ 111 + of_overlay_end(overlay_name)); \ 120 112 }) 121 113 122 114 #endif