[PATCH 4/6] memory: ti-aemif: Wrap the CS configuration into a function
Bastien Curutchet
bastien.curutchet at bootlin.com
Mon Oct 21 17:13:28 CEST 2024
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 <bastien.curutchet at bootlin.com>
---
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
More information about the U-Boot
mailing list