Forum Discussion
Altera_Forum
Honored Contributor
20 years agokernel init problem
Hi We have developed our own board with an Altera Stratix II and NIOS II Standard CPU. We download the kernel (2.6.16.11) to the SDRAM (32MB) using nios2-download, and nios2-terminal gives us t...
Altera_Forum
Honored Contributor
20 years agoHi Hippo,
I followed as you suggested and I am getting some strange results. I am using now "kernel.config" file given in download with buildroot package. Only change I made is Prints enable at nios-uart and jtag-uart is disable. But still I am facing same issue. Strange thing is when I add 2-3 printk statements, for changing size of the kernel, it boots fine. Both conditions boot prints are pasted below. Some other observation I have made.... I added some device support for changing kernel size and same issue I have face with big vmlinux (elf executable) size also (17 MB, 16 MB, 15MB), just removing or adding a dummy printk make kernel boot perfectly fine. Added support: network, mtd, jffs2, ext2, ext3, kernel hacking. (all with in hw design) Kernel with same size with different support enable or disabled gives different crashing results or boot prefectly fine. For certain build if work fine it "always" works fine, never get crashed. If certain build crash it always crashes. For testing I am using Altera given hardware design with changed memeory map path: \altera\kits\nios2_51\examples\verilog\niosII_stratixII_2s60_ES\full_featured In future I have to add support for other devices, I can't relly on adding printk fix. I need a proper solution or either why its happening. I put prints in initramfs.c and ramfs is in safe region. Also large memory >1MB allocation in kernel config is enable. Current kernel size is coming ~7 MB. I tested SDRAM also and its passing all tests. Any Idea what is going wrong. CRASHING PRINTS <div class='quotetop'>QUOTE </div> --- Quote Start --- uClinux/Nios II Altera Nios II support © 2004 Microtronix Datacom Ltd. KERNEL -> TEXT=0x01000000-0x010adf1c DATA=0x010adf1c-0x010b8000 BSS=0x01117f20-0 x01117f34 KERNEL -> MEM=0x1118000-0x2000000 STACK=0x2000000-0x2000000 No Command line passed Done setup_arch Built 1 zonelists Kernel command line: PID hash table entries: 128 (order: 7, 2048 bytes) Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) Memory available: 15072k/16384k RAM, 0k/0k ROM (695k kernel code, 424k data) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) initramfs_START =0x10c1b20 initramfs_END =0x110d320 initramfs_size=0x4b800 Linux NoNET1.0 for Linux 2.6 NIOS serial driver version 0.0 ttyS0 (irq = 4) is a builtin NIOS UART io scheduler noop registered io scheduler deadline registered Freeing unused kernel memory: 340k freed (0x10b8000 - 0x110c000) oom-killer: gfp_mask=0xd0 DMA per-cpu: cpu 0 hot: low 2, high 6, batch 1 cpu 0 cold: low 0, high 2, batch 1 Normal per-cpu: empty HighMem per-cpu: empty Free pages: 13588kB (0kB HighMem) Active:62 inactive:251 dirty:0 writeback:0 unstable:0 free:3397 slab:120 mapped: 0 pagetables:0 DMA free:13588kB min:512kB low:640kB high:768kB active:248kB inactive:1004kB pre sent:16384kB pages_scanned:2097664 all_unreclaimable? yes lowmem_reserve[]: 0 0 0 Normal free:0kB min:0kB low:0kB high:0kB active:0kB inactive:0kB present:0kB pag es_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 HighMem free:0kB min:128kB low:160kB high:192kB active:0kB inactive:0kB present: 0kB pages_scanned:0 all_unreclaimable? no lowmem_reserve[]: 0 0 0 DMA: 79*4kB 1*8kB 1*16kB 0*32kB 1*64kB 2097664*128kB 1*256kB 1*512kB 0*1024kB 0* 2048kB 3*4096kB = 268514452kB Normal: empty HighMem: empty oom-killer: gfp_mask=0xd0 DMA per-cpu: cpu 0 hot: low 2, high 6, batch 1 cpu 0 cold: low 0, high 2, batch 1 Normal per-cpu: empty HighMem per-cpu: empty[/b] --- Quote End --- PASSING PRINTS <div class='quotetop'>QUOTE </div> --- Quote Start --- uClinux/Nios II Altera Nios II support © 2004 Microtronix Datacom Ltd. KERNEL -> TEXT=0x01000000-0x010adf88 DATA=0x010adf88-0x010b8000 BSS=0x01117f40-0 x01117f54 KERNEL -> MEM=0x1118000-0x2000000 STACK=0x2000000-0x2000000 No Command line passed Done setup_arch Built 1 zonelists Kernel command line: PID hash table entries: 128 (order: 7, 2048 bytes) bfr local_irq_enable Dentry cache hash table entries: 4096 (order: 2, 16384 bytes) Inode-cache hash table entries: 2048 (order: 1, 8192 bytes) aft local_irq_enable Memory available: 15072k/16384k RAM, 0k/0k ROM (695k kernel code, 423k data) Mount-cache hash table entries: 512 (order: 0, 4096 bytes) initramfs_START =0x10c1b40 initramfs_END =0x110d340 initramfs_size=0x4b800 Linux NoNET1.0 for Linux 2.6 NIOS serial driver version 0.0 ttyS0 (irq = 4) is a builtin NIOS UART io scheduler noop registered io scheduler deadline registered Freeing unused kernel memory: 340k freed (0x10b8000 - 0x110c000) main.c: aft free_initmem init started: BusyBox v1.2.0-pre0 (2006.04.26-14:48+0000) multi-call binary BusyBox v1.2.0-pre0 (2006.04.26-14:48+0000) Built-in shell (msh) Enter 'help' for a list of built-in commands. # # # # # # # [/b] --- Quote End ---