Re: [LINUX PATCH v11 2/3] mtd: rawnand: Add an option to get sdr timing mode number

From: Boris Brezillon
Date: Wed Oct 03 2018 - 15:30:27 EST


On Tue, 25 Sep 2018 17:50:30 +0530
Naga Sureshkumar Relli <naga.sureshkumar.relli@xxxxxxxxxx> wrote:

> Some NAND controllers needs sdr timing mode value, instead of

^need SDR

> timings parameters. i.e the NAND controller will change its operating

s/parameters//

> mode by just configuring the sdr timing mode number. so add mode parameter

^ So, add a mode field

> in struct nand_sdr_timings.

^ to ...

>
> Signed-off-by: Naga Sureshkumar Relli <naga.sureshkumar.relli@xxxxxxxxxx>
> ---
> Changes in v11:
> - None
> ---
> drivers/mtd/nand/raw/nand_timings.c | 6 ++++++
> include/linux/mtd/rawnand.h | 2 ++
> 2 files changed, 8 insertions(+)
>
> diff --git a/drivers/mtd/nand/raw/nand_timings.c b/drivers/mtd/nand/raw/nand_timings.c
> index ebc7b5f..1ec7a28 100644
> --- a/drivers/mtd/nand/raw/nand_timings.c
> +++ b/drivers/mtd/nand/raw/nand_timings.c
> @@ -56,6 +56,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 120000,
> .tWP_min = 50000,
> .tWW_min = 100000,
> + .mode = 0,
> },
> },
> /* Mode 1 */
> @@ -98,6 +99,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 80000,
> .tWP_min = 25000,
> .tWW_min = 100000,
> + .mode = 1,
> },
> },
> /* Mode 2 */
> @@ -140,6 +142,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 80000,
> .tWP_min = 17000,
> .tWW_min = 100000,
> + .mode = 2,
> },
> },
> /* Mode 3 */
> @@ -182,6 +185,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 80000,
> .tWP_min = 15000,
> .tWW_min = 100000,
> + .mode = 3,
> },
> },
> /* Mode 4 */
> @@ -224,6 +228,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 80000,
> .tWP_min = 12000,
> .tWW_min = 100000,
> + .mode = 4,
> },
> },
> /* Mode 5 */
> @@ -266,6 +271,7 @@ static const struct nand_data_interface onfi_sdr_timings[] = {
> .tWHR_min = 80000,
> .tWP_min = 10000,
> .tWW_min = 100000,
> + .mode = 5,
> },
> },
> };
> diff --git a/include/linux/mtd/rawnand.h b/include/linux/mtd/rawnand.h
> index efb2345..3bf2cea 100644
> --- a/include/linux/mtd/rawnand.h
> +++ b/include/linux/mtd/rawnand.h
> @@ -723,6 +723,7 @@ struct nand_ecc_ctrl {
> * @tWHR_min: WE# high to RE# low
> * @tWP_min: WE# pulse width
> * @tWW_min: WP# transition to WE# low
> + * @mode: sdr timing mode value

@mode: ONFI timing mode

> */
> struct nand_sdr_timings {
> u64 tBERS_max;
> @@ -763,6 +764,7 @@ struct nand_sdr_timings {
> u32 tWHR_min;
> u32 tWP_min;
> u32 tWW_min;
> + u8 mode;
> };
>
> /**

With this addressed, you can add

Reviewed-by: Boris Brezillon <boris.brezillon@xxxxxxxxxxx>