summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSteve Markgraf <steve@steve-m.de>2010-03-11 22:16:22 +0100
committerHarald Welte <laforge@gnumonks.org>2010-03-12 10:54:56 +0800
commita13a4fda926aa272e55964c8f86cb31fb4065995 (patch)
tree7f0588ee586557e1f5c0694af980ee578fe718b4
parent5c89c3573037c79975956459d86d187a51b96267 (diff)
uwire: add a chip-select for CS0, needed by the J100i display
Signed-off-by: Steve Markgraf <steve@steve-m.de>
-rw-r--r--src/target/firmware/calypso/uwire.c7
1 files changed, 7 insertions, 0 deletions
diff --git a/src/target/firmware/calypso/uwire.c b/src/target/firmware/calypso/uwire.c
index ebdd2778..b79d9f38 100644
--- a/src/target/firmware/calypso/uwire.c
+++ b/src/target/firmware/calypso/uwire.c
@@ -94,6 +94,10 @@ int uwire_xfer(int cs, int bitlen, const void *dout, void *din)
printd("uwire_xfer(dev_idx=%u, bitlen=%u\n", cs, bitlen);
+ /* select the chip */
+ writew(UWIRE_CSR_IDX(0) | UWIRE_CSR_CS_CMD, UWIRE_REG(REG_CSR));
+ _uwire_wait(UWIRE_CSR_CSRB, 0);
+
if (dout) {
if (bitlen <= 8)
tmp = *(uint8_t *)dout;
@@ -122,6 +126,9 @@ int uwire_xfer(int cs, int bitlen, const void *dout, void *din)
else if (bitlen <= 16)
*(uint16_t *)din = tmp & 0xffff;
}
+ /* unselect the chip */
+ writew(UWIRE_CSR_IDX(0) | 0, UWIRE_REG(REG_CSR));
+ _uwire_wait(UWIRE_CSR_CSRB, 0);
printd(")\n");