From patchwork Fri Sep 18 19:51:51 2009 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: [12/13] mtd: jedec_probe: fix NEC uPD29F064115 detection Date: Fri, 18 Sep 2009 09:51:51 -0000 From: Andrew Morton X-Patchwork-Id: 33890 Message-Id: <200909181951.n8IJppQ1023875@imap1.linux-foundation.org> To: dwmw2@infradead.org Cc: ito@mlb.co.jp, akpm@linux-foundation.org, linux-mtd@lists.infradead.org, David.Woodhouse@intel.com, anemo@mba.ocn.ne.jp From: Hiroshi Ito linux v2.6.31-rc6 can not detect NEC uPD29F064115. uPD29F064115 is a 16 bit device. datasheet: http://www.cn.necel.com/memory/cn/download/M16062EJ2V0DS00.pdf A problem and fix is described in the following commit, which in the main kernel tree, uPD29F064115 needs same fix. commit ca6f12c67ed19718cf37d0f531af9438de85b70c Author: Atsushi Nemoto Date: Wed Jul 16 00:09:15 2008 +0900 [MTD] jedec_probe: Fix SST 16-bit chip detection The unlock_addr rework in kernel 2.6.25 breaks 16-bit SST chips. SST 39LF160 and SST 39VF1601 are both 16-bit only chip (do not have BYTE# pin) and new uaddr value is not correct for them. Add MTD_UADDR_0xAAAA_0x5555 for those chips. Tested with SST 39VF1601 chip. Signed-off-by: Atsushi Nemoto Signed-off-by: David Woodhouse Signed-off-by: Hiroshi Ito Cc: David Woodhouse Cc: Atsushi Nemoto Signed-off-by: Andrew Morton --- drivers/mtd/chips/jedec_probe.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff -puN drivers/mtd/chips/jedec_probe.c~mtd-jedec_probe-fix-nec-upd29f064115-detection drivers/mtd/chips/jedec_probe.c --- a/drivers/mtd/chips/jedec_probe.c~mtd-jedec_probe-fix-nec-upd29f064115-detection +++ a/drivers/mtd/chips/jedec_probe.c @@ -1156,8 +1156,8 @@ static const struct amd_flash_info jedec .mfr_id = MANUFACTURER_NEC, .dev_id = UPD29F064115, .name = "NEC uPD29F064115", - .devtypes = CFI_DEVICETYPE_X16|CFI_DEVICETYPE_X8, - .uaddr = MTD_UADDR_0x0555_0x02AA, /* ???? */ + .devtypes = CFI_DEVICETYPE_X16, + .uaddr = MTD_UADDR_0xAAAA_0x5555, .dev_size = SIZE_8MiB, .cmd_set = P_ID_AMD_STD, .nr_regions = 3,