Revert "staging: board: Remove macro board_staging"
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Jan 2021 14:55:40 +0000 (15:55 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 4 Jan 2021 14:55:40 +0000 (15:55 +0100)
This reverts commit 850c35bb28ecd80bdbecc5cc4d47d0c6941d6d83 as it
breaks the build.

Cc: Song Chen <chensong_2000@189.cn>
Reported-by: Stephen Rothwell <sfr@canb.auug.org.au>
Cc: Geert Uytterhoeven <geert@linux-m68k.org>
Link: https://lore.kernel.org/r/20210104122653.6f35b9bb@canb.auug.org.au
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/board/armadillo800eva.c
drivers/staging/board/board.h
drivers/staging/board/kzm9d.c

index a7e8487a2dec4035bdf8a78cefcb7b81a29f1c6e..0225234dd7aa6b1ca774d83bce5912fd0aaabe98 100644 (file)
@@ -80,11 +80,9 @@ static const struct board_staging_dev armadillo800eva_devices[] __initconst = {
 
 static void __init armadillo800eva_init(void)
 {
-       if (of_machine_is_compatible("renesas,armadillo800eva")) {
-               board_staging_gic_setup_xlate("arm,pl390", 32);
-               board_staging_register_devices(armadillo800eva_devices,
-                                              ARRAY_SIZE(armadillo800eva_devices));
-       }
+       board_staging_gic_setup_xlate("arm,pl390", 32);
+       board_staging_register_devices(armadillo800eva_devices,
+                                      ARRAY_SIZE(armadillo800eva_devices));
 }
 
-device_initcall(armadillo800eva_init);
+board_staging("renesas,armadillo800eva", armadillo800eva_init);
index f1c233e4eb1c23a04f3cf50462b393e7c18ff85f..5609daf4d8695f0294fc44a3d7da2b614acc34c0 100644 (file)
@@ -32,4 +32,15 @@ int board_staging_register_device(const struct board_staging_dev *dev);
 void board_staging_register_devices(const struct board_staging_dev *devs,
                                    unsigned int ndevs);
 
+#define board_staging(str, fn)                 \
+static int __init runtime_board_check(void)    \
+{                                              \
+       if (of_machine_is_compatible(str))      \
+               fn();                           \
+                                               \
+       return 0;                               \
+}                                              \
+                                               \
+device_initcall(runtime_board_check)
+
 #endif /* __BOARD_H__ */
index 72b1ad452a30c4d81ba65fc7cfdd3149312f3fe0..d449a837414e6934ae2d590de936e34773f78159 100644 (file)
@@ -12,17 +12,15 @@ static struct resource usbs1_res[] __initdata = {
 
 static void __init kzm9d_init(void)
 {
-       if (of_machine_is_compatible("renesas,kzm9d")) {
-               board_staging_gic_setup_xlate("arm,pl390", 32);
+       board_staging_gic_setup_xlate("arm,pl390", 32);
 
-               if (!board_staging_dt_node_available(usbs1_res,
-                                                    ARRAY_SIZE(usbs1_res))) {
-                       board_staging_gic_fixup_resources(usbs1_res,
-                                                         ARRAY_SIZE(usbs1_res));
-                       platform_device_register_simple("emxx_udc", -1, usbs1_res,
-                                                       ARRAY_SIZE(usbs1_res));
-               }
+       if (!board_staging_dt_node_available(usbs1_res,
+                                            ARRAY_SIZE(usbs1_res))) {
+               board_staging_gic_fixup_resources(usbs1_res,
+                                                 ARRAY_SIZE(usbs1_res));
+               platform_device_register_simple("emxx_udc", -1, usbs1_res,
+                                               ARRAY_SIZE(usbs1_res));
        }
 }
 
-device_initcall(kzm9d_init);
+board_staging("renesas,kzm9d", kzm9d_init);