
Hi Francis,
The best way to debug this is to set an internal hardware breakpoint at address 0. Use the terminal window command IHBD 0. It's easier than using the GUI.
Start the target running and let UBoot load the kernel. When it jumps to location 0, you'll hit the breakpoint and be able to step through the code. The MMU is turned on very shortly (15-20 lines into the code), so you'll need to have the visionICE II configured with the CF MMU commands or it will get lost once translation is turned on.
Good luck, Joe
-----Original Message----- From: ppcboot-users-admin@lists.sourceforge.net [mailto:ppcboot-users-admin@lists.sourceforge.net]On Behalf Of Francis Yu francisy@luxn.com Sent: Thursday, October 24, 2002 7:14 PM To: 'Joe Hamman'; Francis Yu francisy@luxn.com; ppcboot-users@lists.sourceforge.net Subject: RE: [PPCBoot-users] How to load Linux locally?
Joe, I cannot thank you enough for the following step-by-step instructions that you have listed so clearly. It works! I am so happy to observe that the PPCBOOT decompressed the kernel image at the location that I have downloaded and see the message "## Transferring control to Linux (at address 00000000) ...". But soon it died inside "InstructionTLBMiss". This would be a question not belonging here... Any way, as Wolfgang has been repeatedly stating "RTFM!!!". I guess I am simply overwhelmed with so much information out there that sometimes it is difficult to sift through them all to get the right answer. Once again, thanks to all you folks. Francis
-----Original Message----- From: Joe Hamman [mailto:joe.hamman@embeddedspecialties.com] Sent: Wednesday, October 23, 2002 6:12 AM To: francisy@luxn.com; ppcboot-users@lists.sourceforge.net Subject: RE: [PPCBoot-users] How to load Linux locally?
Hi Francis,
If you cannot use ethernet, do it this way:
Put the linux build environment back to its original form.
Make pImage - this generates the file zImage, packaged with the mkimage utility. PPCboot knows this format. If the kernel distribution you are using does not support this, get one that does.
Convert pImage to a .bdx file using visionCLICK.
Go into the project configuration, go to the Load Options tab, and set the Apply +/- Bias to something like 100000. Don't forget to check the box to enable the bias. Save and exit the project configuartion dialog.
Reboot the board (INN;GO <RETURN> at the BKM> prompt).
Stop the PPCboot autoloader (if it is enabled) and get to the PPCboot prompt.
In visionCLICK, stop the target (click on the stop sign icon or type 'ha' or 'halt' at the RUN> prompt).
Then use the 'File | Load A Target Image' pulldown in visionCLICK to load the pImage.bdx.
Start PPCboot running from where it left off (click on the green light icon or type 'go' at the BKM> prompt).
At the PPCboot prompt, type 'imi 0x100000' to see if it recognizes the image you just loaded into ram.
If recognized, use the 'bootm 0x100000' command to have PPCboot uncompress and launch the image.
Don't forget to read all the docs on www.denx.de.
Good luck! Joe
-----Original Message----- From: ppcboot-users-admin@lists.sourceforge.net [mailto:ppcboot-users-admin@lists.sourceforge.net]On Behalf Of Francis Yu francisy@luxn.com Sent: Tuesday, October 22, 2002 6:31 PM To: 'ppcboot-users@lists.sourceforge.net' Subject: [PPCBoot-users] How to load Linux locally?
Hi!
After spending some time to modified the files for my custom PPC board, I finally got the ppcboot up and running ( to some degree). I programmed the ppcboot in flash at 0xfff0,0000, and after resetting the board the ppcboot will tell me that I have 16M DRAM starting at 0 to 0x00ff,ffff, and the ppcboot has relocated itself to 0x00fc,0000. If I hit any key at this time it stops the boot request and gets into the command mode, waiting for the user input. My next step is to try to load Linux locally without using FTP.
I have built the vmlinux.srec and convert it into the bin format using the VisionClick ( yes, I do not have the BDI2100 but believe me I would have gotten one if the darn economy is not this bad!) The original address is linked at 0xc000,0000, but since I do not have any memory there I tried to build the vmlinux by modifying the KERNELLOAD to be 0x0080,0000, then loaded it to RAM using the VisionProbe. I then use the GO command of the ppcboot to jump to 0x0080,0000. As expected, it crashed.
1/ Is the Linux kernel always linked at 0xC000,0000? What if I do not have any memory there?
2/ In reading section 6 of the PPCBOOT's document, "Booting Embedded Linux", is the embedded Linux in this case means the compressed Linux kernel plus the bootstrap and decompressor, otherwise known as the Zimage or Pimage?
3/ I tried to use the bootm command to boot the "embedded kernel", (I guess it would be the zimage which I have loaded into RAM at location 0x0040,0000) but it returned with the "Bad Magic Number" message. How do I build the zimage so that I could pass this stage?
I know that I am testing your patience with my stupid questions, which seems so obvious to most of you, but for a guy who is new in this area, please bear with me. Thanks
Francis Yu francisy@luxn.com
------------------------------------------------------- This sf.net emial is sponsored by: Influence the future of Java(TM) technology. Join the Java Community Process(SM) (JCP(SM)) program now. http://ad.doubleclick.net/clk;4699841;7576301;v?http://www.sun.com/javavote _______________________________________________ PPCBoot-users mailing list PPCBoot-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ppcboot-users
------------------------------------------------------- This sf.net email is sponsored by: Influence the future of Java(TM) technology. Join the Java Community Process(SM) (JCP(SM)) program now. http://ads.sourceforge.net/cgi-bin/redirect.pl?sunm0003en _______________________________________________ PPCBoot-users mailing list PPCBoot-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/ppcboot-users