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

Shakthi Kannan shakthimaan at yahoo.com
Tue Jul 19 09:32:13 CEST 2005


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 at 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 at 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 




More information about the U-Boot mailing list