This is an automated email from the ASF dual-hosted git repository.

raiden00 pushed a commit to branch releases/12.7
in repository https://gitbox.apache.org/repos/asf/nuttx.git

commit c48f158e66bd5baf6c90ecd5a1371043492a1f7e
Author: Yongrong Wang <[email protected]>
AuthorDate: Thu Aug 15 15:32:17 2024 +0800

    arm_gicv2.c: fix armv7a compile error
    
    /vela/nuttx/drivers/pci/pci_ecam.c:432:(.text.pci_ecam_get_irq+0x16): 
undefined reference to `up_get_legacy_irq'
    
    Signed-off-by: Yongrong Wang <[email protected]>
---
 arch/arm/src/armv7-a/arm_gicv2.c  | 25 +++++++++++++++++++++++++
 arch/arm/src/armv7-a/arm_gicv2m.c | 23 -----------------------
 2 files changed, 25 insertions(+), 23 deletions(-)

diff --git a/arch/arm/src/armv7-a/arm_gicv2.c b/arch/arm/src/armv7-a/arm_gicv2.c
index f4730ce243..bb4dba3717 100644
--- a/arch/arm/src/armv7-a/arm_gicv2.c
+++ b/arch/arm/src/armv7-a/arm_gicv2.c
@@ -30,6 +30,7 @@
 #include <errno.h>
 
 #include <nuttx/arch.h>
+#include <nuttx/pci/pci.h>
 #include <nuttx/spinlock.h>
 #include <arch/irq.h>
 
@@ -775,4 +776,28 @@ void up_send_smp_call(cpu_set_t cpuset)
   up_trigger_irq(GIC_SMP_CPUCALL, cpuset);
 }
 #endif
+
+/****************************************************************************
+ * Name: up_get_legacy_irq
+ *
+ * Description:
+ *   Reserve vector for legacy
+ *
+ ****************************************************************************/
+
+int up_get_legacy_irq(uint32_t devfn, uint8_t line, uint8_t pin)
+{
+#if CONFIG_ARMV7A_GICV2_LEGACY_IRQ0 >= 0
+  uint8_t slot;
+  uint8_t tmp;
+
+  UNUSED(line);
+  slot = PCI_SLOT(devfn);
+  tmp = (pin - 1 + slot) % 4;
+  return CONFIG_ARMV7A_GICV2_LEGACY_IRQ0 + tmp;
+#else
+  return -ENOTSUP;
+#endif
+}
+
 #endif /* CONFIG_ARMV7A_HAVE_GICv2 */
diff --git a/arch/arm/src/armv7-a/arm_gicv2m.c 
b/arch/arm/src/armv7-a/arm_gicv2m.c
index 8d96a5c2cb..6752862e72 100644
--- a/arch/arm/src/armv7-a/arm_gicv2m.c
+++ b/arch/arm/src/armv7-a/arm_gicv2m.c
@@ -137,26 +137,3 @@ int up_connect_irq(int *irq, int num,
   *mdr = *irq;
   return 0;
 }
-
-/****************************************************************************
- * Name: up_get_legacy_irq
- *
- * Description:
- *   Reserve vector for legacy
- *
- ****************************************************************************/
-
-int up_get_legacy_irq(uint32_t devfn, uint8_t line, uint8_t pin)
-{
-#if CONFIG_ARMV7A_GICV2_LEGACY_IRQ0 >= 0
-  uint8_t slot;
-  uint8_t tmp;
-
-  UNUSED(line);
-  slot = PCI_SLOT(devfn);
-  tmp = (pin - 1 + slot) % 4;
-  return CONFIG_ARMV7A_GICV2_LEGACY_IRQ0 + tmp;
-#else
-  return -ENOTSUP;
-#endif
-}

Reply via email to