From mboxrd@z Thu Jan 1 00:00:00 1970 From: Murali Karicheri Date: Wed, 19 Feb 2014 18:33:47 -0500 Subject: [U-Boot] [PATCH 5/5] NAND: DaVinci: allow forced disable of subpage writes In-Reply-To: <20140218145756.GC19081@bill-the-cat> References: <1390255810-19486-1-git-send-email-m-karicheri2@ti.com> <1390255810-19486-6-git-send-email-m-karicheri2@ti.com> <1390423709.24905.515.camel@snotra.buserror.net> <3E54258959B69E4282D79E01AB1F32B704672974@DFLE11.ent.ti.com> <1392249622.6733.510.camel@snotra.buserror.net> <20140218145756.GC19081@bill-the-cat> Message-ID: <53053F5B.3000003@ti.com> List-Id: MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit To: u-boot@lists.denx.de On 2/18/2014 9:57 AM, Rini, Tom wrote: > On Wed, Feb 12, 2014 at 06:00:22PM -0600, Scott Wood wrote: >> On Tue, 2014-01-28 at 23:19 +0000, Karicheri, Muralidharan wrote: >>>> -----Original Message----- >>>> From: Scott Wood [mailto:scottwood at freescale.com] >>>> Sent: Wednesday, January 22, 2014 3:48 PM >>>> To: Karicheri, Muralidharan >>>> Cc: u-boot at lists.denx.de; Rini, Tom; Andrianov, Vitaly >>>> Subject: Re: [U-Boot] [PATCH 5/5] NAND: DaVinci: allow forced disable of subpage writes >>>> >>>> On Mon, 2014-01-20 at 17:10 -0500, Murali Karicheri wrote: >>>>> This patch introduces a configurable mechanism to disable subpage >>>>> writes in the DaVinci NAND driver. >>>>> >>>>> Signed-off-by: Vitaly Andrianov >>>>> Signed-off-by: Murali Karicheri >>>>> --- >>>>> drivers/mtd/nand/davinci_nand.c | 3 +++ >>>>> 1 file changed, 3 insertions(+) >>>>> >>>>> diff --git a/drivers/mtd/nand/davinci_nand.c >>>>> b/drivers/mtd/nand/davinci_nand.c index 5b17d7b..75b03a7 100644 >>>>> --- a/drivers/mtd/nand/davinci_nand.c >>>>> +++ b/drivers/mtd/nand/davinci_nand.c >>>>> @@ -609,6 +609,9 @@ void davinci_nand_init(struct nand_chip *nand) >>>>> #ifdef CONFIG_SYS_NAND_USE_FLASH_BBT >>>>> nand->bbt_options |= NAND_BBT_USE_FLASH; >>>>> #endif >>>>> +#ifdef CONFIG_SYS_NAND_NO_SUBPAGE_WRITE >>>>> + nand->options |= NAND_NO_SUBPAGE_WRITE; >>>>> +#endif >>>>> #ifdef CONFIG_SYS_NAND_HW_ECC >>>>> nand->ecc.mode = NAND_ECC_HW; >>>>> nand->ecc.size = 512; >>>> Why does it need to be configurable? >>>> >>> Same driver used in multiple platforms, and on some platforms like the one >>> I work with doesn't support subpage writes and has to be disabled. >> The option needs to be documented, and it should be either named in a >> davinci-specific manner, or the documentation should clearly list which >> drivers pay attention to it. > Agreed. > >> It seems odd though, that the ability to support subpage writes is an >> independent thing rather than a consequence of some other variable such >> as controller version. > I suspect this is similar to the OMAP driver where we could support > subpages but it gets tricky coordinating with the HW ECC engine for BCH8 > and higher. Perhaps there are davinci targets with smaller ECC levels > where it works out OK but keystone is doing BCH8 or 16 and it's not > worth the savings. Tom/Scott, My next version of the series will have readme updated with this option (no change in name as this can be used by other drivers as well) and mention that davinci_nand driver is the driver that currently uses this option. Murali