Re: calibrate_delay function

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



hi,

I checked what functions are being executed in the start up process and
found that the au1xxx_timer_setup is called and executed..

Also the processor has 2 counters, the TOY (time of year) and RTC, so
the calibrate_div32_gettimeoffset gets executed...

how can I check if I get the timer interrupt?

Thanks,
Ashlesha.

On Tue, 2006-10-10 at 16:30 -0700, mlachwani wrote:
> Can you check to see if you are getting timer interrupts
> 
> thanks,
> Manish Lachwani
> 
> Ashlesha Shintre wrote:
> >>> start_kernel() calls calibrate_delay() which can be found in 
> >>> init/calibrate.c
> >>>       
> >
> > Thanks, I did find it and put in a few printk s to debug the problem.
> >
> > i have pasted part of the calibrate_delay function where the kernel gets stuck..
> > It is getting stuck at the second while loop where it goes into an infinite loop!
> > the value of ash_count keeps incrementing and thats all i see in the log buffer!
> >
> > i can see why the kernel is stuck -- its because ticks=jiffies is the command just before infinitely looping based on the condition that ticks==jiffies!
> > Am I not looking in the right place?
> >
> > Regards,
> > Ashlesha.
> >   
> >>  printk(KERN_DEBUG "Calibrating delay loop... ");
> >>                 while ((loops_per_jiffy <<= 1) != 0) {
> >>                         printk("within the while loop\n");
> >>                         /* wait for "start of" clock tick */
> >>                         ticks = jiffies;
> >>                         while (ticks == jiffies)
> >>                                 printk("%d\n",++ash_count);
> >>                                 /* nothing ; infinite loop, control never comes out of here*/
> >>                         /* Go .. */
> >>     
> >
> > On Tue, 2006-10-10 at 15:38 -0700, mlachwani wrote:
> >   
> >> Ashlesha Shintre wrote:
> >>     
> >>> Hi,
> >>> I m working on the Encore M3 board that has the AU1500 MIPS processor on
> >>> it.  I aim to port the 2.6 linux kernel to the board which is already
> >>> supported in the 2.4 kernel.
> >>>
> >>> The start_kernel function in linux/init/main.c file, calls a function
> >>> calibrate_delay found in the arch/frv/kernel/setup.c file.  Why does the
> >>> kernel call this function which is a part of the Fujitsu FR-V
> >>> architecture?  
> >>>
> >>> When I build the image, this is the point where the kernel is stuck and
> >>> the last contents of the log buffer show the following printk message
> >>> from the calibrate_delay function:
> >>>
> >>>
> >>>   
> >>>       
> >>>> Calibrating delay loop...
> >>>>     
> >>>>         
> >>> Thanks,
> >>> Ashlesha.
> >>>
> >>>
> >>>
> >>>
> >>>   
> >>>       
> >
> >   
> >>> start_kernel() calls calibrate_delay() which can be found in 
> >>> init/calibrate.c
> >>>
> >>>       
> >> thanks,
> >> Manish Lachwani
> >>     
> >
> >   
> 
> 



[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux