RE: Psim and kickstart
Jan Stoess <[email protected]> Wed, 9 Feb 2011 09:08:37 +0000
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
--_000_0453D4730CA16449B61476A072CC48BC0568ECA9i30s6osukade_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable Hi Nils, Kickstart is less a real boot loader, more a trampoline loader for pistachi= o. In the embedded world, we use the "das u-boot " Bootloader, and then loa= d kickstart from there, which eventually boots the kernel. I cannot comment on psim, since I'm totally lacking experience with non-emb= edded versions of ppc; I suspect, however, that you're in need of a real bo= ot loader. There once was one for L4 on openfirmware powerpcs, which is sti= ll in the pistachio tree, under piggybacker. Since the name says piggybacke= r, I suspect it'll somehow glue together all binaries into a single image (= the Makefile there suggests that, too). Try to resurrect and compile that; = it may need some fuzzing with source code and dependency paths. Then give t= his a try: powerpc-unknown-eabi-run -e chirp -m 604 -f psim.tree ofppc-loader -Jan -- Dr.-Ing. Jan Stoess KIT/UKa System Architecture Group Phone: +49 (721) 6084 4056 Fax: +49 (721) 6084 7664 http://os.ibds.kit.edu/stoess From: [email protected] [mailto:[email protected]= uhe.de] On Behalf Of Nils Ole Timm Sent: Monday, February 07, 2011 18:49 To: [email protected] Subject: Psim and kickstart I have managed to compile the kernel and the user level applications for l4= ka:pistachio for powerpc now. When I tried to run it on the p2020 machine I have here it didn't work, whi= ch didn't really surprise me. Then however I decided that I wanted to set up psim and check what is going= on inside the machine, but it turns out that kickstart crashes on the very= first instruction in the binary, which should be: mfspr %r24, 0x11e Here is the log from my attempt to run kickstart in psim, I build psim as s= uggested in ppc-build.txt and used the psim.tree that was specified there. I did not apply the patches to psim though, since with the most recent gdb = distribution they seem to have been fixed. Here is the log from what I ran and what the results were. powerpc-unknown-eabi-run -e chirp -i2 -f psim.tree user/util/kickstart/kick= start cpu 1, cia 0x700: double interrupt - MSR[RI] bit clear when attempting to d= eliver interrupt, cia=3D0x700, msr=3D0x1000; srr0=3D0x400000(cia), srr1=3D0= x89032(msr); trap-vector=3D0x700, trap-msr=3D0x1000 CPU #1 executed 1 Move from Special Purpose Register instruction. CPU #1 executed 2 icache misses. CPU #1 executed 1 instructions in total. CPU #2 executed 1 Branch instruction. CPU #2 executed 1 icache miss. CPU #2 executed 1 instructions in total. CPU #3 executed 1 Branch instruction. CPU #3 executed 1 icache miss. CPU #3 executed 1 instructions in total. CPU #4 executed 1 Branch instruction. CPU #4 executed 1 icache miss. CPU #4 executed 1 instructions in total. All CPUs executed 4 instructions in total. Simulator speed was 111 instructions/second. user/util/kickstart/kickstart: Caught signal -1 at address 0x700 I hope somebody can offer some advice on this issue. Best regards, Nils Ole Timm --_000_0453D4730CA16449B61476A072CC48BC0568ECA9i30s6osukade_ Content-Type: text/html; charset="us-ascii" Content-Transfer-Encoding: quoted-printable <html xmlns:v=3D"urn:schemas-microsoft-com:vml" xmlns:o=3D"urn:schemas-micr= osoft-com:office:office" xmlns:w=3D"urn:schemas-microsoft-com:office:word" = xmlns:m=3D"http://schemas.microsoft.com/office/2004/12/omml" xmlns=3D"http:= //www.w3.org/TR/REC-html40"> <head> <meta http-equiv=3D"Content-Type" content=3D"text/html; charset=3Dus-ascii"= > <meta name=3D"Generator" content=3D"Microsoft Word 14 (filtered medium)"> <style><!-- /* Font Definitions */ @font-face {font-family:"Cambria Math"; panose-1:2 4 5 3 5 4 6 3 2 4;} @font-face {font-family:Calibri; panose-1:2 15 5 2 2 2 4 3 2 4;} @font-face {font-family:Tahoma; panose-1:2 11 6 4 3 5 4 4 2 4;} @font-face {font-family:Consolas; panose-1:2 11 6 9 2 2 4 3 2 4;} /* Style Definitions */ p.MsoNormal, li.MsoNormal, div.MsoNormal {margin:0in; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman","serif";} a:link, span.MsoHyperlink {mso-style-priority:99; color:blue; text-decoration:underline;} a:visited, span.MsoHyperlinkFollowed {mso-style-priority:99; color:purple; text-decoration:underline;} span.EmailStyle17 {mso-style-type:personal-reply; font-family:"Calibri","sans-serif"; color:#1F497D;} .MsoChpDefault {mso-style-type:export-only; font-family:"Calibri","sans-serif";} @page WordSection1 {size:8.5in 11.0in; margin:1.0in 1.0in 1.0in 1.0in;} div.WordSection1 {page:WordSection1;} --></style><!--[if gte mso 9]><xml> <o:shapedefaults v:ext=3D"edit" spidmax=3D"1026" /> </xml><![endif]--><!--[if gte mso 9]><xml> <o:shapelayout v:ext=3D"edit"> <o:idmap v:ext=3D"edit" data=3D"1" /> </o:shapelayout></xml><![endif]--> </head> <body lang=3D"EN-US" link=3D"blue" vlink=3D"purple"> <div class=3D"WordSection1"> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Hi Nils, <o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"><o:p> </o:p></span><= /p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Kickstart is less a real = boot loader, more a trampoline loader for pistachio. In the embedded world,= we use the “das u-boot “ Bootloader, and then load kickstart from there, which eventually boots the kernel.<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"><o:p> </o:p></span><= /p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">I cannot comment on psim,= since I’m totally lacking experience with non-embedded versions of p= pc; I suspect, however, that you’re in need of a real boot loader. There once was one for L4 on openfirmware powerpcs, which is still in the = pistachio tree, under piggybacker. Since the name says piggybacker, I suspe= ct it’ll somehow glue together all binaries into a single image (the = Makefile there suggests that, too). Try to resurrect and compile that; it may need some fuzzing with source code a= nd dependency paths. Then give this a try:<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"> powerpc-unknown-ea= bi-run -e chirp -m 604 -f psim.tree ofppc-loader<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"><o:p> </o:p></span><= /p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">-Jan<o:p></o:p></span></p= > <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">--<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Dr.-Ing. Jan Stoess<o:p><= /o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">KIT/UKa System Architectu= re Group<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Phone: +49 (721) 6084= 4056<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Fax: +49 (721) 6084 7= 664<o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"><a href=3D"http://os.ibds= .kit.edu/stoess"><span style=3D"color:blue">http://os.ibds.kit.edu/stoess</= span></a> <o:p></o:p></span></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D"><o:p> </o:p></span><= /p> <div style=3D"border:none;border-left:solid blue 1.5pt;padding:0in 0in 0in = 4.0pt"> <div> <div style=3D"border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in = 0in 0in"> <p class=3D"MsoNormal"><b><span style=3D"font-size:10.0pt;font-family:"= ;Tahoma","sans-serif"">From:</span></b><span style=3D"font-s= ize:10.0pt;font-family:"Tahoma","sans-serif""> l4ka-bou= [email protected] [mailto:[email protected]] <b>On Behalf Of </b>Nils Ole Timm<br> <b>Sent:</b> Monday, February 07, 2011 18:49<br> <b>To:</b> [email protected]<br> <b>Subject:</b> Psim and kickstart<o:p></o:p></span></p> </div> </div> <p class=3D"MsoNormal"><o:p> </o:p></p> <p class=3D"MsoNormal" style=3D"margin-bottom:12.0pt">I have managed to com= pile the kernel and the user level applications for l4ka:pistachio for powe= rpc now.<br> When I tried to run it on the p2020 machine I have here it didn't work, whi= ch didn't really surprise me.<br> Then however I decided that I wanted to set up psim and check what is going= on inside the machine, but it turns out that kickstart crashes on the very= first instruction in the binary, which should be:<br> <br> mfspr %r24, 0x11e<br> <br> <br> Here is the log from my attempt to run kickstart in psim, I build psim as s= uggested in ppc-build.txt and used the psim.tree that was specified there.<= br> I did not apply the patches to psim though, since with the most recent gdb = distribution they seem to have been fixed.<br> Here is the log from what I ran and what the results were.<br> <br> powerpc-unknown-eabi-run -e chirp -i2 -f psim.tree user/util/kickstart/kick= start <br> <br> cpu 1, cia 0x700: double interrupt - MSR[RI] bit clear when attempting to d= eliver interrupt, cia=3D0x700, msr=3D0x1000; srr0=3D0x400000(cia), srr1=3D0= x89032(msr); trap-vector=3D0x700, trap-msr=3D0x1000<br> CPU #1 executed 1 Move from Special Purpose Register instruction.<br> <br> CPU #1 executed 2 icache misses.<br> CPU #1 executed 1 instructions in total.<br> <br> CPU #2 executed 1 Branch instruction.<br> <br> CPU #2 executed 1 icache miss.<br> CPU #2 executed 1 instructions in total.<br> <br> CPU #3 executed 1 Branch instruction.<br> <br> CPU #3 executed 1 icache miss.<br> CPU #3 executed 1 instructions in total.<br> <br> CPU #4 executed 1 Branch instruction.<br> <br> CPU #4 executed 1 icache miss.<br> CPU #4 executed 1 instructions in total.<br> <br> All CPUs executed 4 instructions in total.<br> Simulator speed was 111 instructions/second.<br> user/util/kickstart/kickstart: Caught signal -1 at address 0x700<br> <br> I hope somebody can offer some advice on this issue.<br> <br> Best regards,<br> Nils Ole Timm<o:p></o:p></p> </div> </div> </body> </html> --_000_0453D4730CA16449B61476A072CC48BC0568ECA9i30s6osukade_--