Wrap the CS configuration into a aemif_configure_cs() to ease its
migration to another driver when adding DM support.

Signed-off-by: Bastien Curutchet <[email protected]>
---
 drivers/memory/ti-aemif.c | 31 +++++++++++++++++++------------
 1 file changed, 19 insertions(+), 12 deletions(-)

diff --git a/drivers/memory/ti-aemif.c b/drivers/memory/ti-aemif.c
index 82a9c8cf7b..5e9514713f 100644
--- a/drivers/memory/ti-aemif.c
+++ b/drivers/memory/ti-aemif.c
@@ -34,21 +34,10 @@
                }                                               \
        } while (0)
 
-static void aemif_configure(int cs, struct aemif_config *cfg)
+static void aemif_cs_configure(int cs, struct aemif_config *cfg)
 {
        unsigned long tmp;
 
-       if (cfg->mode == AEMIF_MODE_NAND) {
-               tmp = __raw_readl(cfg->base + AEMIF_NAND_CONTROL);
-               tmp |= (1 << cs);
-               __raw_writel(tmp, cfg->base + AEMIF_NAND_CONTROL);
-
-       } else if (cfg->mode == AEMIF_MODE_ONENAND) {
-               tmp = __raw_readl(cfg->base + AEMIF_ONENAND_CONTROL);
-               tmp |= (1 << cs);
-               __raw_writel(tmp, cfg->base + AEMIF_ONENAND_CONTROL);
-       }
-
        tmp = __raw_readl(cfg->base + AEMIF_CONFIG(cs));
 
        set_config_field(tmp, SELECT_STROBE,    cfg->select_strobe);
@@ -65,6 +54,24 @@ static void aemif_configure(int cs, struct aemif_config *cfg)
        __raw_writel(tmp, cfg->base + AEMIF_CONFIG(cs));
 }
 
+static void aemif_configure(int cs, struct aemif_config *cfg)
+{
+       unsigned long tmp;
+
+       if (cfg->mode == AEMIF_MODE_NAND) {
+               tmp = __raw_readl(cfg->base + AEMIF_NAND_CONTROL);
+               tmp |= (1 << cs);
+               __raw_writel(tmp, cfg->base + AEMIF_NAND_CONTROL);
+
+       } else if (cfg->mode == AEMIF_MODE_ONENAND) {
+               tmp = __raw_readl(cfg->base + AEMIF_ONENAND_CONTROL);
+               tmp |= (1 << cs);
+               __raw_writel(tmp, cfg->base + AEMIF_ONENAND_CONTROL);
+       }
+
+       aemif_cs_configure(cs, cfg);
+}
+
 void aemif_init(int num_cs, struct aemif_config *config)
 {
        int cs;
-- 
2.47.0

Reply via email to