
Hi Rahanesh,
Well, that most certainly means that your /dev/mtd0 is not a NOR or NAND flash device.
Now used the fw_printenv under tools/env directory of uboot. It
does not have IOCTL error.
On issuing a fw_printenv it showd following messages Bad data CRC, Using default environment and printed only few
environment variables.
This should have made big warning signs flash up - if data crc was not correct, it was 99% sure that your configuration wasn't ok.
Then i did a fw_setenv bootdelay 6. It showed some messgaes of
erasing flash. But it actually erased my uboot itself.
No big wonder here.
What might be the issue? config file?
Of course.
MTD device name Device offset Env. size Flash
sector size Number of sectors /dev/mtd0 0x0000 0x1000 0x10000
What does Device Offset mean?
Offset is the offset into the area mapped by the device file.
/dev/mtd0 has both uboot as well as environment variables. Environment variables lie at bottom of /dev/mtd0. Is that the meaning of device offset?
That would be the meaning. You can always test by reading /dev/mtd0 directly from linux and inspect its contents, i.e. try
dd if=/dev/mtd0 bs=64k count=1 | hexdump -C | less
(or something comparable) and look for your environment.
#define CFG_ENV_ADDR 0xAD03F000 (Flash starts at 0xAD000000) #define CFG_ENV_SIZE 0x1000 #define CFG_ENV_SECT_SIZE 0x10000
These are the macro that i found in include/configs/board.h
This looks completly weird to me. Can you tell me exactly what board you are working with? It looks like this cannot be a NOR flash..
Cheers Detlev