mirror of
https://github.com/BobTheBlinker/android_kernel_motorola_sm6375.git
synced 2026-10-29 11:11:45 -04:00
[MTD] CFI: Use 16-bit access to autoselect/read device id data
Recent models of Intel/Sharp and Spansion CFI flash now have significant bits in the upper byte of device ID codes, read via what Spansion calls "autoselect" and Intel calls "read device identifier". Currently these values are truncated to the low 8 bits in the mtd data structures, as all CFI read query info has previously been read one byte at a time. Add a new method for reading 16-bit info, currently just manufacturer and device codes; datasheets hint at future uses for upper bytes in other fields. Signed-off-by: Todd Poynor <[email protected]> Signed-off-by: Thomas Gleixner <[email protected]>
This commit is contained in:
parent
3eb8ceac48
commit
987d24018d
2 changed files with 20 additions and 4 deletions
|
|
@ -1,7 +1,7 @@
|
|||
/*
|
||||
Common Flash Interface probe code.
|
||||
(C) 2000 Red Hat. GPL'd.
|
||||
$Id: cfi_probe.c,v 1.84 2005/11/07 11:14:23 gleixner Exp $
|
||||
$Id: cfi_probe.c,v 1.85 2005/11/15 23:28:17 tpoynor Exp $
|
||||
*/
|
||||
|
||||
#include <linux/config.h>
|
||||
|
|
@ -230,8 +230,8 @@ static int __xipram cfi_chip_setup(struct map_info *map,
|
|||
cfi_send_gen_cmd(0xaa, 0x555, base, map, cfi, cfi->device_type, NULL);
|
||||
cfi_send_gen_cmd(0x55, 0x2aa, base, map, cfi, cfi->device_type, NULL);
|
||||
cfi_send_gen_cmd(0x90, 0x555, base, map, cfi, cfi->device_type, NULL);
|
||||
cfi->mfr = cfi_read_query(map, base);
|
||||
cfi->id = cfi_read_query(map, base + ofs_factor);
|
||||
cfi->mfr = cfi_read_query16(map, base);
|
||||
cfi->id = cfi_read_query16(map, base + ofs_factor);
|
||||
|
||||
/* Put it back into Read Mode */
|
||||
cfi_send_gen_cmd(0xF0, 0, base, map, cfi, cfi->device_type, NULL);
|
||||
|
|
|
|||
Loading…
Reference in a new issue