Re: linux 2.6 hangs at __delay function on Viretx 4 board
Hello Sorry for the late reply. I was busy with another project. I finally got linux 2.6 to boot on HITECH board. Thanks to John Linn for all the pointers to debug the code. I also got the UARTLITE as console working. I had to disable several macros in virtex_devices.c to make the kernel boot. Now I am working on using UART16550 as console which is free at Xilinx after registration. Thanks to Marc and Stephen for the info. --swamy swamydp wrote: I am trying to boot linux 2.6 on HITECH virtex 4(fx60) board. Linux hangs at address 0xc00045ec which is in the __udelay function. I am using EDK 9.2i and gcc version 4.0.2 for compiling the kernel. The following is the boot message from the bootloader. loaded at: 0040 0054E19C board data at: 0054C120 0054C19C relocated to: 00404064 004040E0 zimage at: 00404E55 0054B5B4 avail ram: 0054F000 0200 Linux/PPC load: console=ttyS0,9600 console=tty0 root=/dev/sda2 Uncompressing Linux...done. Now booting the kernel Any help is greatly appreciated. I have run out of ideas to fix this. Thanks swamy -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-board-tp17222725p18012972.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
RE: linux 2.6 hangs at __delay function on Viretx 4 board
Hi John I am using UARTLITE as serial console. I do not have license for UART 16550. I have enabled the drivers for uartlite in menuconfig while configuring the kernel. I have tested all combinations for the kernel command line - tty0, ttyUL0, ttyl0, ttyS0 but could not get uartlite to output kernel printk messages. Since I am using uartlite , the following settings are turned off in menuconfig CONFIG_SERIAL_8250=n CONFIG_SERIAL_8250_CONSOLE=n I have seen many posts claim that uartlite seems to work with ttyUL0 setting in the kernel command line but I am having trouble with that. Thanks swamy Hi Swamy, Sorry for the long delay. Sounds like the console is not setup correctly. I notice in your command line it appears that you have 2 console statements. I have not tested this ever and I would change it to only have the console=ttyS0,9600. I have seen other mailings, no Xilinx specific, related to this causing problems. This console setup assumes you're using the Xilinx 16550 UART. It could be an issue with the xparameters*.h file with the address of the UART. Have you compared your arch/ppc/platforms/4xx/xparameters/xparameters*.h file, whichever one it's setup to use, to the ones that we provided in the Git tree? I'm assuming you have the kernel configured correctly to use the UART16550 driver and the console is turned on, both are needed. The 16550 is 8250 compatible (mostly) and works with it's driver from Linux. CONFIG_SERIAL_8250=y CONFIG_SERIAL_8250_CONSOLE=y Thanks, John -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-board-tp17222725p17638198.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
RE: linux 2.6 hangs at __delay function on Viretx 4 board
Hi John Sorry for getting back late. I have been debugging further using the UART to send output directly to serial post. Now I see that just after entering start_kernel, a ITLB miss exception occurs and linux hangs at that point. Looks like the kernel is probably not running at all yet, may stuck in early initialization. Yes 1. Has the kernel ever ran on this board or is this development to get it running? No. This is a new board and I am trying to build a simple EDK system with only PPC, UART, PIC as the devices. 2. Not sure on the tools you are using to build it. You mention the EDK, but you must not be using it's compiler as it's not configured in the EDK to build Linux. EDK 9.2 version, XMD for debug. Kernel 2.6 version is built in linux machine and zImage.elf is downloaded to the board. Thanks for the UART suggestion, works well. Any suggestions as to what might be wrong in start_kernel function ? I will continue debugging meanwhile. Thanks swamy -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-board-tp17222725p17454696.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
RE: linux 2.6 hangs at __delay function on Viretx 4 board
John Thanks for your suggestions. I looked up the virtual address for __log_buf in System.map and subtracted 0xc000 to get the physical address. I then reset the processor from XMD and dump contents of the physical address of __log_buf using 'mrd' command from XMD. All I see is bunch of zeros in those locations. I am debugging but do not have much clue. Swamy John Linn wrote: Hi Swamy, I have seen this sometime before I think, but don't remember why. I see that udelay depends on loops_per_jiffy, have you looked to see what value it is? Maybe it's garbage and some large value? Have you tried dumping the __log_buf to understand how far it got thru booting the kernel before it got hung? I assume you must be using xmd to load the image, you can also use it to dump the buffer. On another processor I have seen it get hung in the calibrate_delay call from the kernel if the interrupts or timer aren't working, but haven't ever seen that on the Powerpc. Thanks, John -Original Message- From: [EMAIL PROTECTED] [mailto:[EMAIL PROTECTED] On Behalf Of swamydp Sent: Tuesday, May 13, 2008 9:29 PM To: linuxppc-embedded@ozlabs.org Subject: linux 2.6 hangs at __delay function on Viretx 4 board I am trying to boot linux 2.6 on HITECH virtex 4(fx60) board. Linux hangs at address 0xc00045ec which is in the __udelay function. I am using EDK 9.2i and gcc version 4.0.2 for compiling the kernel. The following is the boot message from the bootloader. loaded at: 0040 0054E19C board data at: 0054C120 0054C19C relocated to: 00404064 004040E0 zimage at: 00404E55 0054B5B4 avail ram: 0054F000 0200 Linux/PPC load: console=ttyS0,9600 console=tty0 root=/dev/sda2 Uncompressing Linux...done. Now booting the kernel Any help is greatly appreciated. I have run out of ideas to fix this. Thanks swamy -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-bo ard-tp17222725p17222725.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-board-tp17222725p17276753.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded
linux 2.6 hangs at __delay function on Viretx 4 board
I am trying to boot linux 2.6 on HITECH virtex 4(fx60) board. Linux hangs at address 0xc00045ec which is in the __udelay function. I am using EDK 9.2i and gcc version 4.0.2 for compiling the kernel. The following is the boot message from the bootloader. loaded at: 0040 0054E19C board data at: 0054C120 0054C19C relocated to: 00404064 004040E0 zimage at: 00404E55 0054B5B4 avail ram: 0054F000 0200 Linux/PPC load: console=ttyS0,9600 console=tty0 root=/dev/sda2 Uncompressing Linux...done. Now booting the kernel Any help is greatly appreciated. I have run out of ideas to fix this. Thanks swamy -- View this message in context: http://www.nabble.com/linux-2.6-hangs-at-__delay-function-on-Viretx-4-board-tp17222725p17222725.html Sent from the linuxppc-embedded mailing list archive at Nabble.com. ___ Linuxppc-embedded mailing list Linuxppc-embedded@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-embedded