blob: b54aaeae2e108854775fe65e58074c9584df84ef [file] [log] [blame]
Stefan Tauner0d82e952012-10-27 00:34:18 +00001/* According to Serial Flasher Protocol Specification - version 1 */
2#define S_ACK 0x06
3#define S_NAK 0x15
4#define S_CMD_NOP 0x00 /* No operation */
5#define S_CMD_Q_IFACE 0x01 /* Query interface version */
6#define S_CMD_Q_CMDMAP 0x02 /* Query supported commands bitmap */
7#define S_CMD_Q_PGMNAME 0x03 /* Query programmer name */
8#define S_CMD_Q_SERBUF 0x04 /* Query Serial Buffer Size */
9#define S_CMD_Q_BUSTYPE 0x05 /* Query supported bustypes */
10#define S_CMD_Q_CHIPSIZE 0x06 /* Query supported chipsize (2^n format) */
11#define S_CMD_Q_OPBUF 0x07 /* Query operation buffer size */
12#define S_CMD_Q_WRNMAXLEN 0x08 /* Query Write to opbuf: Write-N maximum length */
13#define S_CMD_R_BYTE 0x09 /* Read a single byte */
14#define S_CMD_R_NBYTES 0x0A /* Read n bytes */
15#define S_CMD_O_INIT 0x0B /* Initialize operation buffer */
16#define S_CMD_O_WRITEB 0x0C /* Write opbuf: Write byte with address */
17#define S_CMD_O_WRITEN 0x0D /* Write to opbuf: Write-N */
18#define S_CMD_O_DELAY 0x0E /* Write opbuf: udelay */
19#define S_CMD_O_EXEC 0x0F /* Execute operation buffer */
20#define S_CMD_SYNCNOP 0x10 /* Special no-operation that returns NAK+ACK */
21#define S_CMD_Q_RDNMAXLEN 0x11 /* Query read-n maximum length */
22#define S_CMD_S_BUSTYPE 0x12 /* Set used bustype(s). */
23#define S_CMD_O_SPIOP 0x13 /* Perform SPI operation. */
24#define S_CMD_S_SPI_FREQ 0x14 /* Set SPI clock frequency */
Stefan Tauner92fefc92012-10-27 00:34:23 +000025#define S_CMD_S_PIN_STATE 0x15 /* Enable/disable output drivers */