Hi Philippe,

Attached patch adds other two fixes to make adeos work on BF548. The
patch is based on previous adeos-bf54x.patch. Please have a look.

Regards,

-Yi

On Thu, May 22, 2008 at 5:02 PM, Philippe Gerum <[EMAIL PROTECTED]> wrote:

>
> Merged, thanks.
>
diff -uprN -x .svn linux-kernel/arch/blackfin/mach-common/ints-priority.c linux-kernel.2/arch/blackfin/mach-common/ints-priority.c
--- linux-kernel/arch/blackfin/mach-common/ints-priority.c	2008-05-28 14:44:56.000000000 +0800
+++ linux-kernel.2/arch/blackfin/mach-common/ints-priority.c	2008-05-28 15:14:51.000000000 +0800
@@ -1024,46 +1024,96 @@ int __init init_arch_irq(void)
 # endif
 #elif defined(CONFIG_BF54x)
 			case IRQ_PINT0:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PINT1:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PINT2:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PINT3:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 #elif defined(CONFIG_BF52x)
 			case IRQ_PORTF_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PORTG_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PORTH_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 #elif defined(CONFIG_BF561)
 			case IRQ_PROG0_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PROG1_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 			case IRQ_PROG2_INTA:
+#ifdef CONFIG_IPIPE
+				__set_irq_demux_handler(irq, bfin_demux_gpio_irq,
+						1, "GPIO demux");
+#else /* !CONFIG_IPIPE */
 				set_irq_chained_handler(irq,
 							bfin_demux_gpio_irq);
+#endif
 				break;
 #endif
 			default:
diff -uprN -x .svn linux-kernel/include/asm-blackfin/ipipe.h linux-kernel.2/include/asm-blackfin/ipipe.h
--- linux-kernel/include/asm-blackfin/ipipe.h	2008-05-28 14:44:56.000000000 +0800
+++ linux-kernel.2/include/asm-blackfin/ipipe.h	2008-05-28 15:14:51.000000000 +0800
@@ -260,6 +260,7 @@ int ipipe_start_irq_thread(unsigned irq,
 #define bfin_write_TIMER_DISABLE(val)	bfin_write_TIMER_DISABLE0(val)
 #define bfin_write_TIMER_ENABLE(val)	bfin_write_TIMER_ENABLE0(val)
 #define bfin_write_TIMER_STATUS(val)	bfin_write_TIMER_STATUS0(val)
+#define bfin_read_TIMER_STATUS(val)	bfin_read_TIMER_STATUS0(val)
 #endif
 
 #else /* !CONFIG_IPIPE */
_______________________________________________
Xenomai-core mailing list
Xenomai-core@gna.org
https://mail.gna.org/listinfo/xenomai-core

Reply via email to