Help ! 2.6.14 kernel can't bring up
I was stuck at exactly this point for over a week. Basically, at this point lots of things happen all at once: Prior to this the MMU has had a small collection of TLB's setup. The 6 lines of code you listed: change from whatever Machine Status you powered up in to the proper Machine status for running the kernel with memory translation and exception handling enabled. and switch from executing using physical addresses to executing using virtual addresses. and "jump" via the "rfi" from real mode to virtual mode at virtual address start_here. If you are using a LED IO port for debugging, then you MUST setup a TLB entry for that LED or after the rfi you will not be able to write to it. There should be a setup tlb block inside a CONFIG_SERIAL_TEXT_DEBUG block copy it, change the address to match your LED port and set a new index and your LED debug port should be good to go. In my instance, my problem turned out to be with Machine Check exceptions - The moment that rfi executes not only is virtual memory enabled - but all exception handling is turned on. I was able to find this my "testing" things one bit in the MSR at a time, until I figured out which ones could be turned on and which could not. zjznliang wrote: > Hello David H. Lynch Jr.,? > > Now ,I am tracing the code in Linux 2.6.14 in head_8xx.S . > I used led to trace the procedure,and I found the block in it . > > 644 /* Now turn on the MMU for real! */ > 645 li r4,MSR_KERNEL > 646 lis r3,start_kernel at h > 647 ori r3,r3,start_kernel at l > 648 mtspr SPRN_SRR0,r3 > 649 mtspr SPRN_SRR1,r4 > 650 rfi /* enable MMU and jump to start_kernel > */ > > I set the led between the 649 and 650 ,and the led was light , > but when I set the led in the function start_kernel the led is not > light . > > I thought the function start_kernel was not jumped to . > > what do you think ? >
Help ! 2.6.14 kernel can't bring up
Hi clemens.koller? I have configed the CONFIG_WANT_EARLY_SERIAL for the 2.6.14 kernel,but I still didn't see nothing output on the serial port . I have some doubts, 1, Linux kernel 2.4.25 can work well with the same U-Boot and board as Linux kernel 2.6.14, what is the different with the serial port driver between these ? 2.The command line ,U-Boot sends command line to the kernel ,like as "baudrate ,root ". In the linux kernel 2.6.14,"make menuconfig ,platform ->default bootloader kernel argument",I config the console as the same as the U-boot , but it was fail .Didn't config it ,it was still fail . I have measured the pin of the serial port , no purse output. I checked the CS (chip select ) pin of the SDRAM (where is the linux kernel implementation), the pin has purses when the serial port with nothing ,so I thought the linux kernel was running ,but the serial port was fail Now , maybe I will check the kernel code to trace the problem . Thanks for your patience. If you have some advices ,please let me know .Thank you ! ??zjznliang zjznliang_popo at 163.com ??2005-11-21
Help ! 2.6.14 kernel can't bring up
Hello, zjznliang! zjznliang wrote: > Hi linuxppc-embedded? > > Hi , How to config the "early printk" in 2.6.14 linux configration??? Well... check the .config or the kernel sources for CONFIG_EARLY_PRINTK or CONFIG_WANT_EARLY_SERIAL Have a look at the bootup code of your board, where it's used. I would call the printk as soon as the serial ports are initialized. If that's too late, try to toggle some pin as early as possible. If that doesn't work, and if you have no more ideas of what to do, you might think about getting some hardware debugging tools. Best greets, -- Clemens Koller ___ R&D Imaging Devices Anagramm GmbH Rupert-Mayer-Str. 45/1 81379 Muenchen Germany http://www.anagramm.de Phone: +49-89-741518-50 Fax: +49-89-741518-19
Help ! 2.6.14 kernel can't bring up
zjznliang wrote: > Hi linuxppc-embedded? > > Hi , How to config the "early printk" in 2.6.14 linux configration??? > > > Console and debugging I/O is available at all stages of The Linux loading process - If the drivers for your board support it. There is nearly free support for 8250 like serial ports, in virtually all boards. Support for other debugging IO devices is fairly simple to setup. I used the arch/ppc/syslib/mv64x60_dbg.c and arch/ppc/boot/simple/mv64x60_tty.c as templates to create trivial drivers for debugging IO on hardware that had no relation to a UART. I think "early printk" refers to the early serial driver that can be used after the kernel has uncompressed itself and relocated itself and switched to a virtual environment. For 8250 like serial ports that can enabled in the linux .config file setup by make menuconfig or whatever variant of make xxconfig you prefer. For non-8250 like uarts you will again have to write an early serial driver. All the early debug IO drivers are trivial - little more is needed than an implementation of putc, as opposed to the full conolse support required for a tty on a booted system.
Help ! 2.6.14 kernel can't bring up
Hi linuxppc-embedded? Hi , How to config the "early printk" in 2.6.14 linux configration??? ??zjznliang zjznliang_popo at 163.com ??2005-11-18
Help ! 2.6.14 kernel can't bring up
Hi linuxppc-embedded? I have downloaded the Linux 2.6.14 from www.denx.de.I added and modified the file and compile it as what I did on Linux 2.4.25 which was also downloaded on www.denx.de. My board is base on MPC 857 ,and it goes well in Linux 2.4.25 . My bootloader is U-Boot 1.1.3 which goes well too. But when I bring up the Linux 2.6.14 ,I only got the information as follow : ## Booting image at ffc4 ... Image Name: Linux-2.6.14 Created: 2005-11-17 7:11:42 UTC Image Type: PowerPC Linux Kernel Image (gzip compressed) Data Size:678170 Bytes = 662.3 kB Load Address: Entry Point: Verifying Checksum ... OK Uncompressing Kernel Image ... OK ## Loading RAMDisk Image at ffd0 ... Image Name: Created: 2005-11-09 9:28:27 UTC Image Type: PowerPC Linux RAMDisk Image (gzip compressed) Data Size:1564369 Bytes = 1.5 MB Load Address: 00c0 Entry Point: 00c0 Verifying Checksum ... OK Loading Ramdisk to 00e3e000, end 00fbbed1 ... OK And there is nothing output ,I thought that it was serial port fault . I checked my Linux configuration ,but found nothing . How to make the linux 2.6.14 well on my board ?? Any help on this would be greatly appreciated. Thanks for your patience. ??zjznliang zjznliang_popo at 163.com ??2005-11-17
Help ! 2.6.14 kernel can't bring up
Hello, zjznliang! zjznliang wrote: > And there is nothing output ,I thought that it was serial port fault. > I checked my Linux configuration ,but found nothing . Check your kernel configuration. Have you tried to turn on "early printk" support in your kernel config? Linux might be booting already, but you just don't see it on your console. Good luck, -- Clemens Koller ___ R&D Imaging Devices Anagramm GmbH Rupert-Mayer-Str. 45/1 81379 Muenchen Germany http://www.anagramm.de Phone: +49-89-741518-50 Fax: +49-89-741518-19