[meta-ti] [PATCH 2/3] ti-dsplink: Fix irq mismatch for kernel versions greater than 3.7.0.

Enric Balletbo i Serra eballetbo at iseebcn.com
Wed Oct 8 06:47:45 PDT 2014


Commit 7d7e1eb (ARM: OMAP2+: Prepare for irqs.h removal) and commit
ec2c082 (ARM: OMAP2+: Remove hardcoded IRQs and enable SPARSE_IRQ)
from kernel updated the way interrupts for OMAP2/3 devices are defined.

Fix irq number as dsplink misses to add the NR_IRQS relative offset.

Signed-off-by: Enric Balletbo i Serra <eballetbo at iseebcn.com>
---
 recipes-ti/dsplink/ti-dsplink.inc                        |  2 +-
 .../dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch     | 16 ++++++++++++++++
 recipes-ti/dsplink/ti-dsplink_1.65.00.03.bb              |  1 +
 3 files changed, 18 insertions(+), 1 deletion(-)
 create mode 100644 recipes-ti/dsplink/ti-dsplink/dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch

diff --git a/recipes-ti/dsplink/ti-dsplink.inc b/recipes-ti/dsplink/ti-dsplink.inc
index fa1c9dd..78b53cf 100644
--- a/recipes-ti/dsplink/ti-dsplink.inc
+++ b/recipes-ti/dsplink/ti-dsplink.inc
@@ -21,7 +21,7 @@ PROVIDES += "ti-dsplink-examples"
 
 # This package builds a kernel module, use kernel PR as base and append a local version
 PR = "${MACHINE_KERNEL_PR}"
-PR_append = "j"
+PR_append = "h"
 
 S = "${WORKDIR}/dsplink_linux_${PV}"
 
diff --git a/recipes-ti/dsplink/ti-dsplink/dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch b/recipes-ti/dsplink/ti-dsplink/dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch
new file mode 100644
index 0000000..787c22e
--- /dev/null
+++ b/recipes-ti/dsplink/ti-dsplink/dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch
@@ -0,0 +1,16 @@
+Index: dsplink_linux_1_65_00_03/dsplink/gpp/src/osal/Linux/2.6.18/isr.c
+===================================================================
+--- dsplink_linux_1_65_00_03.orig/dsplink/gpp/src/osal/Linux/2.6.18/isr.c
++++ dsplink_linux_1_65_00_03/dsplink/gpp/src/osal/Linux/2.6.18/isr.c
+@@ -286,7 +286,11 @@ ISR_Create (IN  IsrProc             fnIS
+ 
+         if (DSP_SUCCEEDED (status)) {
+             (*isrObj)->signature = SIGN_ISR       ;
++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,7,0)
+             (*isrObj)->irq       = intObj->intId  ;
++#else
++            (*isrObj)->irq       = intObj->intId + NR_IRQS ;
++#endif
+             (*isrObj)->enabled   = FALSE          ;
+             (*isrObj)->dspId     = intObj->dspId  ;
+             (*isrObj)->checkFunc = intObj->checkFunc  ;
diff --git a/recipes-ti/dsplink/ti-dsplink_1.65.00.03.bb b/recipes-ti/dsplink/ti-dsplink_1.65.00.03.bb
index 1d6fb00..2606cfc 100644
--- a/recipes-ti/dsplink/ti-dsplink_1.65.00.03.bb
+++ b/recipes-ti/dsplink/ti-dsplink_1.65.00.03.bb
@@ -9,6 +9,7 @@ PV_DL_PATH = "DSPLink/${PV_major}/${PV}/${PV_dot}"
 
 SRC_URI += "file://dsplink-BKL-fix.patch \
             file://0001-remove-check-for-make-version-3.85-works-fine.patch \
+            file://dsplink_1_65_kernel_3_7_0_fix-irq-mismatch.patch \
            "
 
 SRC_URI[dsplinktarball.md5sum] = "1bda596b631bd2f517edc70f6be4f2ca"
-- 
1.9.1



More information about the meta-ti mailing list