Lines Matching full:spi

2  * generic mmc spi driver
12 #include <spi.h>
17 /* MMC/SD in SPI mode reports R1 status always */
41 /* MMC SPI commands start with a start bit "0" and a transmit bit "1" */
55 struct spi_slave *spi = mmc->priv; in mmc_spi_sendcmd() local
66 spi_xfer(spi, sizeof(cmdo) * 8, cmdo, NULL, 0); in mmc_spi_sendcmd()
68 spi_xfer(spi, 1 * 8, NULL, &r1, 0); in mmc_spi_sendcmd()
79 struct spi_slave *spi = mmc->priv; in mmc_spi_readdata() local
86 spi_xfer(spi, 1 * 8, NULL, &r1, 0); in mmc_spi_readdata()
92 spi_xfer(spi, bsize * 8, NULL, buf, 0); in mmc_spi_readdata()
93 spi_xfer(spi, 2 * 8, NULL, &crc, 0); in mmc_spi_readdata()
114 struct spi_slave *spi = mmc->priv; in mmc_spi_writedata() local
126 spi_xfer(spi, 2 * 8, tok, NULL, 0); in mmc_spi_writedata()
127 spi_xfer(spi, bsize * 8, buf, NULL, 0); in mmc_spi_writedata()
128 spi_xfer(spi, 2 * 8, &crc, NULL, 0); in mmc_spi_writedata()
130 spi_xfer(spi, 1 * 8, NULL, &r1, 0); in mmc_spi_writedata()
137 spi_xfer(spi, 1 * 8, NULL, &r1, 0); in mmc_spi_writedata()
157 spi_xfer(spi, 2 * 8, tok, NULL, 0); in mmc_spi_writedata()
159 spi_xfer(spi, 1 * 8, NULL, &r1, 0); in mmc_spi_writedata()
176 struct spi_slave *spi = mmc->priv; in mmc_spi_request() local
182 spi_claim_bus(spi); in mmc_spi_request()
183 spi_cs_activate(spi); in mmc_spi_request()
208 spi_xfer(spi, 4 * 8, NULL, cmd->response, 0); in mmc_spi_request()
213 spi_xfer(spi, 1 * 8, NULL, cmd->response, 0); in mmc_spi_request()
234 spi_cs_deactivate(spi); in mmc_spi_request()
235 spi_release_bus(spi); in mmc_spi_request()
241 struct spi_slave *spi = mmc->priv; in mmc_spi_set_ios() local
245 spi_set_speed(spi, mmc->clock); in mmc_spi_set_ios()
251 struct spi_slave *spi = mmc->priv; in mmc_spi_init_p() local
252 spi_set_speed(spi, MMC_SPI_MIN_CLOCK); in mmc_spi_init_p()
253 spi_claim_bus(spi); in mmc_spi_init_p()
255 spi_xfer(spi, 18 * 8, NULL, NULL, 0); in mmc_spi_init_p()
256 spi_release_bus(spi); in mmc_spi_init_p()
279 struct spi_slave *spi; in mmc_spi_init() local
281 spi = spi_setup_slave(bus, cs, speed, mode); in mmc_spi_init()
282 if (spi == NULL) in mmc_spi_init()
287 mmc = mmc_create(&mmc_spi_cfg, spi); in mmc_spi_init()
289 spi_free_slave(spi); in mmc_spi_init()