Re: calibrate_delay function

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

 



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