Lines Matching refs:object
113 SDSPI_Object *object = handle->object; in SDSPI_close() local
115 if (object->spiHandle) { in SDSPI_close()
116 SPI_close(object->spiHandle); in SDSPI_close()
117 object->spiHandle = NULL; in SDSPI_close()
120 if (object->lockSem) { in SDSPI_close()
121 SemaphoreP_delete(object->lockSem); in SDSPI_close()
122 object->lockSem = NULL; in SDSPI_close()
125 object->cardType = SD_NOCARD; in SDSPI_close()
126 object->isOpen = false; in SDSPI_close()
146 SDSPI_Object *object = handle->object; in SDSPI_getNumSectors() local
149 SemaphoreP_pend(object->lockSem, SemaphoreP_WAIT_FOREVER); in SDSPI_getNumSectors()
154 if ((sendCmd(object->spiHandle, CMD9, 0) == 0) && in SDSPI_getNumSectors()
155 recvDataBlock(object->spiHandle, csd, 16)) { in SDSPI_getNumSectors()
174 SemaphoreP_post(object->lockSem); in SDSPI_getNumSectors()
211 SDSPI_Object *object = handle->object; in SDSPI_initialize() local
214 SemaphoreP_pend(object->lockSem, SemaphoreP_WAIT_FOREVER); in SDSPI_initialize()
227 status = spiTransfer(object->spiHandle, NULL, &txDummy, 10); in SDSPI_initialize()
229 SemaphoreP_post(object->lockSem); in SDSPI_initialize()
245 status = sendCmd(object->spiHandle, CMD0, 0); in SDSPI_initialize()
251 SemaphoreP_post(object->lockSem); in SDSPI_initialize()
261 if (sendCmd(object->spiHandle, CMD8, 0x1AA) == 1) { in SDSPI_initialize()
263 status = spiTransfer(object->spiHandle, &ocr, &txDummy, 4); in SDSPI_initialize()
281 if ((sendCmd(object->spiHandle, CMD55, 0) <= 1) && in SDSPI_initialize()
282 (sendCmd(object->spiHandle, CMD41, 1UL << 30) == 0)) { in SDSPI_initialize()
294 sendCmd(object->spiHandle, CMD58, 0) == 0) { in SDSPI_initialize()
295 status = spiTransfer(object->spiHandle, &ocr, &txDummy, 4); in SDSPI_initialize()
309 if ((sendCmd(object->spiHandle, CMD55, 0) <= 1) && in SDSPI_initialize()
310 (sendCmd(object->spiHandle, CMD41, 0) <= 1)) { in SDSPI_initialize()
328 if ((sendCmd(object->spiHandle, CMD55, 0) <= 1) && in SDSPI_initialize()
329 (sendCmd(object->spiHandle, CMD41, 0) == 0)) { in SDSPI_initialize()
336 if (sendCmd(object->spiHandle, CMD1, 0) == 0) { in SDSPI_initialize()
346 (sendCmd(object->spiHandle, CMD16, SD_SECTOR_SIZE) != 0)) { in SDSPI_initialize()
353 object->cardType = cardType; in SDSPI_initialize()
361 SPI_close(object->spiHandle); in SDSPI_initialize()
365 object->spiHandle = SPI_open(hwAttrs->spiIndex, &spiParams); in SDSPI_initialize()
366 status = (object->spiHandle == NULL) ? SD_STATUS_ERROR : in SDSPI_initialize()
370 SemaphoreP_post(object->lockSem); in SDSPI_initialize()
383 SDSPI_Object *object = handle->object; in SDSPI_open() local
388 if (object->isOpen) { in SDSPI_open()
393 object->isOpen = true; in SDSPI_open()
401 object->isOpen = false; in SDSPI_open()
406 object->lockSem = SemaphoreP_createBinary(1); in SDSPI_open()
407 if (object->lockSem == NULL) { in SDSPI_open()
408 object->isOpen = false; in SDSPI_open()
421 object->spiHandle = SPI_open(hwAttrs->spiIndex, &spiParams); in SDSPI_open()
422 if (object->spiHandle == NULL) { in SDSPI_open()
442 SDSPI_Object *object = handle->object; in SDSPI_read() local
449 SemaphoreP_pend(object->lockSem, SemaphoreP_WAIT_FOREVER); in SDSPI_read()
455 if (object->cardType != SD_SDHC) { in SDSPI_read()
464 if ((sendCmd(object->spiHandle, CMD17, sector) == 0) && in SDSPI_read()
465 recvDataBlock(object->spiHandle, buf, SD_SECTOR_SIZE)) { in SDSPI_read()
471 if (sendCmd(object->spiHandle, CMD18, sector) == 0) { in SDSPI_read()
473 if (!recvDataBlock(object->spiHandle, buf, SD_SECTOR_SIZE)) { in SDSPI_read()
483 if (sendCmd(object->spiHandle, CMD12, 0) == 0 && sectorCount == 0) { in SDSPI_read()
492 spiTransfer(object->spiHandle, NULL, &ffByte, 1); in SDSPI_read()
494 SemaphoreP_post(object->lockSem); in SDSPI_read()
506 SDSPI_Object *object = handle->object; in SDSPI_write() local
513 SemaphoreP_pend(object->lockSem, SemaphoreP_WAIT_FOREVER); in SDSPI_write()
519 if (object->cardType != SD_SDHC) { in SDSPI_write()
528 if ((sendCmd(object->spiHandle, CMD24, sector) == 0) && in SDSPI_write()
529 transmitDataBlock(object->spiHandle, (void *) buf, SD_SECTOR_SIZE, in SDSPI_write()
536 if ((object->cardType == SD_SDSC) || (object->cardType == SD_SDHC)) { in SDSPI_write()
537 if (sendCmd(object->spiHandle, CMD55, 0) != 0) { in SDSPI_write()
543 (sendCmd(object->spiHandle, CMD23, sectorCount) != 0)) { in SDSPI_write()
550 (sendCmd(object->spiHandle, CMD25, sector) == 0)) { in SDSPI_write()
552 if (!transmitDataBlock(object->spiHandle, (void *) buf, in SDSPI_write()
560 if (!transmitDataBlock(object->spiHandle, NULL, 0, in SDSPI_write()
571 waitUntilReady(object->spiHandle); in SDSPI_write()
575 SemaphoreP_post(object->lockSem); in SDSPI_write()