Looks like a bug in flashchips.c relating to the MX25L6405(D) chip.  The first entry in the .block_erasers array seems to be wrong. 

 

Currently it is:

 

.block_erasers    =

{

                {

                                .eraseblocks = { {64 * 1024, 128} },

                                .block_erase = spi_block_erase_20,

                }, {

                                .eraseblocks = { {64 * 1024, 128} },

                                .block_erase = spi_block_erase_d8,

                }, {

                                .eraseblocks = { {8 * 1024 * 1024, 1} },

                                .block_erase = spi_block_erase_60,

                }, {

                                .eraseblocks = { {8 * 1024 * 1024, 1} },

                                .block_erase = spi_block_erase_c7,

                }

},

 

 

I believe it should be:

 

.block_erasers    =

{

                {

                                .eraseblocks = { {4 * 1024, 2048} },

                                .block_erase = spi_block_erase_20,

                }, {

                                .eraseblocks = { {64 * 1024, 128} },

                                .block_erase = spi_block_erase_d8,

                }, {

                                .eraseblocks = { {8 * 1024 * 1024, 1} },

                                .block_erase = spi_block_erase_60,

                }, {

                                .eraseblocks = { {8 * 1024 * 1024, 1} },

                                .block_erase = spi_block_erase_c7,

                }

},

 

 

 

--Reggie