[PATCH 1/2] mtd: nand: Check ONFI timings have been acked by the chip
Boris Brezillon
boris.brezillon at free-electrons.com
Mon Jan 8 05:04:29 PST 2018
On Fri, 5 Jan 2018 16:42:39 +0100
Miquel RAYNAL <miquel.raynal at free-electrons.com> wrote:
> Hello,
>
> > Hm, I'm not sure this is safe. The spec says that new ONFI timing mode
> > is applied as soon the CS line is released after a
> > SET_FEATURES(ONFI_FEATURE_ADDR_TIMING_MODE), and since we have no
> > guarantee that the CS will be kept low by the controller after
> > ->onfi_set_features() returns we must assume the new mode has been
> > applied and call ->setup_data_interface() to instruct the controller
> > to apply new timings.
> >
> > If you want to check if the mode has really been applied, you should
> > release the CS (->select_chip(-1)), re-acquire it
> > (->select_chip(X)), and call
> > ->onfi_get_features(ONFI_FEATURE_ADDR_TIMING_MODE). If it appears
> > that the mode has not been applied, you should restore timing mode 0
> > and issue a RESET.
>
> Boris, thanks for the comment, I will fix that.
>
> Han, could I have your input on this series? Aside Boris' comment of
> course.
Han, we really need your feedback on this series since you were the one
complaining that ONFI mode should be checked back after applying a new
mode. Miquel is reworking the framework to mimic what the GPMI driver,
but we need to be sure that you'll accept to transition to the generic
->setup_data_interface() solution.
Thanks,
Boris
More information about the linux-mtd
mailing list