diff mbox

[U-Boot] mtd/nand/vf610_nfc: Disable subpage writes

Message ID 497a7815d53afd4a6a3c351e8008a73647d7098e.1416806438.git.maitysanchayan@gmail.com
State Accepted
Delegated to: Scott Wood
Headers show

Commit Message

Sanchayan Maity Nov. 24, 2014, 5:33 a.m. UTC
This patch disables subpage writes for vf610_nfc nand
driver. This is required, as without this fix, writing
unaligned u-boot images with DFU results in a hang.
Trying to write unalgined binary images also results
in a hang, without disabling subpage writes.

Patch has been tested on a Colibri VF61 module.

Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
---
 drivers/mtd/nand/vf610_nfc.c |    3 +++
 1 file changed, 3 insertions(+)

Comments

Sanchayan Maity Nov. 28, 2014, 4:24 a.m. UTC | #1
On Monday 24 November 2014 11:03 AM, Sanchayan Maity wrote:
> This patch disables subpage writes for vf610_nfc nand
> driver. This is required, as without this fix, writing
> unaligned u-boot images with DFU results in a hang.
> Trying to write unalgined binary images also results
> in a hang, without disabling subpage writes.
> 
> Patch has been tested on a Colibri VF61 module.
> 
> Signed-off-by: Sanchayan Maity <maitysanchayan@gmail.com>
> ---
>  drivers/mtd/nand/vf610_nfc.c |    3 +++
>  1 file changed, 3 insertions(+)
> 
> diff --git a/drivers/mtd/nand/vf610_nfc.c b/drivers/mtd/nand/vf610_nfc.c
> index 7feb3a7..928d58b 100644
> --- a/drivers/mtd/nand/vf610_nfc.c
> +++ b/drivers/mtd/nand/vf610_nfc.c
> @@ -611,6 +611,9 @@ static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
>  		vf610_nfc_clear(mtd, NFC_FLASH_CONFIG, CONFIG_16BIT);
>  	}
>  
> +	/* Disable subpage writes as we do not provide ecc->hwctl */
> +	chip->options |= NAND_NO_SUBPAGE_WRITE;
> +
>  	chip->dev_ready = vf610_nfc_dev_ready;
>  	chip->cmdfunc = vf610_nfc_command;
>  	chip->read_byte = vf610_nfc_read_byte;
> 

Ping? 

-Regards,
Sanchayan.
diff mbox

Patch

diff --git a/drivers/mtd/nand/vf610_nfc.c b/drivers/mtd/nand/vf610_nfc.c
index 7feb3a7..928d58b 100644
--- a/drivers/mtd/nand/vf610_nfc.c
+++ b/drivers/mtd/nand/vf610_nfc.c
@@ -611,6 +611,9 @@  static int vf610_nfc_nand_init(int devnum, void __iomem *addr)
 		vf610_nfc_clear(mtd, NFC_FLASH_CONFIG, CONFIG_16BIT);
 	}
 
+	/* Disable subpage writes as we do not provide ecc->hwctl */
+	chip->options |= NAND_NO_SUBPAGE_WRITE;
+
 	chip->dev_ready = vf610_nfc_dev_ready;
 	chip->cmdfunc = vf610_nfc_command;
 	chip->read_byte = vf610_nfc_read_byte;