You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nuttx.apache.org by xi...@apache.org on 2024/09/28 05:34:44 UTC
(nuttx) 05/05: arm_gicv2.c: fix armv7a compile error
This is an automated email from the ASF dual-hosted git repository.
xiaoxiang pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/nuttx.git
commit fa6d41471f3ec44f17bb377e1c6cd253373c786d
Author: Yongrong Wang <wa...@xiaomi.com>
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 <wa...@xiaomi.com>
---
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 4aa9bd3bbe..f5d04522cb 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>
@@ -773,4 +774,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
-}