spi: handle qpi better for command handling
Signed-off-by: Sean Cross <sean@xobs.io>
This commit is contained in:
parent
af1dff1e28
commit
f4ac6ea812
10
spi.c
10
spi.c
@ -116,6 +116,10 @@ void spiPause(struct ff_spi *spi) {
|
|||||||
|
|
||||||
void spiBegin(struct ff_spi *spi) {
|
void spiBegin(struct ff_spi *spi) {
|
||||||
spi_set_state(spi, SS_SINGLE);
|
spi_set_state(spi, SS_SINGLE);
|
||||||
|
if ((spi->type == ST_SINGLE) || (spi->type == ST_DUAL)) {
|
||||||
|
gpioWrite(spi->pins.wp, 1);
|
||||||
|
gpioWrite(spi->pins.hold, 1);
|
||||||
|
}
|
||||||
gpioWrite(spi->pins.cs, 0);
|
gpioWrite(spi->pins.cs, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -302,21 +306,21 @@ uint8_t spiReadSr(struct ff_spi *spi, int sr) {
|
|||||||
case 1:
|
case 1:
|
||||||
spiBegin(spi);
|
spiBegin(spi);
|
||||||
spiCommand(spi, 0x05);
|
spiCommand(spi, 0x05);
|
||||||
val = spiRx(spi);
|
val = spiCommandRx(spi);
|
||||||
spiEnd(spi);
|
spiEnd(spi);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 2:
|
case 2:
|
||||||
spiBegin(spi);
|
spiBegin(spi);
|
||||||
spiCommand(spi, 0x35);
|
spiCommand(spi, 0x35);
|
||||||
val = spiRx(spi);
|
val = spiCommandRx(spi);
|
||||||
spiEnd(spi);
|
spiEnd(spi);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 3:
|
case 3:
|
||||||
spiBegin(spi);
|
spiBegin(spi);
|
||||||
spiCommand(spi, 0x15);
|
spiCommand(spi, 0x15);
|
||||||
val = spiRx(spi);
|
val = spiCommandRx(spi);
|
||||||
spiEnd(spi);
|
spiEnd(spi);
|
||||||
break;
|
break;
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user