All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr()
@ 2010-09-09 10:06 Stefan Roese
  2010-09-09 10:42 ` Wolfgang Denk
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Roese @ 2010-09-09 10:06 UTC (permalink / raw)
  To: u-boot

cfi_flash_bank_addr(int bank_nr) returns the base addresses of the
requested bank. Introducing this weak default enables boards to override
this functions with a board specific version when required.

This feature will be used in the lwmon5 board update, supporting runtime
detection of 2 board revisions with different flash layouts.

Signed-off-by: Stefan Roese <sr@denx.de>
---
v2: Coding-style update: Remove spaces before parantheses in function calls

 drivers/mtd/cfi_flash.c |   13 +++++++++----
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index b4a09dc..49a2b5e 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -85,6 +85,13 @@ flash_info_t flash_info[CFI_MAX_FLASH_BANKS];	/* FLASH chips info */
 #define CONFIG_SYS_FLASH_CFI_WIDTH	FLASH_CFI_8BIT
 #endif
 
+static phys_addr_t __cfi_flash_bank_addr(int i)
+{
+	return ((phys_addr_t [])CONFIG_SYS_FLASH_BANKS_LIST)[i];
+}
+phys_addr_t cfi_flash_bank_addr(int i)
+	__attribute__((weak, alias("__cfi_flash_bank_addr")));
+
 static void __flash_write8(u8 value, void *addr)
 {
 	__raw_writeb(value, addr);
@@ -2021,14 +2028,12 @@ unsigned long flash_init (void)
 	getenv_f("unlock", s, sizeof(s));
 #endif
 
-#define BANK_BASE(i)	(((phys_addr_t [CFI_MAX_FLASH_BANKS])CONFIG_SYS_FLASH_BANKS_LIST)[i])
-
 	/* Init: no FLASHes known */
 	for (i = 0; i < CONFIG_SYS_MAX_FLASH_BANKS; ++i) {
 		flash_info[i].flash_id = FLASH_UNKNOWN;
 
-		if (!flash_detect_legacy (BANK_BASE(i), i))
-			flash_get_size (BANK_BASE(i), i);
+		if (!flash_detect_legacy(cfi_flash_bank_addr(i), i))
+			flash_get_size(cfi_flash_bank_addr(i), i);
 		size += flash_info[i].size;
 		if (flash_info[i].flash_id == FLASH_UNKNOWN) {
 #ifndef CONFIG_SYS_FLASH_QUIET_TEST
-- 
1.7.2.3

^ permalink raw reply related	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr()
  2010-09-09 10:06 [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr() Stefan Roese
@ 2010-09-09 10:42 ` Wolfgang Denk
  2010-09-09 10:53   ` Stefan Roese
  0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Denk @ 2010-09-09 10:42 UTC (permalink / raw)
  To: u-boot

Dear Stefan Roese,

In message <1284026772-16694-1-git-send-email-sr@denx.de> you wrote:
> cfi_flash_bank_addr(int bank_nr) returns the base addresses of the
> requested bank. Introducing this weak default enables boards to override
> this functions with a board specific version when required.
...
> +	return ((phys_addr_t [])CONFIG_SYS_FLASH_BANKS_LIST)[i];
...
> -#define BANK_BASE(i)	(((phys_addr_t [CFI_MAX_FLASH_BANKS])CONFIG_SYS_FLASH_BANKS_LIST)[i])


Was the change from "[CFI_MAX_FLASH_BANKS]" to "[]" intentional?

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
Teenagers are people who express a burning desire to be different by
dressing exactly alike.
There are some strings. They're just not attached.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr()
  2010-09-09 10:42 ` Wolfgang Denk
@ 2010-09-09 10:53   ` Stefan Roese
  2010-09-09 11:57     ` Wolfgang Denk
  0 siblings, 1 reply; 5+ messages in thread
From: Stefan Roese @ 2010-09-09 10:53 UTC (permalink / raw)
  To: u-boot

Hi Wolfgang,

On Thursday 09 September 2010 12:42:13 Wolfgang Denk wrote:
> > cfi_flash_bank_addr(int bank_nr) returns the base addresses of the
> > requested bank. Introducing this weak default enables boards to override
> > this functions with a board specific version when required.
> 
> ..
> 
> > +	return ((phys_addr_t [])CONFIG_SYS_FLASH_BANKS_LIST)[i];
> 
> ..
> 
> > -#define BANK_BASE(i)	(((phys_addr_t
> > [CFI_MAX_FLASH_BANKS])CONFIG_SYS_FLASH_BANKS_LIST)[i])
> 
> Was the change from "[CFI_MAX_FLASH_BANKS]" to "[]" intentional?

Yes. Do you see a problem with this change?

Cheers,
Stefan

--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr()
  2010-09-09 10:53   ` Stefan Roese
@ 2010-09-09 11:57     ` Wolfgang Denk
  2010-09-09 12:37       ` Stefan Roese
  0 siblings, 1 reply; 5+ messages in thread
From: Wolfgang Denk @ 2010-09-09 11:57 UTC (permalink / raw)
  To: u-boot

Dear Stefan Roese,

In message <201009091253.50411.sr@denx.de> you wrote:
> 
> > Was the change from "[CFI_MAX_FLASH_BANKS]" to "[]" intentional?
> 
> Yes. Do you see a problem with this change?

Yes - why?

No, I don't see any immediate problems. Just wanted to be sure it was
intentional and has been tested in a number of different
configurations.

Best regards,

Wolfgang Denk

-- 
DENX Software Engineering GmbH,     MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd at denx.de
If you hear an onion ring, answer it.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr()
  2010-09-09 11:57     ` Wolfgang Denk
@ 2010-09-09 12:37       ` Stefan Roese
  0 siblings, 0 replies; 5+ messages in thread
From: Stefan Roese @ 2010-09-09 12:37 UTC (permalink / raw)
  To: u-boot

On Thursday 09 September 2010 13:57:45 Wolfgang Denk wrote:
> > > Was the change from "[CFI_MAX_FLASH_BANKS]" to "[]" intentional?
> > 
> > Yes. Do you see a problem with this change?
> 
> Yes - why?
> 
> No, I don't see any immediate problems. Just wanted to be sure it was
> intentional and has been tested in a number of different
> configurations.

Yes, I've successfully tested with some different flash configurations:

- sequoia with 1 NOR flash bank
- lwmon5 with 1 NOR flash bank
- lwmon5 with 2 NOR flash bank

Cheers,
Stefan

--
DENX Software Engineering GmbH,      MD: Wolfgang Denk & Detlev Zundel
HRB 165235 Munich,  Office: Kirchenstr.5, D-82194 Groebenzell, Germany
Phone: (+49)-8142-66989-0 Fax: (+49)-8142-66989-80 Email: office at denx.de

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2010-09-09 12:37 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2010-09-09 10:06 [U-Boot] [PATCH 2/4 v2] cfi_flash: Add weak default for cfi_flash_bank_addr() Stefan Roese
2010-09-09 10:42 ` Wolfgang Denk
2010-09-09 10:53   ` Stefan Roese
2010-09-09 11:57     ` Wolfgang Denk
2010-09-09 12:37       ` Stefan Roese

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.