MMC_RSP_BITS() function
Extract up to 32 sequential bits from an array of 32-bit words Bits within the word are numbered in the increasing order from LSB to MSB. As an example, consider 2 32-bit words: 0x01234567 0x89abcdef On a little-endian system, the bytes are stored in memory as follows: 67 45 23 01 ef cd ab 89 MMC_RSP_BITS will extract bits as follows: start=0 len=4 -> result=0x00000007 start=0 len=12 -> result=0x00000567 start=28 len=8 -> result=0x000000f0 start=59 len=5 -> result=0x00000011
Syntax
static inline uint32_t MMC_RSP_BITS(uint32_t *src,
int start,
int len);
Arguments
src
array of words to extract bits from
start
index of the first bit to extract
len
number of bits to extract, 1 to 32
Return value
32-bit word where requested bits start from LSB
![]()
static inline uint32_t MMC_RSP_BITS(uint32_t *src, int start, int len)
MMC_RSP_BITS() is called by 10 functions:
![]()
MMC_RSP_BITS()
MMC_RSP_BITS():
![]()
MMC_RSP_BITS()