Преглед изворни кода

Merge pull request #5344 from Guozhanxin/v4.0.x

[bsp][qemu-vexpress-gemini] fix build error.
guo пре 3 година
родитељ
комит
2608699bfc

+ 1 - 1
bsp/qemu-vexpress-gemini/.config

@@ -81,7 +81,7 @@ CONFIG_RT_VER_NUM=0x40004
 CONFIG_ARCH_ARM=y
 CONFIG_RT_USING_CPU_FFS=y
 CONFIG_ARCH_ARM_CORTEX_A=y
-CONFIG_RT_NO_USING_GIC=y
+CONFIG_RT_USING_GIC_V2=y
 CONFIG_ARCH_ARM_CORTEX_A9=y
 
 #

+ 1 - 0
bsp/qemu-vexpress-gemini/Kconfig

@@ -23,6 +23,7 @@ config SOC_VEXPRESS_GEMINI
     select ARCH_ARM_CORTEX_A9
     select RT_USING_COMPONENTS_INIT
     # select RT_USING_USER_MAIN
+    select RT_USING_GIC_V2
     default y
 
 source "$BSP_DIR/drivers/Kconfig"

+ 17 - 0
bsp/qemu-vexpress-gemini/cpu/cpu.c

@@ -30,4 +30,21 @@ void rt_hw_cpu_shutdown()
     }
 }
 
+#ifdef RT_USING_CPU_FFS
+/**
+ * This function finds the first bit set (beginning with the least significant bit)
+ * in value and return the index of that bit.
+ *
+ * Bits are numbered starting at 1 (the least significant bit).  A return value of
+ * zero from any of these functions means that the argument was zero.
+ *
+ * @return return the index of the first bit set. If value is 0, then this function
+ * shall return 0.
+ */
+int __rt_ffs(int value)
+{
+    return __builtin_ffs(value);
+}
+#endif
+
 /*@}*/

+ 1 - 1
bsp/qemu-vexpress-gemini/rtconfig.h

@@ -51,7 +51,7 @@
 #define ARCH_ARM
 #define RT_USING_CPU_FFS
 #define ARCH_ARM_CORTEX_A
-#define RT_NO_USING_GIC
+#define RT_USING_GIC_V2
 #define ARCH_ARM_CORTEX_A9
 
 /* RT-Thread Components */