diff options
author | Han Xu <han.xu@nxp.com> | 2016-02-10 16:10:54 -0600 |
---|---|---|
committer | Leonard Crestez <leonard.crestez@nxp.com> | 2018-08-24 12:41:33 +0300 |
commit | ea3ba61c9323c2daa35fd9cb5e8a8d0e8638dfc5 (patch) | |
tree | 855fc3384f8eda9f7220cfff9dd50a8bebc127ae /drivers/mtd/nand/gpmi-nand | |
parent | 6d83bd51d8dae406870a87978bd615fd31f6ea8b (diff) |
MLK-12395: mtd: gpmi: add debugfs flag to indicate NAND driver use new raw access mode
For backward compatibility, kobs-ng need to know if the driver use
legacy raw mode or new bch layout raw mode, add a new flag in debugfs to
indicate the raw access mode.
Signed-off-by: Han Xu <han.xu@nxp.com>
Diffstat (limited to 'drivers/mtd/nand/gpmi-nand')
-rw-r--r-- | drivers/mtd/nand/gpmi-nand/gpmi-lib.c | 12 | ||||
-rw-r--r-- | drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 2 | ||||
-rw-r--r-- | drivers/mtd/nand/gpmi-nand/gpmi-nand.h | 4 |
3 files changed, 13 insertions, 5 deletions
diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-lib.c b/drivers/mtd/nand/gpmi-nand/gpmi-lib.c index 437e83504edb..2b927839ee05 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-lib.c +++ b/drivers/mtd/nand/gpmi-nand/gpmi-lib.c @@ -1,7 +1,7 @@ /* * Freescale GPMI NAND Flash Driver * - * Copyright (C) 2008-2015 Freescale Semiconductor, Inc. + * Copyright (C) 2008-2016 Freescale Semiconductor, Inc. * Copyright (C) 2008 Embedded Alley Solutions, Inc. * * This program is free software; you can redistribute it and/or modify @@ -254,7 +254,7 @@ void gpmi_dump_info(struct gpmi_nand_data *this) geo->block_mark_bit_offset); } -int bch_save_geometry(struct gpmi_nand_data *this) +int bch_create_debugfs(struct gpmi_nand_data *this) { struct bch_geometry *bch_geo = &this->bch_geometry; struct dentry *dbg_root; @@ -272,6 +272,14 @@ int bch_save_geometry(struct gpmi_nand_data *this) dev_err(this->dev, "failed to create debug bch geometry\n"); return -EINVAL; } + + /* create raw mode flag */ + if (!debugfs_create_file("raw_mode", S_IRUGO, + dbg_root, NULL, NULL)) { + dev_err(this->dev, "failed to create raw mode flag\n"); + return -EINVAL; + } + return 0; } diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c index b395bef4e4d3..85b325b54ffa 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c @@ -2227,7 +2227,7 @@ static int gpmi_init_last(struct gpmi_nand_data *this) return ret; /* Save the geometry to debugfs*/ - ret = bch_save_geometry(this); + ret = bch_create_debugfs(this); if (ret) return ret; diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.h b/drivers/mtd/nand/gpmi-nand/gpmi-nand.h index e0d2d89bee29..dd9b6fa625d0 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.h +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.h @@ -1,7 +1,7 @@ /* * Freescale GPMI NAND Flash Driver * - * Copyright (C) 2010-2015 Freescale Semiconductor, Inc. + * Copyright (C) 2010-2016 Freescale Semiconductor, Inc. * Copyright (C) 2008 Embedded Alley Solutions, Inc. * * This program is free software; you can redistribute it and/or modify @@ -287,7 +287,7 @@ extern int gpmi_init(struct gpmi_nand_data *); extern int gpmi_extra_init(struct gpmi_nand_data *); extern void gpmi_clear_bch(struct gpmi_nand_data *); extern void gpmi_dump_info(struct gpmi_nand_data *); -extern int bch_save_geometry(struct gpmi_nand_data *); +extern int bch_create_debugfs(struct gpmi_nand_data *); extern int bch_set_geometry(struct gpmi_nand_data *); extern int gpmi_is_ready(struct gpmi_nand_data *, unsigned chip); extern int gpmi_send_command(struct gpmi_nand_data *); |