public inbox for u-boot@lists.denx.de
 help / color / mirror / Atom feed
* [U-Boot] [PATCH CFI]: Fix printing & reading of 16-bit CFI device identifiers
@ 2010-08-10 14:54 Philippe De Muyter
  2010-08-12 12:00 ` Stefan Roese
  0 siblings, 1 reply; 2+ messages in thread
From: Philippe De Muyter @ 2010-08-10 14:54 UTC (permalink / raw)
  To: u-boot

Fix reading and printing of CFI flashes 16-bit devices identifiers

Nowadays CFI flashes have a 16-bit device identifier.  U-boot still
print them and read them as if they were only 8-bit wide.  Fix that.
Before:
  Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x1B
After:
  Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x881B

Signed-off-by: Philippe De Muyter <phdm@macqel.be>


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

diff --git a/drivers/mtd/cfi_flash.c b/drivers/mtd/cfi_flash.c
index 013d4ad..8fb6c2e 100644
--- a/drivers/mtd/cfi_flash.c
+++ b/drivers/mtd/cfi_flash.c
@@ -1142,8 +1142,10 @@ void flash_print_info (flash_info_t * info)
 			printf ("Unknown (%d)", info->vendor);
 			break;
 	}
-	printf (" command set, Manufacturer ID: 0x%02X, Device ID: 0x%02X",
-		info->manufacturer_id, info->device_id);
+	printf (" command set, Manufacturer ID: 0x%02X, Device ID: 0x",
+		info->manufacturer_id);
+	printf (info->chipwidth == FLASH_CFI_16BIT ? "%04X" : "%02X",
+		info->device_id);
 	if (info->device_id == 0x7E) {
 		printf("%04X", info->device_id2);
 	}
@@ -1494,8 +1496,9 @@ static void cmdset_intel_read_jedec_ids(flash_info_t *info)
 	udelay(1000); /* some flash are slow to respond */
 	info->manufacturer_id = flash_read_uchar (info,
 					FLASH_OFFSET_MANUFACTURER_ID);
-	info->device_id = flash_read_uchar (info,
-					FLASH_OFFSET_DEVICE_ID);
+	info->device_id = (info->chipwidth == FLASH_CFI_16BIT) ?
+			flash_read_word (info, FLASH_OFFSET_DEVICE_ID) :
+			flash_read_uchar (info, FLASH_OFFSET_DEVICE_ID);
 	flash_write_cmd(info, 0, 0, FLASH_CMD_RESET);
 }
 
-- 
1.6.3.3


-- 
Philippe De Muyter  phdm at macqel dot be  Tel +32 27029044
Macq Electronique SA  rue de l'Aeronef 2  B-1140 Bruxelles  Fax +32 27029077

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

* [U-Boot] [PATCH CFI]: Fix printing & reading of 16-bit CFI device identifiers
  2010-08-10 14:54 [U-Boot] [PATCH CFI]: Fix printing & reading of 16-bit CFI device identifiers Philippe De Muyter
@ 2010-08-12 12:00 ` Stefan Roese
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Roese @ 2010-08-12 12:00 UTC (permalink / raw)
  To: u-boot

On Tuesday 10 August 2010 16:54:52 Philippe De Muyter wrote:
> Fix reading and printing of CFI flashes 16-bit devices identifiers
> 
> Nowadays CFI flashes have a 16-bit device identifier.  U-boot still
> print them and read them as if they were only 8-bit wide.  Fix that.
> Before:
>   Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x1B
> After:
>   Intel Extended command set, Manufacturer ID: 0x89, Device ID: 0x881B
> 
> Signed-off-by: Philippe De Muyter <phdm@macqel.be>

Applied to u-boot-cfi-flash/master. Thanks.

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] 2+ messages in thread

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

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-08-10 14:54 [U-Boot] [PATCH CFI]: Fix printing & reading of 16-bit CFI device identifiers Philippe De Muyter
2010-08-12 12:00 ` Stefan Roese

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox