/Zephyr-latest/subsys/sd/ |
D | sdmmc.c | 63 static int sdmmc_app_command(struct sd_card *card, int relative_card_address) in sdmmc_app_command() argument 65 return card_app_command(card, relative_card_address); in sdmmc_app_command() 69 static int sdmmc_spi_send_ocr(struct sd_card *card, uint32_t arg) in sdmmc_spi_send_ocr() argument 80 ret = sdhc_request(card->sdhc, &cmd, NULL); in sdmmc_spi_send_ocr() 87 card->ocr = cmd.response[1]; in sdmmc_spi_send_ocr() 88 if (card->ocr == 0) { in sdmmc_spi_send_ocr() 97 static int sdmmc_send_ocr(struct sd_card *card, int ocr) in sdmmc_send_ocr() argument 111 ret = sdmmc_app_command(card, 0U); in sdmmc_send_ocr() 118 ret = sdhc_request(card->sdhc, &cmd, NULL); in sdmmc_send_ocr() 131 if (card->host_props.is_spi) { in sdmmc_send_ocr() [all …]
|
D | sd.c | 22 static inline int sd_idle(struct sd_card *card) in sd_idle() argument 32 return sdhc_request(card->sdhc, &cmd, NULL); in sd_idle() 41 static int sd_send_interface_condition(struct sd_card *card) in sd_send_interface_condition() argument 48 ret = sd_idle(card); in sd_send_interface_condition() 60 ret = sdhc_request(card->sdhc, &cmd, NULL); in sd_send_interface_condition() 66 if (card->host_props.is_spi) { in sd_send_interface_condition() 81 card->flags |= SD_SDHC_FLAG; in sd_send_interface_condition() 86 static int sd_enable_crc(struct sd_card *card) in sd_enable_crc() argument 91 __ASSERT_NO_MSG(card->host_props.is_spi); in sd_enable_crc() 97 return sdhc_request(card->sdhc, &cmd, NULL); in sd_enable_crc() [all …]
|
D | sdio.c | 28 static int sdio_send_ocr(struct sd_card *card, uint32_t ocr) in sdio_send_ocr() argument 40 ret = sdhc_request(card->sdhc, &cmd, NULL); in sdio_send_ocr() 50 card->num_io = (cmd.response[0] & SDIO_OCR_IO_NUMBER) in sdio_send_ocr() 52 if ((card->num_io == 0) || in sdio_send_ocr() 79 if (!card->host_props.is_spi) { in sdio_send_ocr() 81 card->ocr = cmd.response[0U]; in sdio_send_ocr() 86 static int sdio_io_rw_direct(struct sd_card *card, in sdio_io_rw_direct() argument 109 ret = sdhc_request(card->sdhc, &cmd, NULL); in sdio_io_rw_direct() 114 if (card->host_props.is_spi) { in sdio_io_rw_direct() 124 static int sdio_io_rw_extended(struct sd_card *card, in sdio_io_rw_extended() argument [all …]
|
D | mmc.c | 45 #define MMC_REL_ADR_ARG (card->relative_addr << 16U) 55 inline int mmc_write_blocks(struct sd_card *card, const uint8_t *wbuf, uint32_t start_block, in mmc_write_blocks() argument 58 return card_write_blocks(card, wbuf, start_block, num_blocks); in mmc_write_blocks() 61 inline int mmc_read_blocks(struct sd_card *card, uint8_t *rbuf, uint32_t start_block, in mmc_read_blocks() argument 64 return card_read_blocks(card, rbuf, start_block, num_blocks); in mmc_read_blocks() 67 inline int mmc_ioctl(struct sd_card *card, uint8_t cmd, void *buf) in mmc_ioctl() argument 69 return card_ioctl(card, cmd, buf); in mmc_ioctl() 73 static int mmc_send_op_cond(struct sd_card *card, int ocr); 76 static int mmc_set_rca(struct sd_card *card); 79 static int mmc_read_csd(struct sd_card *card, struct sd_csd *card_csd); [all …]
|
D | sd_ops.c | 20 int sdmmc_read_status(struct sd_card *card) in sdmmc_read_status() argument 27 if (!card->host_props.is_spi) { in sdmmc_read_status() 28 cmd.arg = (card->relative_addr << 16U); in sdmmc_read_status() 34 ret = sdhc_request(card->sdhc, &cmd, NULL); in sdmmc_read_status() 38 if (card->host_props.is_spi) { in sdmmc_read_status() 65 int sdmmc_wait_ready(struct sd_card *card) in sdmmc_wait_ready() argument 70 if (!sdhc_card_busy(card->sdhc)) { in sdmmc_wait_ready() 72 ret = sd_retry(sdmmc_read_status, card, CONFIG_SD_RETRY_COUNT); in sdmmc_wait_ready() 205 static int sdmmc_spi_read_cxd(struct sd_card *card, uint32_t opcode, uint32_t *cxd) in sdmmc_spi_read_cxd() argument 211 uint32_t *cxd_be = (uint32_t *)card->card_buffer; in sdmmc_spi_read_cxd() [all …]
|
D | sd_ops.h | 15 int sdmmc_switch_voltage(struct sd_card *card); 20 int card_read_cid(struct sd_card *card); 25 int sdmmc_read_csd(struct sd_card *card); 31 int sdmmc_request_rca(struct sd_card *card); 36 int sdmmc_select_card(struct sd_card *card); 48 int card_ioctl(struct sd_card *card, uint8_t cmd, void *buf); 50 int card_read_blocks(struct sd_card *card, uint8_t *rbuf, 53 int card_write_blocks(struct sd_card *card, const uint8_t *wbuf, 56 int card_app_command(struct sd_card *card, int relative_card_address); 58 int sdmmc_read_status(struct sd_card *card); [all …]
|
D | sd_init.h | 14 int sdio_card_init(struct sd_card *card); 16 int sdmmc_card_init(struct sd_card *card); 18 int mmc_card_init(struct sd_card *card);
|
D | Kconfig | 29 Enable SD card support. 38 int "Timeout while initializing SD card" 41 Maximum time to wait, in milliseconds, for the SD card to initialize. 80 Size in bytes of internal buffer SD card uses for unaligned reads and 84 int "Number of times to retry sending command to card" 87 Number of times to retry sending command to SD card in case of failure 90 int "Number of times to retry sending data to card" 93 Number of times to retry sending data to SD card in case of failure 97 bool "Ultra high speed SD card protocol support" 104 hex "MMC Relative card address" [all …]
|
D | sd_utils.h | 50 static inline int sd_retry(int(*cmd)(struct sd_card *card), in sd_retry() argument 51 struct sd_card *card, in sd_retry() 58 ret = cmd(card); in sd_retry()
|
/Zephyr-latest/tests/subsys/sd/sdmmc/src/ |
D | main.c | 18 static struct sd_card card; variable 40 ret = sd_init(sdhc_dev, &card); in ZTEST() 49 ret = sdmmc_ioctl(&card, DISK_IOCTL_GET_SECTOR_COUNT, §or_count); in ZTEST() 53 ret = sdmmc_ioctl(&card, DISK_IOCTL_GET_SECTOR_SIZE, §or_size); in ZTEST() 67 ret = sdmmc_read_blocks(&card, buf, block_addr, 1); in ZTEST() 70 ret = sdmmc_read_blocks(&card, buf, block_addr, SECTOR_COUNT / 2); in ZTEST() 76 ret = sdmmc_read_blocks(&card, buf, block_addr, SECTOR_COUNT); in ZTEST() 81 ret = sdmmc_read_blocks(&card, buf, block_addr, 1); in ZTEST() 85 ret = sdmmc_read_blocks(&card, buf, block_addr, 2); in ZTEST() 90 ret = sdmmc_read_blocks(&card, buf + SDMMC_UNALIGN_OFFSET, in ZTEST() [all …]
|
/Zephyr-latest/tests/subsys/sd/mmc/src/ |
D | main.c | 17 static struct sd_card card; variable 35 ret = sd_init(sdhc_dev, &card); in ZTEST() 45 ret = mmc_ioctl(&card, DISK_IOCTL_GET_SECTOR_COUNT, §or_count); in ZTEST() 49 ret = mmc_ioctl(&card, DISK_IOCTL_GET_SECTOR_SIZE, §or_size); in ZTEST() 62 ret = mmc_read_blocks(&card, buf, block_addr, 1); in ZTEST() 65 ret = mmc_read_blocks(&card, buf, block_addr, SECTOR_COUNT / 2); in ZTEST() 71 ret = mmc_read_blocks(&card, buf, block_addr, SECTOR_COUNT); in ZTEST() 76 ret = mmc_read_blocks(&card, buf, block_addr, 1); in ZTEST() 80 ret = mmc_read_blocks(&card, buf, block_addr, 2); in ZTEST() 85 ret = mmc_read_blocks(&card, buf + MMC_UNALIGN_OFFSET, block_addr, SECTOR_COUNT - 1); in ZTEST() [all …]
|
/Zephyr-latest/tests/subsys/sd/sdio/src/ |
D | main.c | 14 static struct sd_card card; variable 29 ret = sd_init(sdhc_dev, &card); in ZTEST() 43 ret = sdio_read_byte(&card.func0, SDIO_CCCR_CCCR, ®); in ZTEST() 52 switch (card.card_voltage) { in ZTEST() 68 zassert_equal(card.status, CARD_INITIALIZED, "Card status is not OK"); in ZTEST() 69 switch (card.card_speed) { in ZTEST() 88 switch (card.type) { in ZTEST() 101 if (card.sd_version >= SD_SPEC_VER3_0) { in ZTEST() 103 } else if (card.sd_version >= SD_SPEC_VER2_0) { in ZTEST() 105 } else if (card.sd_version >= SD_SPEC_VER1_1) { in ZTEST() [all …]
|
/Zephyr-latest/tests/subsys/sd/sdio/ |
D | README.txt | 5 devices. Note that this test will only perform basic reads from the SDIO card 6 after initialization, as most registers present on the card will be vendor 7 specific. It requires an SDIO card be connected to the board to pass. 10 * Init test: verify the SD host controller can detect card presence, and 12 can correctly initialize an SDIO card. 14 * Read test: verify that a read from the SDIO common card register area returns 18 for this card after initialization.
|
/Zephyr-latest/doc/_extensions/zephyr/domain/static/css/ |
D | board-catalog.css | 94 .board-card { 108 .board-card:hover, 109 .board-card:focus { 115 .board-card .picture { 128 .board-card .no-picture { 134 .board-card .vendor { 142 .board-card img { 148 .board-card .board-name { 158 .board-card .arch { 167 .board-card { [all …]
|
/Zephyr-latest/tests/subsys/sd/mmc/ |
D | README.txt | 8 use. It requires an SD card be connected to the board to pass, and will 9 perform destructive I/O on the card, wiping any data present. The test has 12 * Init test: verify the SD host controller can detect card presence, and 14 can correctly initialize an SD card. 21 the card's stated size. 25 the card's stated size. 27 * R/W test: write data to the MMC card, and verify that it is able 29 sector locations across the MMC card.
|
/Zephyr-latest/tests/subsys/sd/sdmmc/ |
D | README.txt | 8 use. It requires an SD card be connected to the board to pass, and will 9 perform destructive I/O on the card, wiping any data present. The test has 12 * Init test: verify the SD host controller can detect card presence, and 14 can correctly initialize an SD card. 21 the card's stated size. 25 the card's stated size. 27 * R/W test: write data to the SD card, and verify that it is able 29 sector locations across the SD card.
|
/Zephyr-latest/include/zephyr/sd/ |
D | mmc.h | 37 int mmc_write_blocks(struct sd_card *card, const uint8_t *wbuf, 54 int mmc_read_blocks(struct sd_card *card, uint8_t *rbuf, 70 int mmc_ioctl(struct sd_card *card, uint8_t cmd, void *buf);
|
D | sdmmc.h | 37 int sdmmc_write_blocks(struct sd_card *card, const uint8_t *wbuf, 54 int sdmmc_read_blocks(struct sd_card *card, uint8_t *rbuf, 68 int sdmmc_ioctl(struct sd_card *card, uint8_t cmd, void *buf);
|
/Zephyr-latest/drivers/disk/ |
D | mmc_subsys.c | 28 struct sd_card card; member 41 ret = sd_init(cfg->host_controller, &data->card); in disk_mmc_access_init() 68 return mmc_read_blocks(&data->card, buf, sector, count); in disk_mmc_access_read() 77 return mmc_write_blocks(&data->card, buf, sector, count); in disk_mmc_access_write() 89 mmc_ioctl(&data->card, DISK_IOCTL_CTRL_SYNC, NULL); in disk_mmc_access_ioctl() 96 return mmc_ioctl(&data->card, cmd, buf); in disk_mmc_access_ioctl() 116 data->card.bus_width = config->bus_width; in disk_mmc_init()
|
D | sdmmc_subsys.c | 27 struct sd_card card; member 44 ret = sd_init(cfg->host_controller, &data->card); in disk_sdmmc_access_init() 75 return sdmmc_read_blocks(&data->card, buf, sector, count); in disk_sdmmc_access_read() 84 return sdmmc_write_blocks(&data->card, buf, sector, count); in disk_sdmmc_access_write() 98 return sdmmc_ioctl(&data->card, DISK_IOCTL_CTRL_DEINIT, NULL); in disk_sdmmc_access_ioctl() 100 return sdmmc_ioctl(&data->card, cmd, buf); in disk_sdmmc_access_ioctl()
|
D | Kconfig.mmc | 5 bool "MMC card driver" 9 MMC card driver.
|
/Zephyr-latest/boards/shields/adafruit_adalogger_featherwing/doc/ |
D | index.rst | 10 Clock/Calendar with Battery Backup`_, and an SD card interface. 24 | D10 | SD card SPI CS | 26 | MOSI | SD card SPI MOSI | 28 | MISO | SD card SPI MISO | 30 | SCK | SD card SPI SCK |
|
/Zephyr-latest/samples/subsys/fs/fs_sample/ |
D | README.rst | 11 system driver with SDHC card, SoC flash or external flash chip. 15 Requirements for SD card support 18 This project requires SD card support and microSD card formatted with proper file system 20 Boards that by default use SD card for storage: ``arduino_mkrzero``, ``esp_wrover_kit``, 65 In case when board with SD card is used FAT microSD card should be present in the 66 microSD slot. If there are any files or directories present in the card, the 87 A microSD card must be present in a microSD card slot of the board, for the sample to execute.
|
/Zephyr-latest/drivers/sdhc/ |
D | Kconfig.sam_hsmci | 11 Enable the ATMEL SAM HSMCI MMC/SD card driver. 22 bool "Power save during card inactive" 25 Power-save mode reduces the clock-speed during SD card
|
/Zephyr-latest/tests/drivers/sdhc/ |
D | README.txt | 5 SD host controller API. It requires that an SD card be present on the SD bus 19 * Card presence test. Verify that the SDHC detects card presence. 21 * Request test: Make a request to read the card interface condition, 24 Note that this test does not verify the tuning or card busy api, as the SD
|