aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/memory
diff options
context:
space:
mode:
authorRoger Quadros <rogerq@ti.com>2015-08-05 06:34:50 -0400
committerRoger Quadros <rogerq@ti.com>2016-04-15 04:51:57 -0400
commit512d73d1c64f15da9cdcdcdfba3cd8db0d4d94cc (patch)
tree2c0723202a0e0660738da79342853fb43dd48b80 /drivers/memory
parentf47fcad63f6847ea677c6c7030f30fd6438e0052 (diff)
memory: omap-gpmc: Add GPMC-NAND ops to get writebufferempty status
This is needed by OMAP NAND driver to poll the empty status of the writebuffer. Signed-off-by: Roger Quadros <rogerq@ti.com> Acked-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'drivers/memory')
-rw-r--r--drivers/memory/omap-gpmc.c14
1 files changed, 13 insertions, 1 deletions
diff --git a/drivers/memory/omap-gpmc.c b/drivers/memory/omap-gpmc.c
index 0b62afd86f7e..90dfba5a8f55 100644
--- a/drivers/memory/omap-gpmc.c
+++ b/drivers/memory/omap-gpmc.c
@@ -81,6 +81,8 @@
81 81
82#define GPMC_CONFIG_LIMITEDADDRESS BIT(1) 82#define GPMC_CONFIG_LIMITEDADDRESS BIT(1)
83 83
84#define GPMC_STATUS_EMPTYWRITEBUFFERSTATUS BIT(0)
85
84#define GPMC_CONFIG2_CSEXTRADELAY BIT(7) 86#define GPMC_CONFIG2_CSEXTRADELAY BIT(7)
85#define GPMC_CONFIG3_ADVEXTRADELAY BIT(7) 87#define GPMC_CONFIG3_ADVEXTRADELAY BIT(7)
86#define GPMC_CONFIG4_OEEXTRADELAY BIT(7) 88#define GPMC_CONFIG4_OEEXTRADELAY BIT(7)
@@ -1118,7 +1120,17 @@ void gpmc_update_nand_reg(struct gpmc_nand_regs *reg, int cs)
1118 } 1120 }
1119} 1121}
1120 1122
1121static struct gpmc_nand_ops nand_ops; 1123static bool gpmc_nand_writebuffer_empty(void)
1124{
1125 if (gpmc_read_reg(GPMC_STATUS) & GPMC_STATUS_EMPTYWRITEBUFFERSTATUS)
1126 return true;
1127
1128 return false;
1129}
1130
1131static struct gpmc_nand_ops nand_ops = {
1132 .nand_writebuffer_empty = gpmc_nand_writebuffer_empty,
1133};
1122 1134
1123/** 1135/**
1124 * gpmc_omap_get_nand_ops - Get the GPMC NAND interface 1136 * gpmc_omap_get_nand_ops - Get the GPMC NAND interface