Thanks for the reply !
In fact, after posting this question I found some helpful documentation about installing an U-boot image using linux :
http://www.denx.de/wiki/publish/DULG/DULG-tqm8xxl.html
part 5.4.4. Installation using Linux
It consists in erasing mtd partitions contents and replacing them by new binary files
Here is my mtd organization :
/ # cat /proc/mtd
dev: size erasesize name
mtd0: 00100000 00004000 "Bootstrap"
mtd1: 00500000 00004000 "kernel"
mtd2: 01000000 00004000 "rfs-ro"
mtd3: 02a00000 00004000 "rfs-rw"
Here is what I did to replace the kernel binary by a new one
/ # flash_eraseall /dev/mtd1
/ # dd if=/rw/disk/uImage_of_new_kernel of=/dev/mtd1 bs=16k conv=sync
The only thing I did not figured out yet is how to make my fw_printenv fw_setenv working properly (in order to modify the bootcmd, updating the kernel size).
Right now, when I call these fw_printenv or fw_setenv commands, all I get is :
/ # fw_printenv
/bin/sh: fw_printenv: not found
these commands are in the /usr/sbin directory
my fw_env.config file contains :
# Configuration file for fw_(printenv/saveenv) utility.
# Up to two entries are valid, in this case the redundand
# environment sector is assumed present.
# MTD device name Device offset Env. size Flash sector size
/dev/mtd0 0x0000 0x4000 0x4000
(I also tested this file with the real environment variable offset : 0xa0000 (0x0000 is the address where U-boot is written)
I don't know what I am doing wrong ?
Any idea ?
Thanks a lot !
Best regards,
François