This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

CC3351: regarding the SDIO interface of CC3351.

Part Number: CC3351


Tool/software:

At present, the MCU SDIO can communicate with the cc3351, but the command parameter formats of CMD5/3/7/52 are unknown. Could tell me where I can find the documentation for this?

The sending sequence is CMD0 0 / CMD5 0 / CMD3 0x10000 / CMD7 0x10000.

CMD 5 resp 0xA0FFFFC0

CMD 3 resp 0x00010000  0xEBFFFFFF

CMD7 resp 0x00001EC7 0x95FFFFFF

Could tell me what these request - responses represent?

  • You will need to get and learn the SDIO specification if you want to operate at this level.  

    You can start here:
    https://www.sdcard.org/downloads/pls/

    You're looking for the Part E1 Simplified.  This one is free, but not complete.  It should be enough for you to decide if you want more information and purchase the full specifications.

    But to be clear, you should not be working at this level unless there are problems with your host controller implementation.

  • Are you using any TI CC33xx SDK for your implementation? Are you working with a linux system?

  • Thank you very much. I got it!!May I ask another question? Is it okay to initialize by following the SDIO standard protocol? What items need to be set for CMD52? For example, setting the bus bandwidth. And what else needs to be set then? Can CMD5 directly enable 1.8V voltage support? Or is it necessary to make an inquiry with CMD5 first and then set it?

  • Test running with M4 and RTOS. I think when transplanting SDIO to RTOS, it should be okay as long as the SDIO initialization and read - write interface parts are implemented.

  • I think that if your RTOS doesn't already have a complete SDIO solution, you are out of luck.  This isn't something you are going to be able to implement on your own.  If you're asking questions like this, something either isn't supported or you aren't using it correctly. 

  • The RTOS is developed by ourselves and has a complete driver framework. We only need to implement the SDIO protocol part! Currently, in the test, the pre-initialization work is relatively smooth, and packets can be sent and received normally. However, we don't know what parameters need to be configured during the initialization stage of the CC33XX. At present, only CMD5/3:7, as well as CMD52 set bus width and set bus speed have been done. Tomorrow, we will try to read the FW information.

  • See the SDIO standards I pointed you to earlier.  If you are writing this from scratch, that is what you need to implement.  You will then need to port the driver from TI to your newly invented framework.

    Good luck...

  • Thank you for your technical support..It took us a while to read the sdik code!For the SDIO driver part, it's okay to do some basic initialization. After CMD 5/3/7, set and adjust the in-band interrupts, bit width and speed, and enable func 1.During data transmission, use CMD53 to first write the requested content to Func 1, the CIS port address 0xBFF0, and then read back from 0xBFF8.During the transplantation process, it's only necessary to implement the SDIO driver commands CMD3/5/7/52/53, and then switch the bus interface to SDIO.Is my understanding correct?