coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
sd_mmc.c File Reference
#include <commonlib/storage.h>
#include <delay.h>
#include <endian.h>
#include <string.h>
#include "mmc.h"
#include "sd_mmc.h"
#include "storage.h"
Include dependency graph for sd_mmc.c:

Go to the source code of this file.

Functions

uint64_t sd_mmc_extract_uint32_bits (const uint32_t *array, int start, int count)
 
static uint32_t sd_mmc_calculate_transfer_speed (uint32_t csd0)
 
int sd_mmc_go_idle (struct storage_media *media)
 
int sd_mmc_send_status (struct storage_media *media, ssize_t tries)
 
int sd_mmc_set_blocklen (struct sd_mmc_ctrlr *ctrlr, int len)
 
int sd_mmc_enter_standby (struct storage_media *media)
 

Function Documentation

◆ sd_mmc_calculate_transfer_speed()

static uint32_t sd_mmc_calculate_transfer_speed ( uint32_t  csd0)
static

Definition at line 29 of file sd_mmc.c.

Referenced by sd_mmc_enter_standby().

Here is the caller graph for this function:

◆ sd_mmc_enter_standby()

◆ sd_mmc_extract_uint32_bits()

uint64_t sd_mmc_extract_uint32_bits ( const uint32_t array,
int  start,
int  count 
)

Definition at line 17 of file sd_mmc.c.

References count, and value.

Referenced by mmc_update_capacity(), sd_mmc_enter_standby(), and storage_startup().

Here is the caller graph for this function:

◆ sd_mmc_go_idle()

int sd_mmc_go_idle ( struct storage_media media)

◆ sd_mmc_send_status()

◆ sd_mmc_set_blocklen()

int sd_mmc_set_blocklen ( struct sd_mmc_ctrlr ctrlr,
int  len 
)

Definition at line 128 of file sd_mmc.c.

References CARD_RSP_R1, mmc_command::cmdarg, mmc_command::cmdidx, mmc_command::flags, MMC_CMD_SET_BLOCKLEN, NULL, mmc_command::resp_type, and sd_mmc_ctrlr::send_cmd.

Referenced by storage_block_setup().

Here is the caller graph for this function: