RE: Psim and kickstart
Jan Stoess <[email protected]> Tue, 1 Mar 2011 13:29:18 +0000
| Newsgroups | gmane.comp.micro-kernel.l4.l4ka.general |
|---|---|
| Message-ID | <[email protected]> |
--_000_0453D4730CA16449B61476A072CC48BC056F1692i30s6osukade_ Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable From: Nils Ole Timm [mailto:[email protected]] I have uboot running on my target platform already. Then I wrote a script t= hat sets up the fdt for the platform by adding /L4/kernel /L4/sigma0 and /L= 4/roottask then load kickstart into memory and launch it. The current state of affairs is the assumption that the kernel itself is ru= nning but the IO isn't. UBoot and a linux kernel both give output through the serial port. But it s= eems that the serial port is set up in a strange way, at least from how I u= nderstand it to work. In the io.cc of ppc44x the serial ports adress is lim= ited to a certain region in memory with a bitwise and. Unfortunately the se= rial port is at 0xffe04500 on my platform, which is outside of the memregio= n from which the kernel seems to map. So I think that I just don't get IO, = but might even have the kernel working yet. So I will probably have to writ= e my own methods to hook the serial port properly. Actually, the powerpc port has support for serial output, both at user-leve= l (remapped through sigma0) and at kernel level. If you specify CONFIG_COMP= ORT to be 0, L4 fetches the specific serial address via FDT (as node /alias= es/serial0/reg). L4 currently assumes that this is a 32-bit offset beyond 4= GB. ~/src/pistachio-hg/kernel/kdb/platform/ppc44x/io.cc: // Serial bus is beyond 4GB u64_t comport_phys =3D 0x100000000ULL | (u64_t) prop->get_word(0); comport =3D (u8_t*)setup_console_mapping(comport_phys, 12); try to enter the correct address here, maybe first via hardcoding it, then = by customizing FDT to your needs. You'll need to check user-level as well,= in user/lib/io/powerpc.cc -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 --_000_0453D4730CA16449B61476A072CC48BC056F1692i30s6osukade_ 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:Wingdings; panose-1:5 0 0 0 0 0 0 0 0 0;} @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;} /* 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;} p.MsoListParagraph, li.MsoListParagraph, div.MsoListParagraph {mso-style-priority:34; margin-top:0in; margin-right:0in; margin-bottom:0in; margin-left:.5in; margin-bottom:.0001pt; font-size:12.0pt; font-family:"Times New Roman","serif";} 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;} /* List Definitions */ @list l0 {mso-list-id:556822966; mso-list-type:hybrid; mso-list-template-ids:699588272 67698689 67698691 67698693 67698689 676986= 91 67698693 67698689 67698691 67698693;} @list l0:level1 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l0:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l0:level3 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} @list l0:level4 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l0:level5 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l0:level6 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} @list l0:level7 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l0:level8 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l0:level9 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} @list l1 {mso-list-id:1274165980; mso-list-type:hybrid; mso-list-template-ids:-2096316150 67698689 67698691 67698693 67698689 6769= 8691 67698693 67698689 67698691 67698693;} @list l1:level1 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l1:level2 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l1:level3 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} @list l1:level4 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l1:level5 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l1:level6 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} @list l1:level7 {mso-level-number-format:bullet; mso-level-text:\F0B7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Symbol;} @list l1:level8 {mso-level-number-format:bullet; mso-level-text:o; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:"Courier New";} @list l1:level9 {mso-level-number-format:bullet; mso-level-text:\F0A7; mso-level-tab-stop:none; mso-level-number-position:left; text-indent:-.25in; font-family:Wingdings;} ol {margin-bottom:0in;} ul {margin-bottom:0in;} --></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"><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""> Nils Ole= Timm [mailto:[email protected]] <br> <br> </span><o:p></o:p></p> </div> </div> <div> <div> <p class=3D"MsoNormal">I have uboot running on my target platform already. = Then I wrote a script that sets up the fdt for the platform by adding /L4/k= ernel /L4/sigma0 and /L4/roottask then load kickstart into memory and launc= h it.<o:p></o:p></p> </div> <div> <p class=3D"MsoNormal">The current state of affairs is the assumption that = the kernel itself is running but the IO isn't.<o:p></o:p></p> </div> <div> <p class=3D"MsoNormal">UBoot and a linux kernel both give output through th= e serial port. But it seems that the serial port is set up in a strange way= , at least from how I understand it to work. In the io.cc of ppc44x the ser= ial ports adress is limited to a certain region in memory with a bitwise and. Unfortunately the serial port is at 0= xffe04500 on my platform, which is outside of the memregion from which the = kernel seems to map. So I think that I just don't get IO, but might even ha= ve the kernel working yet. So I will probably have to write my own methods to hook the serial port properl= y.<o:p></o:p></p> </div> </div> </div> <p class=3D"MsoNormal"><b><i><span style=3D"font-size:11.0pt;font-family:&q= uot;Calibri","sans-serif";color:#1F497D"><o:p> </o:p></= span></i></b></p> <p class=3D"MsoNormal"><span style=3D"font-size:11.0pt;font-family:"Ca= libri","sans-serif";color:#1F497D">Actually, the powerpc por= t has support for serial output, both at user-level (remapped through sigma= 0) and at kernel level. If you specify CONFIG_COMPORT to be 0, L4 fetches the specific serial address via FDT (as node /aliases/ser= ial0/reg). L4 currently assumes that this is a 32-bit offset beyond 4GB.<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">~/src/pistachio-hg/kernel= /kdb/platform/ppc44x/io.cc:<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"> // Serial bus is b= eyond 4GB<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"> u64_t comport_phys= =3D 0x100000000ULL | (u64_t) prop->get_word(0);<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"> comport =3D (u8_t*= )setup_console_mapping(comport_phys, 12);<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">try to enter the correct = address here, maybe first via hardcoding it, then by customizing FDT to you= r needs. You’ll need to check user-level as well, in user/lib/i= o/powerpc.cc<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">--<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">http://os.ibds.kit.edu/stoess</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> <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> </body> </html> --_000_0453D4730CA16449B61476A072CC48BC056F1692i30s6osukade_--