RE: [U-Boot-Users] 2.6.12 with u-boot-1.1.2 on versatile

Hi,
Thanks for your replies Peter Pearse and Catalin Marinas.
1. --- Peter Pearse Peter.Pearse@arm.com wrote:
I use
<U-Boot dir>/tools/mkimage -A arm -O linux -T kernel -C none -a 0x7fc0 -e 0x8000 -n u-linux -d <Kernel dir>/arch/arm/Image u-linux
Worked like a charm!
I then had to copy the kernel to SDRAM 0x7fc0 and boot it using:
cp 0x36000000 0x7fc0 <kernel_size> bootm 0x7fc0
2. I then tried to use the base.cramfs filesystem provided in arm.com:
http://www.arm.com/linux/linux_download.html
I used mkimage to append a header and flashed it at 0x36200000. Copied the same to SDRAM, 0x04000000. I changed the bootargs values using setenv, but, was not sure as to what values I need to give.
setenv bootargs root=/dev/mtdblock0 mtdparts=versatile:0x65d050@0x04000000(cramfs) ip=none mem=128M console=ttyAMA0 video=vc:1-2clcdfb:
I then tried to boot the kernel with the ramdisk:
bootm 0x7fc0 0x04000000
I got the following output:
http://www.shakthimaan.com/downloads/session.log
Why is it trying the floppy? Is it trying the external memory card?
I did check the boot log to the 2.4.19-rmk6 kernel provided in the NOR flash, and it loaded ramdisk drivers etc. I have used the config-versatile-pb file as provided in arm.com site, which does not have support for ramdisk by default. I did try enabling ramdisk support, but, I ended up with the same output as above. The ramdisk by default is 4 MB in the kernel, but base.cramfs given in arm.com is 6 MB. I even tried changing the ramdisk size in kernel CONFIG to 8 MB, but, no change in the output.
I'd appreciate any feedback for the above, and any help in getting the filesystem mounted, so I can start playing with the shell.
Board: Versatile-PB-ARM926EJ-S Cross_compiler: 3.4.3 Kernel: 2.6.12
Thanks again for your help,
K Shakthi
-- proudly anti-micro$oft ------------------------------------------------------------ Shakthi Kannan, MS Software Engineer, Specsoft (Hexaware Technologies) [E]: shaks@shakthimaan.com [M]: (91) 98407-87007 [W]: http://www.shakthimaan.com [L]: Chennai, India ------------------------------------------------------------
____________________________________________________ Start your day with Yahoo! - make it your home page http://www.yahoo.com/r/hs

In message 20050714152729.93962.qmail@web30709.mail.mud.yahoo.com you wrote:
<U-Boot dir>/tools/mkimage -A arm -O linux -T kernel -C none -a 0x7fc0 -e 0x8000 -n u-linux -d <Kernel dir>/arch/arm/Image u-linux
Worked like a charm!
I then had to copy the kernel to SDRAM 0x7fc0 and boot it using:
cp 0x36000000 0x7fc0 <kernel_size> bootm 0x7fc0
This is totally broken. You don't have to copy the kernel anywhere, this is done automatically by the bootm command.
I then tried to use the base.cramfs filesystem provided in arm.com:
...
bootm 0x7fc0 0x04000000
A cramfs filesystem on a MTD device is NOT an initial ramdisk which you claim it is when using bootm with thwo arguments. This is supposed to fail.
Best regards,
Wolfgang Denk

Greetings!
Thanks to Wolfgang Denk, Catalin Marinas, and Peter Pearse, I now have 2.6.12-rmk1 running with base.cramfs on the PB-ARM926EJ-S. The following documentation is for reference:
I. 2.6.12-rmk1 kernel compilation HOWTO ---------------------------------------
1. Download the kernel sources 2.6.12 from kernel.org and extract it.
2. Download the 2.6.12-arm1 patch from:
http://www.arm.com/linux/linux_download.html
3. Enter into the kernel sources directory and apply the patch:
patch -p1 < /path/to/patchfile
4. Modify the Makefile to set ARCH and CROSS_COMPILE variables:
ARCH = arm CROSS_COMPILE = /usr/local/arm/3.4.3/bin/arm-none-linux-gnueabi-
5. Copy the config-versatile-pb file provided in arm.com site to the kernel sources directory as .config file.
6. To configure the kernel options:
make menuconfig
7. To compile the kernel:
make
The Image will be created under arch/arm/boot directory.
To prepare Image for u-boot, do the following:
Use the mkimage utility created under tools/ directory inside u-boot sources (when you compile the same) and do:
mkimage -A arm -O linux -T kernel -C none -a 0x7fc0 -e 0x8000 -n "Linux kernel image" -d /path/to/Image uImage
II. U-boot 1.1.2 compilation HOWTO ----------------------------------
1. Download the u-boot-1.1.2 sources. 2. Extract the sources. 3. Become root using "su -". 4. Make sure cross-toolchain 3.4.3 is installed in /usr/local/arm/. 5. Open the Makefile under u-boot and set CROSS_COMPILE to:
CROSS_COMPILE=/usr/local/arm/3.4.3/bin/arm-none-linux-gnueabi-
3. Configure using:
make versatile_config
4. Compile u-boot using:
make all
This will create u-boot, u-boot.bin and u-boot.srec files. The u-boot file is an ELF file, while the u-boot.bin is a data file. The mkimage utility will be compiled under tools/ directory that is used to create the kernel image. u-boot should _not_ be run from SDRAM directly. You should flash it and run it from there. You can also use the u-boot image provided in arm.com directly by flashing it to NOR flash and running it.
III. Flash the base.cramfs --------------------------
Copy the base.cramfs provided in arm.com site to NOR flash.
IV. Booting the system ----------------------
1. Program the images to the NOR flash. For example:
0xaabbccdd u-boot-pb 0xbbccddee uImage 0xccddeeff cramfs.base
2. Set configuration switch S1-1 to ON, power up the board, connect with kermit.
3. Enter Flash submenu, and run u-boot-pb:
run u-boot-pb
4. Copy the uImage from flash to SDRAM:
cp 0xbbccddee 0x7fc0 0x123456
(Syntax: cp <source> <target> <size>)
5. Set the bootargs value
setenv bootargs root=/dev/mtdblock0 mtdparts=armflash.0:0x65d000@0x2200000(cramfs) ip=none mem=128 console=ttyAMA0 video=vc:1-2clcdfb:
(Note: 0x65d000 is size of base.cramfs and 0x2200000 is offset of base.cramfs from the flash base address)
6. Bootup
bootm 0x7fc0
Its been a wonderful learning experience, folks!
Thanks again,
K Shakthi
-- proudly anti-micro$oft ------------------------------------------------------------ Shakthi Kannan, MS Software Engineer, Specsoft (Hexaware Technologies) [E]: shaks@shakthimaan.com [M]: (91) 98407-87007 [W]: http://www.shakthimaan.com [L]: Chennai, India ------------------------------------------------------------
__________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com

In message 20050719073213.49786.qmail@web30712.mail.mud.yahoo.com you wrote:
Thanks to Wolfgang Denk, Catalin Marinas, and Peter Pearse, I now have 2.6.12-rmk1 running with base.cramfs on the PB-ARM926EJ-S. The following documentation is for reference:
...
- Copy the uImage from flash to SDRAM:
cp 0xbbccddee 0x7fc0 0x123456
...
- Bootup
bootm 0x7fc0
The "cp" step (4.) is redundant. Instead, just type "bootm 0xbbccddee".
Best regards,
Wolfgang Denk
participants (2)
-
Shakthi Kannan
-
Wolfgang Denk