특정디바이스를 커널이나 부트로더에서 제어할때 문제가 없다면 해당 디바이스에 대해 알지 못한다.

요즘 QSPI 가 문제가 있어 열심히 삽질을 했다.

 

SPI 신호선

    SS, CLK, MISO, MOSI

 

SINGLE 모두 QSPI 신호선

    SS, CLK, MISO, MOSI      

 

DUAL 모드로 사용하면

    SS, CLK, IO0, IO1        

 

QUAD 모드로 사용하면

    SS, CLK, IO0, IO1, IO2, IO3

 

중요한 점은 SINGLE 모드로 사용할 경우와 DUAL 모드의 신호선은 동일하다는 것이다.

난 SINGLE 모드에서 IO0 에서 입 출력이 모두 일어날줄 알았다.  헌데 스코프상에 입력 파형이 없어 아주 많이 당황했다.

 

또 하나의 중요한 점은

플래시의 읽기,쓰기에서  SINGLE, DUAL, QUAD 의 명령어가 모두 별도로 존재한다는 것이다.

관련 소스가 예전것인지 이렇게 구분해서 사용하지 않는 소스로 하다보니 삽질이 길어졌다.

추가해서 각 명령어는 클럭의 최대 속도가 있다는 점이다.

 

첨부된 그림은  S25FL512S 의 데이타쉬트에서 읽기명령어 파트이다.

 

QSPI_READ_CMD.PNG