
Yes, cat /dev/mtd1 shows the content and the environment variables. Also linux mtd-utils, flash_eraseall, nandwrite works ... It seems a problem writing nand in fw_setenv
# ./fw_setenv bootdelay 4 Warning: Bad CRC, using default environment Unlocking flash... Done Erasing old environment... Done Writing environment to /dev/mtd1... CRC write error on /dev/mtd1: Invalid argument Error: can't write fw_env to flash
It erases but cannot write. Indeed rebooting starts with the default environment.
Kernel printk: nand_write: Attempt to write not page aligned data
What may happens? Any with fw_setenv working compiled for arm architecture and uclibc?
Victor Librado Sancho Departamento I+D ------------------------------------------------------------------------
Jeff Angielski escribió:
On Mon, 2007-07-02 at 17:36 +0200, Victor Librado wrote:
u-boot environment tool fw_setenv does not work when writing the environment to flash. Working with at91sam9260ek running kernel 2.6.20.
<snip>
Offset and environmet size as defined in myboard.h for u-boot compilation. I suppose flash sector size is the erase (block size).
Any help please?
There is nothing special about the u-boot env. The parameters are in human readable format if you dump the contents [or used to be last time I looked]. And the fw_xxx tools just access the flash through the normal MTD layer.
With this in mind, can you access that block using the standard utilities? cat? dd? einfo? erase? etc. If not, your MTD configuration for your board is broken.