Many BSPs Failing to Build

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


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.

error: conflicting types for 'Clock_isr'
note: previous declaration of 'Clock_isr' was here
error: conflicting types for 'Clock_isr'
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.

+rtems_isr Clock_isr(void *arg);
+rtems_isr Clock_isr(void *arg)
+rtems_isr Clock_isr(rtems_vector_number vector);
rtems_isr Clock_isr(
rtems_vector_number vector

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
really should be:

void Clock_isr( rtems_irq_hdl_param arg )

Can someone confirm this before I sweep through the

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        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: <>

More information about the devel mailing list