Hi, I just gave got my mini2440 as of last week. I am trying to understand how all the software-components "fit together", but I must say I am a bit "overwelmed" by all the information I find on the net. So please excuse me if I ask information that is also available elsewhere: - what is the link / difference between the different components on the boot-menu? -> vivi and supervivi -> the linux kernel and the root_yaffs image -> what is the difference between "download linuxkernel" and "download zImage"? -> what is the "User Application"? - what is the difference between the unix tools "bootusb" and "usbpush". - What is the memory map of the system? Sofar, I seams to have found this? -> RAM start at 0x30000000 (or is it 0x30006000?) -> NAND flash starts at 0x00006000? (or is it 0x00000000?) What does the rest of the memory-map look like? - How exactly does booting the system go? AFAIK, for "normal" operations, it goes like this. -> first the board starts the bootloader ("supervivi") from ROM flash? (does it run directly from flash or does it copy it first in RAM and then start it). -> If you do "b", it copies the content of the NAND flash (i.e. the linux hernel, address 0x0006000) to RAM (0x30008000) and then boots it, passing it some parameters). Why does it copy it 0x30008000 and not to 0x30000000? Is there something in the first 0x8000 octets of the RAM) What address does the linux-kernel start? Does the system do a "go 0x30000000") or to "030008000")? Any other info welcome. I want to see if we can use this board for a number of HAM-related projectes. -> transport voice over an ethernet link -> D-STAR (digital voice) -> gmsk encoder/decoder Cheerio! Kr. Bonne.
newbie: trying to understand the boot process
I believe Vivi is just an older version of Supervivi the linux kernel is the operating system root_yaffs image is root filesystem image type YAFFS2 User application is just the user programs you want to run Had to look up "bootusb" To my surprise u-boot can actually boot off a USB drive. http://processors.wiki.ti.com/index.php/Booting_Linux_kernel_using_U-Boot Memory map - hit the downloads page http://www.friendlyarm.net/dl.php?file=mini2440_manual.pdf and look in the first few chapters. Is there something in the first 0x8000 octets of the RAM)? I think it is either the bad block tables or the bootloader environment (env). Bad block tables are in a special part of flash. What address does the linux-kernel start? Does the system do a "go 0x30000000") or to "030008000")? In my experience is always seems to boot from 030008000 Another good book is "Building Embedded Linux System" which can be found on-line.
Hi Dave, Thanks! I'm sorry for the late reply. In the mean time, I managed to (by accident) zap the OS from the board and re-install it; so we are getting there. :-) I did find out that the flash actually has three partitions: one for the bios/bootloader/... (supervivi), one for the linux kernel and one for the linux filesystem. I did manage to compile a kernel and get it installed on the flash 2nd partition. It does boot if I start from the NOR flash and do "b" (boot), but not when start automatically if I boot the board from NAND flash. (I thought this was practically the same). I did install a kernel I cross-compiled myself so I now have module-support. This makes it easier for me to add things to the kernel (like ipv6) without having to reinstall the kernel completely. Just compile the kernel-module. Copy it over the the board, do "depmod" and then "modprobe ..." and that's it. bootusb is indeed an interesting option. And thanks for the interesting links. One I get the board to boot automatically from NAND flash, I can start working on the actual applications I want to do. :-) Cheerio! Kristoff
> but not when start automatically if I boot the board from NAND flash. Search the site, many people have run into this problem. Applies to bigger than 64M machines, from memory. Also, buserror's site at: http://groups.google.com/group/mini2440 Good luck! Dave