/* * Default bus width is 1 bit. */ host->ios.bus_width = MMC_BUS_WIDTH_1;  /* * We can only change the bus width of the selected * card so therefore we have to put the handling * here. */ if (host->caps & MMC_CAP_4_BIT_DATA) { /* * The card is in 1 bit mode by default so * we only need to change if it supports the * wider version. */ if (mmc_card_sd(card) && (card->scr.bus_widths & SD_SCR_BUS_WIDTH_4)) { struct mmc_command cmd; cmd.opcode = SD_APP_SET_BUS_WIDTH; cmd.arg = SD_BUS_WIDTH_4; cmd.flags = MMC_RSP_R1;  err = mmc_wait_for_app_cmd(host, card->rca, &cmd, CMD_RETRIES); if (err != MMC_ERR_NONE) return err;  host->ios.bus_width = MMC_BUS_WIDTH_4; } }  host->ops->set_ios(host, &host->ios);  
static int mmc_select_card(struct mmc_host *host, struct mmc_card *card){	int err;	struct mmc_command cmd;	BUG_ON(host->card_busy == NULL);	if (host->card_selected == card)		return MMC_ERR_NONE;	host->card_selected = card;	cmd.opcode = MMC_SELECT_CARD;	cmd.arg = card->rca << 16;	cmd.flags = MMC_RSP_R1;	err = mmc_wait_for_cmd(host, &cmd, CMD_RETRIES);	if (err != MMC_ERR_NONE)		return err;	return MMC_ERR_NONE;}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/f218278a456b3c272b480443c89004c3d2a49f18/mmc.c/buggy/drivers/mmc/mmc.c