From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mailman by lists.gnu.org with tmda-scanned (Exim 4.43) id 1Hc1c8-00044y-1z for qemu-devel@nongnu.org; Thu, 12 Apr 2007 11:53:36 -0400 Received: from exim by lists.gnu.org with spam-scanned (Exim 4.43) id 1Hc1c7-00044e-8z for qemu-devel@nongnu.org; Thu, 12 Apr 2007 11:53:35 -0400 Received: from [199.232.76.173] (helo=monty-python.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Hc1c6-00044X-Uu for qemu-devel@nongnu.org; Thu, 12 Apr 2007 11:53:35 -0400 Received: from mail.windriver.com ([147.11.1.11] helo=mail.wrs.com) by monty-python.gnu.org with esmtp (Exim 4.60) (envelope-from ) id 1Hc1Xu-0006jT-VB for qemu-devel@nongnu.org; Thu, 12 Apr 2007 11:49:15 -0400 Received: from ALA-MAIL03.corp.ad.wrs.com (ala-mail03 [147.11.57.144]) by mail.wrs.com (8.13.6/8.13.6) with ESMTP id l3CFmqom006805 for ; Thu, 12 Apr 2007 08:48:52 -0700 (PDT) Message-ID: <461E551E.9030803@windriver.com> Date: Thu, 12 Apr 2007 10:49:50 -0500 From: Jason Wessel MIME-Version: 1.0 Subject: Re: Qemu-PPC problems (was [Qemu-devel] Just to add one single point) References: <1176026443.1516.176.camel@rapid> <200704091726.13240.rob@landley.net> <1176157950.1516.360.camel@rapid> <200704111749.09810.rob@landley.net> <1176364573.6333.25.camel@rapid> In-Reply-To: <1176364573.6333.25.camel@rapid> Content-Type: multipart/mixed; boundary="------------000307090807010207010904" Reply-To: qemu-devel@nongnu.org List-Id: qemu-devel.nongnu.org List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org This is a multi-part message in MIME format. --------------000307090807010207010904 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit J. Mayer wrote: > On Wed, 2007-04-11 at 17:49 -0400, Rob Landley wrote: > >> qemu-system-ppc -M prep -nographic -kernel zImage-powerpc -append \ >> "console=/dev/ttyS0" >> > > You cannot append anything to the command line this way, with the PPC > firmware... > You can append options when using yaboot, not with the -kernel option. > Then, you should use the CONFIG_CMDLINE kernel option to add the option > you absolutely need to boot. > If you do not modify the prep loader, then it is impossible to pass arguments or load a kernel that expands to > 4meg. With respect to using an unmodified prep loader, you have to build the boot arguments you want into the kernel itself with the .config file options. > [...] > >>> It also seems that most Linux 2.6 kernels support has been broken. It >>> used to run too, with some versions having a great problem in >>> frame-buffer mode (writing black on black is not really usable). Using >>> the serial console always allowed me to follow the boot until X starts. >>> >> I'm trying to use serial console. >> > > I tried and the kernel seem to hang before reaching the start_kernel > routine. That why I said there may now be a CPU emulation bug that broke > everything.... Must do more checks with a debug kernel (with traces, > this time. Using early_printk may help a lot !). > > [...] > > > you may try to boot kernels in PREP format as they look like regular boot partitions... > It may help. > > While I am sure folks have the objective to be able to boot something that is not modified, my objective was to modify the kernel to work with qemu until that first objective is met. If you use a 2.6.21rc candidate you can use the attached patches to boot. I provided a .config file as well. The frame buffer is definitely broken, but I had not really looked into why because I was more interested in simply using the ppc instruction sets. Note I startup with the following and it works perfectly fine with my modified kernels: qemu-system-ppc -nographic -kernel zImage.prep -s -M prep -append "console=ttyS0 ip=dhcp root=/dev/nfs nfsroot=10.0.2.2:/export/ppc rw netdev=9,0x300,eth0" There is a new regression between Apr 9 and Apr 10 in the QEMU CVS HEAD where tcp checksums are failing again. :-( If it would help, I can certainly provide some of my zImage files which run with several different 2.6.x kernels. Jason. --------------000307090807010207010904 Content-Type: application/x-gzip; name="dot_config.gz" Content-Transfer-Encoding: base64 Content-Disposition: inline; filename="dot_config.gz" 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 FZUbb+N7sXIV84H/B6ZHCAnCnQAA --------------000307090807010207010904 Content-Type: text/x-patch; name="qemu_prep_loader.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="qemu_prep_loader.patch" Adjust prep loader to deal with larger kernel images. signed-off-by: Jason Wessel Index: linux-2.6.21-rc3/arch/ppc/boot/simple/misc.c =================================================================== --- linux-2.6.21-rc3.orig/arch/ppc/boot/simple/misc.c +++ linux-2.6.21-rc3/arch/ppc/boot/simple/misc.c @@ -17,6 +17,7 @@ #include #include +#include #include #include #include @@ -27,6 +28,7 @@ #include "nonstdio.h" +#define CONFIG_RUNTIME_CMDLINE 0x17ff000 /* Default cmdline */ #ifdef CONFIG_CMDLINE #define CMDLINE CONFIG_CMDLINE @@ -53,7 +55,7 @@ char *avail_ram; char *end_avail; char *zimage_start; -char cmd_preset[] = CMDLINE; +char cmd_preset[256] = CMDLINE; char cmd_buf[256]; char *cmd_line = cmd_buf; int keyb_present = HAS_KEYB; @@ -91,9 +93,11 @@ get_mem_size(void) #endif struct bi_record * -decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum) +decompress_kernel(unsigned long load_addr, int num_words, unsigned long cksum +,RESIDUAL *residual, void *OFW_interface) { #ifdef INTERACTIVE_CONSOLE + int do_console = 0; int timer = 0; char ch; #endif @@ -120,9 +124,12 @@ decompress_kernel(unsigned long load_add * and we must have the correct file linked in here. */ TotalMemory = get_mem_size(); + puts("TotalMemory: "); puthex(TotalMemory); puts("\n"); + puts("TotalResid: "); puthex(residual->TotalMemory); puts("\n"); + puts("Resid at: "); puthex((unsigned int)residual); puts("\n"); - /* assume the chunk below 8M is free */ - end_avail = (char *)0x00800000; + /* assume the chunk below 10M is free */ + end_avail = (char *)0x00A00000; /* * Reveal where we were loaded at and where we @@ -139,6 +146,13 @@ decompress_kernel(unsigned long load_add puts("\n"); } + if (residual) { + puts("board data at: "); puthex((unsigned long)residual); + puts(" "); + puthex((unsigned long)((unsigned long)residual + + sizeof(RESIDUAL))); + puts("\n"); + } /* * We link ourself to 0x00800000. When we run, we relocate * ourselves there. So we just need __image_begin for the @@ -167,15 +181,21 @@ decompress_kernel(unsigned long load_add } #ifndef CONFIG_40x /* don't overwrite the 40x image located at 0x00400000! */ - avail_ram = (char *)0x00400000; + avail_ram = (char *)0x00500000; #endif - end_avail = (char *)0x00800000; + end_avail = (char *)0x00A00000; puts("avail ram: "); puthex((unsigned long)avail_ram); puts(" "); puthex((unsigned long)end_avail); puts("\n"); if (keyb_present) CRT_tstc(); /* Forces keyboard to be initialized */ +#ifdef CONFIG_RUNTIME_CMDLINE + if (*(char *)CONFIG_RUNTIME_CMDLINE != '\0') + { + memcpy (cmd_preset, (char *)CONFIG_RUNTIME_CMDLINE, sizeof(cmd_preset)); + } +#endif /* Display standard Linux/PPC boot prompt for kernel args */ puts("\nLinux/PPC load: "); cp = cmd_line; @@ -187,7 +207,7 @@ decompress_kernel(unsigned long load_add * If they have a console, allow them to edit the command line. * Otherwise, don't bother wasting the five seconds. */ - while (timer++ < 5*1000) { + while (do_console && timer++ < 5*1000) { if (tstc()) { while ((ch = getc()) != '\n' && ch != '\r') { /* Test for backspace/delete */ @@ -215,8 +235,9 @@ decompress_kernel(unsigned long load_add #endif puts("\n"); - puts("Uncompressing Linux..."); - gunzip(NULL, 0x400000, zimage_start, &zimage_size); + puts("Compressed size: "); puthex((unsigned long)(zimage_size)); + puts("\nUncompressing Linux..."); + gunzip(NULL, 0x500000, zimage_start, &zimage_size); puts("done.\n"); /* get the bi_rec address */ @@ -274,5 +295,5 @@ load_kernel(unsigned long load_addr, int void *ign1, void *ign2) { board_isa_init(); - return decompress_kernel(load_addr, num_words, cksum); + return decompress_kernel(load_addr, num_words, cksum, ign1, ign2); } --------------000307090807010207010904 Content-Type: text/x-patch; name="qemu_ppc_irq_chip_fix.patch" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="qemu_ppc_irq_chip_fix.patch" Workaround for QEMU ppc 32 to force interrupt acknoledgement signed-off-by: Jason Wessel Index: linux-2.6.21-rc1/kernel/irq/chip.c =================================================================== --- linux-2.6.21-rc1.orig/kernel/irq/chip.c +++ linux-2.6.21-rc1/kernel/irq/chip.c @@ -225,11 +225,17 @@ static void default_enable(unsigned int desc->status &= ~IRQ_MASKED; } +#define IRQ_DELAYED_DISABLE 0x10000000 /* IRQ disable (masking) happens delayed. */ + /* * default disable function */ static void default_disable(unsigned int irq) { + struct irq_desc *desc = irq_desc + irq; + + if (!(desc->status & IRQ_DELAYED_DISABLE)) + desc->chip->mask(irq); } /* --------------000307090807010207010904--