
Hello,
Can you please tell me how to build the fw_setenv and fw_printenv using the mtd-user.h file? I am new to Linux. Please help. I don't see mtd/ in proc/ directory.
Thanks
u-boot user wrote:
Hello all,
I have built the binary fw_printenv by using mtd-user.h from mtd-utils on the internet as it fw_printenv won't compile it without using that file. So I have used mtd-user.h and mtd-abi.h. The contents of my configuration file are # MTD device name Device offset Env. size Flash sector size /dev/mtd1 0x0000 0x4000 0x4000
When I run fw_printenv it complained with error Warning : Bad CRC using default environment in env_init function in fw_env.c source code. To gain a better understanding I print the value crc1 calculated using crc32(0,environment.data,ENV_SIZE). The value it prints is CRC computed:FE641197 If I print the environment.crc value it is D0CA8A0E. As the checksum values are different crc1_ok is not set and I get the error. Any clue as to why these values would be different?
When I use the fw_setenv utility to set an environment variable it gives the following errors Writing CRC value to flash: D0C78567 Unlocking flash... Other dev values are: 0 Current dev value: 0 Done Erasing old environment... MTD erase error on /dev/mtd1: Invalid argument Error: can't write fw_env to flash
I want to be able to set bootvars and print bootvars from user space Linux code. Linux has support for mtd-utils we tested the mtd-utils interface.
I look forward to your replies. I appreciate your help.
Thanks and Regards