> -----Original Message----- > From: u-boot-boun...@lists.denx.de [mailto:u-boot- > boun...@lists.denx.de] On Behalf Of Mike Frysinger > Sent: Thursday, April 05, 2012 1:29 AM > To: u-boot@lists.denx.de > Subject: [U-Boot] [PATCH] tools/env: check flash length before probing > > If we attempt to probe beyond the end of flash, MEMGETBADBLOCK will > fail > (as well it should), but we end up erroring out with the distracting: > Cannot read bad block mark: Invalid argument > > Instead of the correct error: > Too few good blocks within range > > Re-order the tests so we check for the end of the flash before probing > so we don't probe blocks that don't exist. >
Applied the patch: root:/bin> fw_printenv Too few good blocks within range root:/bin> strace fw_printenv ioctl(0, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B57600 opost isig icanon echo ...}) = 0 ioctl(1, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, {B57600 opost isig icanon echo ...}) = 0 open("/etc/fw_env.config", O_RDONLY) = 3 ioctl(3, SNDCTL_TMR_TIMEBASE or SNDRV_TIMER_IOCTL_NEXT_DEVICE or TCGETS, 0x2d9ccb4) = -1 ENOTTY (Inappropriate ioctl for device) mmap2(NULL, 4096, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS|0x4000000, 0, 0) = 0x2d55000 read(3, "# Configuration file for fw_(pri"..., 256) = 256 read(3, "Flash sector size\tNumber of sect"..., 256) = 163 read(3, "", 256) = 0 close(3) = 0 stat("/dev/mtd0", {st_mode=S_IFCHR|0660, st_rdev=makedev(90, 0), ...}) = 0 mmap2(NULL, 135168, PROT_READ|PROT_WRITE, MAP_SHARED|MAP_ANONYMOUS|0x4000000, 0, 0) = 0x2e00000 open("/dev/mtd0", O_RDONLY) = 3 ioctl(3, MEMGETINFO or MFB_SET_CHROMA_KEY, {type=MTD_NANDFLASH, flags=MTD_WRITEABLE, size=0x80000, erasesize=0x20000, writesize=0x800, oobsize=0x40, padding=0xffffffff}) = 0 ioctl(3, MEMGETBADBLOCK, [393216]) = 1 write(2, "Too few good blocks within range"..., 33Too few good blocks within range ) = 33 close(3) = 0 _exit(1) = ? root:/bin> _______________________________________________ U-Boot mailing list U-Boot@lists.denx.de http://lists.denx.de/mailman/listinfo/u-boot