Skip to content

Commit

Permalink
mtd: sm_ftl: remove CONFIG_SM_FTL_MUSEUM and make it always on
Browse files Browse the repository at this point in the history
The sole purpose of this setting was to avoid a dependency on MTD_NAND. 
Now that we can depend on MTD_NAND_ECC without pulling in all the rest 
of the NAND code, we might as well do so unconditionally.

Signed-off-by: Maxim Levitsky <maximlevitsky@gmail.com>
Signed-off-by: David Woodhouse <David.Woodhouse@intel.com>
  • Loading branch information
Maxim Levitsky authored and David Woodhouse committed Mar 26, 2010
1 parent e5f710c commit 01de69c
Show file tree
Hide file tree
Showing 2 changed files with 1 addition and 16 deletions.
9 changes: 0 additions & 9 deletions drivers/mtd/Kconfig
Original file line number Diff line number Diff line change
Expand Up @@ -317,15 +317,6 @@ config SM_FTL
eat your card, so please don't use it together with valuable data.
Use readonly driver (CONFIG_SSFDC) instead.

config SM_FTL_MUSEUM
boolean "Additional Support for 1MiB and 2MiB SmartMedia cards"
depends on SM_FTL
select MTD_NAND_ECC_SMC
help
Very old SmartMedia cards need ECC to be calculated in the FTL.
Such cards are very rare, thus enabling this option is mostly useless.
Also this support is completely UNTESTED.

config MTD_OOPS
tristate "Log panic/oops to an MTD buffer"
depends on MTD
Expand Down
8 changes: 1 addition & 7 deletions drivers/mtd/sm_ftl.c
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,10 @@
#include <linux/freezer.h>
#include <linux/sysfs.h>
#include <linux/bitops.h>
#include <linux/mtd/nand_ecc.h>
#include "nand/sm_common.h"
#include "sm_ftl.h"

#ifdef CONFIG_SM_FTL_MUSEUM
#include <linux/mtd/nand_ecc.h>
#endif


struct workqueue_struct *cache_flush_workqueue;
Expand Down Expand Up @@ -206,7 +204,6 @@ static void sm_break_offset(struct sm_ftl *ftl, loff_t offset,

static int sm_correct_sector(uint8_t *buffer, struct sm_oob *oob)
{
#ifdef CONFIG_SM_FTL_MUSEUM
uint8_t ecc[3];

__nand_calculate_ecc(buffer, SM_SMALL_PAGE, ecc);
Expand All @@ -218,7 +215,6 @@ static int sm_correct_sector(uint8_t *buffer, struct sm_oob *oob)
__nand_calculate_ecc(buffer, SM_SMALL_PAGE, ecc);
if (__nand_correct_data(buffer, ecc, oob->ecc2, SM_SMALL_PAGE) < 0)
return -EIO;
#endif
return 0;
}

Expand Down Expand Up @@ -382,15 +378,13 @@ static int sm_write_block(struct sm_ftl *ftl, uint8_t *buf,
oob.data_status = 0;
}

#ifdef CONFIG_SM_FTL_MUSEUM
if (ftl->smallpagenand) {
__nand_calculate_ecc(buf + boffset,
SM_SMALL_PAGE, oob.ecc1);

__nand_calculate_ecc(buf + boffset + SM_SMALL_PAGE,
SM_SMALL_PAGE, oob.ecc2);
}
#endif
if (!sm_write_sector(ftl, zone, block, boffset,
buf + boffset, &oob))
continue;
Expand Down

0 comments on commit 01de69c

Please sign in to comment.