Fix ticket #97.
[bertos.git] / bertos / cpu / arm / drv / adc_at91.c
index faa0d1817f4379a3964daa2d8173c011a7d16f45..4ac358616a89a49821c20dfd1b620f7d8e54f360 100644 (file)
@@ -84,9 +84,9 @@
         * ADC ISR.
         * Simply signal the adc process that convertion is complete.
         */
-       static void ISR_FUNC adc_conversion_end_irq(void)
+       static DECLARE_ISR(adc_conversion_end_irq)
        {
-               sig_signal(adc_process, SIG_ADC_COMPLETE);
+               sig_post(adc_process, SIG_ADC_COMPLETE);
 
                /* Inform hw that we have served the IRQ */
                AIC_EOICR = 0;
@@ -184,6 +184,7 @@ void adc_hw_init(void)
        #endif
        /* \} */
 
+       LOG_INFO("Computed ADC_CLOCK %ld\n", ADC_COMPUTED_CLOCK);
        LOG_INFO("prescaler[%ld], stup[%ld], shtim[%ld]\n",ADC_COMPUTED_PRESCALER, ADC_COMPUTED_STARTUPTIME,  ADC_COMPUTED_SHTIME);
 
 
@@ -201,7 +202,7 @@ void adc_hw_init(void)
        ADC_MR &= ~ADC_SHTIME_MASK;
        ADC_MR |= ((ADC_COMPUTED_SHTIME << ADC_SHTIME_SHIFT) & ADC_SHTIME_MASK);
        LOG_INFO("shtime[%ld]\n", (ADC_COMPUTED_SHTIME << ADC_SHTIME_SHIFT) & ADC_SHTIME_MASK);
-
+       
        #if CONFIG_KERN
                //Register and enable irq for adc.
                adc_enable_irq();