Many BSPs Failing to Build

Joel Sherrill joel.sherrill at OARcorp.com
Mon Apr 16 23:36:57 UTC 2012


Hi,

I will fix this if someone can confirm what I think will resolve this.

I think this is due to a clean up change by Jennifer which
rippled exposing incorrect prototypes embedded in C files.

../../../../../../../rtems/c/src/lib/libcpu/arm/pxa255/clock/../../../../libbsp/shared/clockdrv_shell.h:60:11: 
error: conflicting types for 'Clock_isr'
../../../../../../../rtems/c/src/lib/libcpu/arm/pxa255/clock/clock.c:89:11: 
note: previous declaration of 'Clock_isr' was here
../../../../../../../rtems/c/src/lib/libcpu/arm/pxa255/clock/../../../../libbsp/shared/clockdrv_shell.h:61:11: 
error: conflicting types for 'Clock_isr'
../../../../../../../rtems/c/src/lib/libcpu/arm/pxa255/clock/clock.c:89:11: 
note: previous declaration of 'Clock_isr' was here

shared/clockdrv_shell.h now has this which means when
BSP_FEATURE_IRQ_EXTENSION is defined, we use a different
(and I hope correct) signature for Clock_isr.

+#ifdef BSP_FEATURE_IRQ_EXTENSION
+rtems_isr Clock_isr(void *arg);
+rtems_isr Clock_isr(void *arg)
+{
+#else
+rtems_isr Clock_isr(rtems_vector_number vector);
rtems_isr Clock_isr(
rtems_vector_number vector
)
{
+#endif

But the clock drivers actually prototype Clock_isr
like this which was OK because they cast it to
something else.

rtems_isr Clock_isr(rtems_vector_number vector);

I am not pretty sure that the "void *" version is correct
for the BSP_FEATURE_IRQ_EXTENSION case but
really should be:

void Clock_isr( rtems_irq_hdl_param arg )

Can someone confirm this before I sweep through the
code?

And since rtems_isr is a typedef for void for documentation
purposes, wouldn't it make sense to use it in rtems/irq.h?

-- 
Joel Sherrill, Ph.D.             Director of Research&   Development
joel.sherrill at OARcorp.com        On-Line Applications Research
Ask me about RTEMS: a free RTOS  Huntsville AL 35805
     Support Available             (256) 722-9985


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.rtems.org/pipermail/devel/attachments/20120416/a5a53c86/attachment.html>


More information about the devel mailing list