if (err != MMC_ERR_NONE) { err = mmc_send_app_op_cond(host, 0, &ocr); 
if (err != MMC_ERR_NONE) { host->mode = MMC_MODE_MMC;  err = mmc_send_op_cond(host, 0, &ocr); 
static void mmc_setup(struct mmc_host *host){	if (host->ios.power_mode != MMC_POWER_ON) {		int err;		u32 ocr;		host->mode = MMC_MODE_MMC;		mmc_power_up(host);		mmc_idle_cards(host);		err = mmc_send_op_cond(host, 0, &ocr);		/*		 * If we fail to detect any cards then try		 * searching for SD cards.		 */		if (err != MMC_ERR_NONE)		{			err = mmc_send_app_op_cond(host, 0, &ocr);			if (err != MMC_ERR_NONE)				return;			host->mode = MMC_MODE_SD;		}		host->ocr = mmc_select_voltage(host, ocr);		/*		 * Since we're changing the OCR value, we seem to		 * need to tell some cards to go back to the idle		 * state.  We wait 1ms to give cards time to		 * respond.		 */		if (host->ocr)			mmc_idle_cards(host);	} else {		host->ios.bus_mode = MMC_BUSMODE_OPENDRAIN;		host->ios.clock = host->f_min;		host->ops->set_ios(host, &host->ios);		/*		 * We should remember the OCR mask from the existing		 * cards, and detect the new cards OCR mask, combine		 * the two and re-select the VDD.  However, if we do		 * change VDD, we should do an idle, and then do a		 * full re-initialisation.  We would need to notify		 * drivers so that they can re-setup the cards as		 * well, while keeping their queues at bay.		 *		 * For the moment, we take the easy way out - if the		 * new cards don't like our currently selected VDD,		 * they drop off the bus.		 */	}	if (host->ocr == 0)		return;	/*	 * Send the selected OCR multiple times... until the cards	 * all get the idea that they should be ready for CMD2.	 * (My SanDisk card seems to need this.)	 */	if (host->mode == MMC_MODE_SD)		mmc_send_app_op_cond(host, host->ocr, NULL);	else		mmc_send_op_cond(host, host->ocr, NULL);	mmc_discover_cards(host);	/*	 * Ok, now switch to push-pull mode.	 */	host->ios.bus_mode = MMC_BUSMODE_PUSHPULL;	host->ops->set_ios(host, &host->ios);	mmc_read_csds(host);}
10457	/local/tlutelli/issta_data/temp/c/2005_temp/2005/10457/a00fc09029f02ca833cf90e5d5625f08c4ac4f51/mmc.c/clean/drivers/mmc/mmc.c