Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 137aeca2 authored by Dmitry Shmidt's avatar Dmitry Shmidt
Browse files

ANDROID: mmc: sdio: Fix enable_hs and enable_wide in sdio_reset_comm()

parent 48ed6faf
Loading
Loading
Loading
Loading
+10 −15
Original line number Diff line number Diff line
@@ -1265,27 +1265,22 @@ int sdio_reset_comm(struct mmc_card *card)
	 * Switch to high-speed (if supported).
	 */
	err = sdio_enable_hs(card);
	if (err)
	if (err > 0)
		mmc_sd_go_highspeed(card);
	else if (err)
		goto err;

	/*
	 * Change to the card's maximum speed.
	 */
	if (mmc_card_highspeed(card)) {
		/*
		 * The SDIO specification doesn't mention how
		 * the CIS transfer speed register relates to
		 * high-speed, but it seems that 50 MHz is
		 * mandatory.
		 */
		mmc_set_clock(host, 50000000);
	} else {
		mmc_set_clock(host, card->cis.max_dtr);
	}
	mmc_set_clock(host, mmc_sdio_get_max_clock(card));

	err = sdio_enable_wide(card);
	if (err)
	err = sdio_enable_4bit_bus(card);
	if (err > 0)
		mmc_set_bus_width(host, MMC_BUS_WIDTH_4);
	else if (err)
		goto err;

	mmc_release_host(host);
	return 0;
err: