saveenv & erase with bad blocks present

Uwe Kleine-König u.kleine-koenig at pengutronix.de
Tue Feb 3 11:52:12 PST 2015


Hello,

On Tue, Feb 03, 2015 at 04:38:42PM +0000, Boulais, Marc-Andre wrote:
> I have flashed Barebox-2015.02.0 on my omap4 setup (using the Barebox
> update command) and I am now trying to modify the environment from the
> Barebox prompt. I have modified the env/config file and I would like
> to save my changes to NAND. 
> 
> For this task, I call the "saveenv" command and I get this result:
> 
> barebox at Phytec phyCORE-OMAP4460:/ saveenv
> saving environment
> saveenv: No space left on device
> 
> The "devinfo" command indicates to me that the /dev/nand0.bareboxenv partition is 128 Kb. 
> Just to be sure, I erase it and get the following error:
What is the block size of your nand device? If your partition only
consists of a single block and this one turns bad ...

> barebox at Phytec phyCORE-OMAP4460:/ erase /dev/nand0.bareboxenv.bb
> nand: nand_erase_nand: attempt to erase a bad block at page 0x00000140
> erase: I/O error
I'm not sure why this error is printed, maybe erase must not be given a
.bb partition?

> So I guess I am a bit confused here. 
> 1) Is "saveenv" the right command to save my changes to the environment ?
Yes

> 2) How can I erase a NAND partition that has bad blocks ?
It should be transparent to the user. I'd expect that erase does the
right thing.

> 3) Can bad blocks be marked by software or are they all marked by the manufacturer ?
The initial set of bad blocks are (obviously) marked by the
manufacturer. I don't know if barebox automatically marks blocks as bad,
but Linux does for sure.

Best regards
Uwe

-- 
Pengutronix e.K.                           | Uwe Kleine-König            |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |



More information about the barebox mailing list