Re: [PATCH 2/3] mtd: davinci-nand: add dts property for NAND_NO_SUBPAGE_WRITE option

Santosh Shilimkar
2014-03-20T19:28:51Z

On Thursday 20 March 2014 03:26 PM, Ivan Khoronzhuk wrote:
>
> On 03/20/2014 09:11 PM, Santosh Shilimkar wrote:
>> On Thursday 20 March 2014 02:54 PM, Brian Norris wrote:
>>> On Thu, Mar 20, 2014 at 02:02:39PM -0400, Santosh Shilimkar wrote:
>>>> On Thursday 20 March 2014 01:44 PM, Warner Losh wrote:
>>>>> I though sub page writing was one of the fields in the onfi and/or jedec(toggle) meta data structures. Have you looked there?
>>>>>
>>>> Am not sure if I follow you. The limitation is from the TI NAND controller(AEMIF) and
>>>> not the NAND memory.
>>> That doesn't match the patch description, which says "that flash doesn't
>>> support subpage writing". Flash != flash controller.
>>>
>> Patch description is indeed doesn't reflect the actual issue.
>>
>>> Which one is it? If it's a controller limitation, I think we should be
>>> able to pull this from a "compatible" property, no?
>>>
>> Just to be accurate, the limitation(bug) is on the controller found on Keystone
>> SOCs. AEMIF controller is also used on DaVinci SOCs which don't seems to have
>> any issue. So even for compatible, you need to add keystone specific one.
>> Hence thought dt property is better option.
>>

>
> I will use compatible approach.
> We have keystone compatible in k2hk-evm.dts,
> so I need to add it only in the davinci-nand driver.
> I will add the following:
>
> if (of_device_is_compatible(np, "ti,keystone-nand")) {
> pdata->options |= NAND_NO_SUBPAGE_WRITE;
> }
>
> ...
>
> static const struct of_device_id davinci_nand_of_match[] = {
> {.compatible = "ti,davinci-nand", },
> {.compatible = "ti,keystone-nand", },
> {},
> };
>
Looks good. I think you should go ahead and respin the patch
with above.

Regards,
Santosh