A37X0_SPI_WRITE
A37X0_SPI_WRITE(sc, A37X0_SPI_CONTROL, reg & ~A37X0_SPI_CS_MASK);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg | A37X0_SPI_FIFO_FLUSH);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg | A37X0_SPI_SRST);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_INTR_MASK, 0);
A37X0_SPI_WRITE(sc, A37X0_SPI_INTR_STAT, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_DATA_OUT, p[written]);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONF, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_INTR_STAT, status);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONTROL, 1 << (A37X0_SPI_CS_SHIFT + cs));
A37X0_SPI_WRITE(sc, A37X0_SPI_INTR_STAT, reg);
A37X0_SPI_WRITE(sc, A37X0_SPI_CONTROL, reg & ~A37X0_SPI_CS_MASK);
A37X0_SPI_WRITE(sc, A37X0_SPI_INTR_MASK, 0);