RE: [uClinux-dev] page_offset.h incorrect for M5208EVB
Gavin Lambert: >I still don't understand why you feel the need to do that. Once uClinux is booted there is no way to get back into dBUG (unless you've got some weird >code), so it doesn't matter if you overwrite the RAM that dBUG was using. >I think you should just change PAGE_OFFSET_RAW to 0x4000 and leave it at that. (caveat: I don't use either 2.4 or 5208) Thanks for the input Gavin. I completely agree with you that it's irrelevant to preserve the 0x2 region. I have changed PAGE_OFFSET_RAW to just 0x4000. Hmm, perhaps this change should be done for the 5208EVB in CVS also... Thanks again. Best regards, Martin ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
RE: [uClinux-dev] page_offset.h incorrect for M5208EVB
Quoth Martin Voss: > Today I tried changing the PAGE_OFFSET_RAW to just 0x4000, i..e. > start of physical RAM. Then everything seems OK. However, I also > tried adding a call to "reserve_bootmem(0x4000, 0x2)" in > /linux-2.4.x/arch/m68knommu/kernel/setup.c in order to make sure that > the first 0x20 is reserved. This gave the following messages at > boot: [...] > I take this as an indication that my call to reserve_bootmem() in > incorrect/unnecessary. Basically, I'm looking for some feedback from > more experienced people to confirm if PAGE_OFFSET_RAW should be > changed from 0x4002 to 0x4000, and if some other change is > necessary to mark the first 0x2 as out of bounds? I still don't understand why you feel the need to do that. Once uClinux is booted there is no way to get back into dBUG (unless you've got some weird code), so it doesn't matter if you overwrite the RAM that dBUG was using. I think you should just change PAGE_OFFSET_RAW to 0x4000 and leave it at that. (caveat: I don't use either 2.4 or 5208) ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] page_offset.h incorrect for M5208EVB
In the stock M5208EVB uCLinux-dist (as shipped with the EVB) the PAGE_OFFSET_RAW was set to 0x, producing incorrect bootup memory size messages. Also, /proc/meminfo and the free command is showing incorrect values. Our custom board is *very* similar to the M5208EVB, except for more FLASH, and SDR instead of DDR, but they are similar in almost every other aspect. I changed the PAGE_OFFSET_RAW as suggested in the released patch for the M5208EVB so the value is 0x4002. With this value I get the famous "wrong zone alignment" early in boot: --- Linux version 2.4.27-uc1 ([EMAIL PROTECTED]) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #57 Fri Mar 9 18:42:55 CET 2007 uClinux/COLDFIRE(m5208) COLDFIRE port done by Greg Ungerer, [EMAIL PROTECTED] Flat model support (C) 1998,1999 Kenneth Albanowski, D. Jeff Dionne On node 0 totalpages: 8159 zone(0): 0 pages. zone(1): 8159 pages. BUG: wrong zone alignment, it will crash zone(2): 0 pages. Kernel command line: rootfstype=romfs Bad boy: ColdFire Timer (at 0x40022e90) called request_irq without a dev_id! Calibrating delay loop... 109.77 BogoMIPS Memory available: 29584k/32767k RAM, 0k/0k ROM (737k kernel code, 214k data) kmem_create: Forcing size word alignment - vm_area_struct kmem_create: Forcing size word alignment - mm_struct kmem_create: Forcing size word alignment - filp Dentry cache hash table entries: 4096 (order: 3, 32768 bytes) Inode cache hash table entries: 2048 (order: 2, 16384 bytes) kmem_create: Forcing size word alignment - inode_cache Mount cache hash table entries: 512 (order: 0, 4096 bytes) kmem_create: Forcing size word alignment - bdev_cache kmem_create: Forcing size word alignment - cdev_cache kmem_create: Forcing size word alignment - kiobuf Buffer cache hash table entries: 1024 (order: 0, 4096 bytes) Page-cache hash table entries: 8192 (order: 3, 32768 bytes) POSIX conformance testing by UNIFIX Linux NET4.0 for Linux 2.4 Based upon Swansea University Computer Society NET3.039 kmem_create: Forcing size word alignment - sock Initializing RT netlink socket Starting kswapd kmem_create: Forcing size word alignment - file_lock_cache JFFS2 version 2.1. (C) 2001 Red Hat, Inc., designed by Axis Communications AB. ColdFire internal UART serial driver version 1.00 ttyS0 at 0xfc06 (irq = 90) is a builtin ColdFire UART . . I spent the weekend searching the archives for discussions regarding this. Is it correct that the PAGE_OFFSET_RAW must be on a 2 Mb boundary? Today I tried changing the PAGE_OFFSET_RAW to just 0x4000, i..e. start of physical RAM. Then everything seems OK. However, I also tried adding a call to "reserve_bootmem(0x4000, 0x2)" in /linux-2.4.x/arch/m68knommu/kernel/setup.c in order to make sure that the first 0x20 is reserved. This gave the following messages at boot: - Linux version 2.4.27-uc1 ([EMAIL PROTECTED]) (gcc version 2.95.3 20010315 (release)(ColdFire patches - 20010318 from http://fiddes.net/coldfire/)(uClinux XIP and shared lib patches from http://www.snapgear.com/)) #59 Mon Mar 12 16:08:16 CET 2007 uClinux/COLDFIRE(m5208) COLDFIRE port done by Greg Ungerer, [EMAIL PROTECTED] Flat model support (C) 1998,1999 Kenneth Albanowski, D. Jeff Dionne hm, page reserved twice. hm, page 1000 reserved twice. hm, page 2000 reserved twice. hm, page 3000 reserved twice. hm, page 4000 reserved twice. hm, page 5000 reserved twice. hm, page 6000 reserved twice. hm, page 7000 reserved twice. hm, page 8000 reserved twice. hm, page 9000 reserved twice. hm, page a000 reserved twice. hm, page b000 reserved twice. hm, page c000 reserved twice. hm, page d000 reserved twice. hm, page e000 reserved twice. hm, page f000 reserved twice. hm, page 0001 reserved twice. hm, page 00011000 reserved twice. hm, page 00012000 reserved twice. hm, page 00013000 reserved twice. hm, page 00014000 reserved twice. hm, page 00015000 reserved twice. hm, page 00016000 reserved twice. hm, page 00017000 reserved twice. hm, page 00018000 reserved twice. hm, page 00019000 reserved twice. hm, page 0001a000 reserved twice. hm, page 0001b000 reserved twice. hm, page 0001c000 reserved twice. hm, page 0001d000 reserved twice. hm, page 0001e000 reserved twice. hm, page 0001f000 reserved twice. On node 0 totalpages: 8191 zone(0): 0 pages. zone(1): 8191 pages. zone(2): 0 pages. Kernel command line: rootfstype=romfs Bad boy: ColdFire Timer (at 0x40022e90) called request_irq without a dev_id! Calibrating delay loop... 109.77 BogoMIPS Memory available: 29584k/32767k RAM, 0k/0k ROM (737k kernel code, 214k data) kmem_create: Forcing size word alignment - vm_area_struct kmem_create: Forcing size word alignment - mm_struct k
RE: [uClinux-dev] page_offset.h incorrect for M5208EVB
Quoth Martin Voss <>: > When looking at the uCLinux-dist shipped with M5208EVB the > "page_offset.h" was not changed to reflect that SDRAM start adress is > 0x4002. This was fixed for more than a year ago with a small > patch from Greg. What is the consequence of using a value of 0x0 on > PAGE_OFFSET_RAW instead of the correct value? How severe is this? > Sideeffects? When it was set incorrectly for my board (MOD5272 based) the result was that the high/low-water-marks were set too high (because it thought it had more RAM than it did), resulting in oom-killer killing off processes earlier than it should have. ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] page_offset.h incorrect for M5208EVB
Hi Martin, Martin Voss wrote: When looking at the uCLinux-dist shipped with M5208EVB the ”page_offset.h” was not changed to reflect that SDRAM start adress is 0x4002. This was fixed for more than a year ago with a small patch from Greg. What is the consequence of using a value of 0x0 on PAGE_OFFSET_RAW instead of the correct value? How severe is this? Sideeffects? I seem to recall the only side effect was that the kernel allocated a very large memory page table (effectively from address 0 through 0x4200 - instead of 0x4002 through 0x4200). This meant that the startup RAM usage was very high, something like 10MB used on startup. I don't think there was any other problematic side effects. Regards Greg Greg Ungerer -- Chief Software Dude EMAIL: [EMAIL PROTECTED] Secure Computing CorporationPHONE: +61 7 3435 2888 825 Stanley St, FAX: +61 7 3891 3630 Woolloongabba, QLD, 4102, Australia WEB: http://www.SnapGear.com ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
Re: [uClinux-dev] page_offset.h incorrect for M5208EVB
Hi Martin, I'm not 100% sure of this, but I thought the only problem was the "Memory available:..." line that is displayed during kernel boot gave incorrect values. I don't remember if it actually limited the available memory or not. Regards, Matt Martin Voss wrote: Hi all, When looking at the uCLinux-dist shipped with M5208EVB the ”page_offset.h” was not changed to reflect that SDRAM start adress is 0x4002. This was fixed for more than a year ago with a small patch from Greg. What is the consequence of using a value of 0x0 on PAGE_OFFSET_RAW instead of the correct value? How severe is this? Sideeffects? /Martin Voss Sweden ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev
[uClinux-dev] page_offset.h incorrect for M5208EVB
Hi all, When looking at the uCLinux-dist shipped with M5208EVB the "page_offset.h" was not changed to reflect that SDRAM start adress is 0x4002. This was fixed for more than a year ago with a small patch from Greg. What is the consequence of using a value of 0x0 on PAGE_OFFSET_RAW instead of the correct value? How severe is this? Sideeffects? /Martin Voss Sweden ___ uClinux-dev mailing list uClinux-dev@uclinux.org http://mailman.uclinux.org/mailman/listinfo/uclinux-dev This message was resent by uclinux-dev@uclinux.org To unsubscribe see: http://mailman.uclinux.org/mailman/options/uclinux-dev