Re: [RFC PATCH] mtd: rawnand: ams-delta: use ->exec_op()

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Janusz,

On Wed,  3 Oct 2018 14:00:28 +0200
Janusz Krzysztofik <jmkrzyszt@xxxxxxxxx> wrote:

> Replace legacy callbacks with ->select_chip() and ->exec_op().

Thanks for working on that, that's really appreciated.

> 
> Implementation of NAND_OP_WAITRDY_INSTR has been based on legacy
> nand_wait_ready(),

I don't remember what the ams-delta ->dev_ready()/->waitfunc() hooks
are doing, but is shouldn't be too hard to replace them by an
ams_delta_wait_ready() func.

> otherwise that function would probabaly have to be

				^ probably


> reimplemented inside the driver.  Hence, legacy callback ->dev_ready()
> is still used.
> 
> Use of IO_ADDR_R and IO_ADDR_W legacy structure members will be dropped
> later, as soon as the driver is converted to use GPIO API for data I/O.

In the meantime, can you move the iomem pointer to the ams_delta
private struct so that this driver no longer uses the ->IO_ADDR_R/W
fields?

> 
> Suggested-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxx>
> Signed-off-by: Janusz Krzysztofik <jmkrzyszt@xxxxxxxxx>
> ---
> Hi,
> 
> I've not tested the change on hardware yet as I'm not sure if:
> - handling of NCE limited to that inside ->select_chip() is
>   sufficient,

I think it is.

> - releasing ALE / CLE immediately after ams_delta_write_buf() is
>   correct.

Well, you should probably consider waiting for instr->ctx.delay_ns
nanoseconds after each instruction, but, if it was working before the
conversion to ->exec_op(), it should work just fine now.

Regards,

Boris

______________________________________________________
Linux MTD discussion mailing list
http://lists.infradead.org/mailman/listinfo/linux-mtd/



[Index of Archives]     [LARTC]     [Bugtraq]     [Yosemite Forum]     [Photo]

  Powered by Linux