Skip to contentSkip to conversation

Devkit8000: Switch over to enable_gpmc_cs_config

PATCH Superseded Thomas Weber 3 participants 4 messages Dec 7, 2011 – Dec 13, 2011

v1 of 2 Superseded Latest is v2 →

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 Devkit8000: Switch over to enable_gpmc_cs_config

Use enable_gpmc_cs_config instead of local writing timing configuration for GPMC.

---
 board/timll/devkit8000/devkit8000.c |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)
board/timll/devkit8000/devkit8000.c +12 -7
index bcadfc4..dd46c35 100644
@@ -48,6 +48,16 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
+static u32 gpmc_net_config[GPMC_MAX_REG] = {
+	NET_GPMC_CONFIG1,
+	NET_GPMC_CONFIG2,
+	NET_GPMC_CONFIG3,
+	NET_GPMC_CONFIG4,
+	NET_GPMC_CONFIG5,
+	NET_GPMC_CONFIG6,
+	NET_GPMC_CONFIG7,
+};
+
 /*
  * Routine: board_init
  * Description: Early hardware init.
@@ -82,13 +92,8 @@ int misc_init_r(void)
 
 #ifdef CONFIG_DRIVER_DM9000
 	/* Configure GPMC registers for DM9000 */
-	writel(NET_GPMC_CONFIG1, &gpmc_cfg->cs[6].config1);
-	writel(NET_GPMC_CONFIG2, &gpmc_cfg->cs[6].config2);
-	writel(NET_GPMC_CONFIG3, &gpmc_cfg->cs[6].config3);
-	writel(NET_GPMC_CONFIG4, &gpmc_cfg->cs[6].config4);
-	writel(NET_GPMC_CONFIG5, &gpmc_cfg->cs[6].config5);
-	writel(NET_GPMC_CONFIG6, &gpmc_cfg->cs[6].config6);
-	writel(NET_GPMC_CONFIG7, &gpmc_cfg->cs[6].config7);
+	enable_gpmc_cs_config(gpmc_net_config, &gpmc_cfg->cs[6],
+			CONFIG_DM9000_BASE, GPMC_SIZE_16M);
 
 	/* Use OMAP DIE_ID as MAC address */
 	if (!eth_getenv_enetaddr("ethaddr", enetaddr)) {
Signature · 1 line
1.7.8
#1 lore raw

PATCH 1/1 Devkit8000: Switch over to enable_gpmc_cs_config

Quoted 15 lines · Thomas Weber

Use enable_gpmc_cs_config instead of local writing timing configuration for GPMC.

---
?board/timll/devkit8000/devkit8000.c | ? 19 ++++++++++++------- ?1 files changed, 12 insertions(+), 7 deletions(-)

board/timll/devkit8000/devkit8000.c +0 -0
index bcadfc4..dd46c35 100644
@@ -48,6 +48,16 @@
 
 ?DECLARE_GLOBAL_DATA_PTR;

board/timll/devkit8000/devkit8000.c line 59

Quoted 10 lines
board/timll/devkit8000/devkit8000.c +9 -0
 
+static u32 gpmc_net_config[GPMC_MAX_REG] = {
+ ? ? ? NET_GPMC_CONFIG1,
+ ? ? ? NET_GPMC_CONFIG2,
+ ? ? ? NET_GPMC_CONFIG3,
+ ? ? ? NET_GPMC_CONFIG4,
+ ? ? ? NET_GPMC_CONFIG5,
+ ? ? ? NET_GPMC_CONFIG6,
+ ? ? ? NET_GPMC_CONFIG7,
+};

Value 7 is computed in enable_gpmc_cs_config() so it should be a 0 in the struct (or just a comment for clarity, I've seen both I think).

Signature · 1 line
Tom
#2 lore raw

PATCH 1/1 Devkit8000: Switch over to enable_gpmc_cs_config

Hello Tom,

Quoted 17 lines · Tom Rini
Quoted 16 lines · Thomas Weber

Use enable_gpmc_cs_config instead of local writing timing configuration for GPMC.

---
 board/timll/devkit8000/devkit8000.c |   19 ++++++++++++-------
 1 files changed, 12 insertions(+), 7 deletions(-)
board/timll/devkit8000/devkit8000.c +0 -0
index bcadfc4..dd46c35 100644
@@ -48,6 +48,16 @@
 
 DECLARE_GLOBAL_DATA_PTR;
 
Quoted 13 lines

board/timll/devkit8000/devkit8000.c line 59

Quoted 9 lines
board/timll/devkit8000/devkit8000.c +9 -0
+static u32 gpmc_net_config[GPMC_MAX_REG] = {
+       NET_GPMC_CONFIG1,
+       NET_GPMC_CONFIG2,
+       NET_GPMC_CONFIG3,
+       NET_GPMC_CONFIG4,
+       NET_GPMC_CONFIG5,
+       NET_GPMC_CONFIG6,
+       NET_GPMC_CONFIG7,
+};

Value 7 is computed in enable_gpmc_cs_config() so it should be a 0 in the struct (or just a comment for clarity, I've seen both I think).

The calculated value in enable_gpmc_cs_config() is same as NET_GPMC_CONFIG7. The gpmc_net_config[6] is ignored and not used in enable_gpmc_cs_config(). If you want a 0 at this position I will send a second version with a 0 for NET_GPMC_CONFIG7.

Thomas

#3 lore raw

PATCH 1/1 Devkit8000: Switch over to enable_gpmc_cs_config

Quoted 34 lines · Thomas Weber

Hello Tom,

Quoted 17 lines · Tom Rini
Quoted 16 lines · Thomas Weber

Use enable_gpmc_cs_config instead of local writing timing configuration for GPMC.

---
?board/timll/devkit8000/devkit8000.c | ? 19 ++++++++++++------- ?1 files changed, 12 insertions(+), 7 deletions(-)

board/timll/devkit8000/devkit8000.c +0 -0
index bcadfc4..dd46c35 100644
@@ -48,6 +48,16 @@
 
 ?DECLARE_GLOBAL_DATA_PTR;
 
Quoted 13 lines

board/timll/devkit8000/devkit8000.c line 59

Quoted 9 lines
board/timll/devkit8000/devkit8000.c +9 -0
+static u32 gpmc_net_config[GPMC_MAX_REG] = {
+ ? ? ? NET_GPMC_CONFIG1,
+ ? ? ? NET_GPMC_CONFIG2,
+ ? ? ? NET_GPMC_CONFIG3,
+ ? ? ? NET_GPMC_CONFIG4,
+ ? ? ? NET_GPMC_CONFIG5,
+ ? ? ? NET_GPMC_CONFIG6,
+ ? ? ? NET_GPMC_CONFIG7,
+};

Value 7 is computed in enable_gpmc_cs_config() so it should be a 0 in the struct (or just a comment for clarity, I've seen both I think).

Quoted 4 lines

The calculated value in enable_gpmc_cs_config() is same as NET_GPMC_CONFIG7. The gpmc_net_config[6] is ignored and not used in enable_gpmc_cs_config(). If you want a 0 at this position I will send a second version with a 0 for NET_GPMC_CONFIG7.

Yes, please send a v2, thanks

Signature · 1 line
Tom