/* Given a 64-bit response, decode to our card SCR structure.  */
static int mmc_decode_scr(struct mmc_card *card)
/* Given a 64-bit response, decode to our card SCR structure.  */
static int mmc_decode_scr(struct mmc_card *card)
{
	struct sd_scr *scr = &card->scr;
	unsigned int scr_struct;
	u32 resp[4];
	resp[3] = card->raw_scr[1];
	resp[2] = card->raw_scr[0];
	scr_struct = UNSTUFF_BITS(resp, 60, 4);
	if (scr_struct != 0) {
		printk(KERN_ERR "%s: unrecognised SCR structure version %d\n",
			mmc_hostname(card->host), scr_struct);
		return -EINVAL;
	}
	scr->sda_vsn = UNSTUFF_BITS(resp, 56, 4);
	scr->bus_widths = UNSTUFF_BITS(resp, 48, 4);
	return 0;
}