Project

General

Profile

Actions

Other #402

open

Testing of FM25Q chip series

Added by Samantaz Fox almost 2 years ago. Updated almost 2 years ago.

Status:
New
Priority:
Normal
Assignee:
-
Category:
Flash chip
Target version:
Start date:
07/11/2022
Due date:
% Done:

0%

Estimated time:

Description

Problem encountered

I had to reprogram an FM25Q08B, and ran in a somewhat weird issue:

  • the chip was detected
  • the registers were properly read,
  • the memory reading operation was hanging (I let it run for 20 minutes, with no result).

I added some debugging code across the function path that leads to spi_read_chunked, and discovered that only the first 2048 bytes could be read, then the chip stopped responding.

Solution

After some more digging, I found out that this chip requires paged reading (chunks of 256 bits, similarly to the write process). Note that I've only tried one sample so far (more will come later this week), so I'm currently unable to say if this is a hardware issue or intended.

In the end, my workaround was to override chunksize in spi_read_chunked. After that, everything went fine: I was able to dump the existing content, erase the chip, write new content, and verify it back.

I'm sorry for not being able to provide a patch. I'm not familiar enough with the codebase & coding style.

(Maybe) Useful details

  • A BusPirate was used as the SPI interface
  • Flashrom was running on Fedora 35, built from edcea80 (latest master at the time of writing)
  • The chip was wired as shown on the wiki page with 6.8k resistors for 3.3V pull-up

Logs: I've run all my tests in verbose mode, so I'll send those later on (I have to transfer them across PCs).

Actions

Also available in: Atom PDF