diff options
| author | Stefan Roese <sr@denx.de> | 2013-04-15 21:14:12 +0000 | 
|---|---|---|
| committer | Stefano Babic <sbabic@denx.de> | 2013-04-22 10:26:36 +0200 | 
| commit | ae695b18df7c19ec3d062e36c1c25864096146f8 (patch) | |
| tree | 91fff61931e46a840066deccaabc9b850175af49 /drivers/mtd/nand/mxs_nand.c | |
| parent | 99193e30b469030db241d126861f7b6c3929c787 (diff) | |
| download | olio-uboot-2014.01-ae695b18df7c19ec3d062e36c1c25864096146f8.tar.xz olio-uboot-2014.01-ae695b18df7c19ec3d062e36c1c25864096146f8.zip | |
mtd: mxs_nand: Add support for i.MX6
Signed-off-by: Stefan Roese <sr@denx.de>
Acked-by: Scott Wood <scottwood@freescale.com>
Cc: Stefano Babic <sbabic@denx.de>
Cc: Marek Vasut <marex@denx.de>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Diffstat (limited to 'drivers/mtd/nand/mxs_nand.c')
| -rw-r--r-- | drivers/mtd/nand/mxs_nand.c | 11 | 
1 files changed, 9 insertions, 2 deletions
| diff --git a/drivers/mtd/nand/mxs_nand.c b/drivers/mtd/nand/mxs_nand.c index c21fd692c..398e4ddc1 100644 --- a/drivers/mtd/nand/mxs_nand.c +++ b/drivers/mtd/nand/mxs_nand.c @@ -42,6 +42,11 @@  #define	MXS_NAND_DMA_DESCRIPTOR_COUNT		4  #define	MXS_NAND_CHUNK_DATA_CHUNK_SIZE		512 +#if defined(CONFIG_MX6) +#define	MXS_NAND_CHUNK_DATA_CHUNK_SIZE_SHIFT	2 +#else +#define	MXS_NAND_CHUNK_DATA_CHUNK_SIZE_SHIFT	0 +#endif  #define	MXS_NAND_METADATA_SIZE			10  #define	MXS_NAND_COMMAND_BUFFER_SIZE		32 @@ -982,14 +987,16 @@ static int mxs_nand_scan_bbt(struct mtd_info *mtd)  	tmp |= MXS_NAND_METADATA_SIZE << BCH_FLASHLAYOUT0_META_SIZE_OFFSET;  	tmp |= (mxs_nand_get_ecc_strength(mtd->writesize, mtd->oobsize) >> 1)  		<< BCH_FLASHLAYOUT0_ECC0_OFFSET; -	tmp |= MXS_NAND_CHUNK_DATA_CHUNK_SIZE; +	tmp |= MXS_NAND_CHUNK_DATA_CHUNK_SIZE +		>> MXS_NAND_CHUNK_DATA_CHUNK_SIZE_SHIFT;  	writel(tmp, &bch_regs->hw_bch_flash0layout0);  	tmp = (mtd->writesize + mtd->oobsize)  		<< BCH_FLASHLAYOUT1_PAGE_SIZE_OFFSET;  	tmp |= (mxs_nand_get_ecc_strength(mtd->writesize, mtd->oobsize) >> 1)  		<< BCH_FLASHLAYOUT1_ECCN_OFFSET; -	tmp |= MXS_NAND_CHUNK_DATA_CHUNK_SIZE; +	tmp |= MXS_NAND_CHUNK_DATA_CHUNK_SIZE +		>> MXS_NAND_CHUNK_DATA_CHUNK_SIZE_SHIFT;  	writel(tmp, &bch_regs->hw_bch_flash0layout1);  	/* Set *all* chip selects to use layout 0 */ |