forked from mirrors/linux
		
	MMC host:
- sdhci-sprd: Add a missing pm_runtime_put_noidle() to fix deferred probe - dw_mmc: Fix occasional hang after tuning on eMMC - meson-mx-sdio: Fix misuse of GENMASK macro - mmc_spi: Fix CRC problems for writes by using BDI_CAP_STABLE_WRITES -----BEGIN PGP SIGNATURE----- iQJLBAABCgA1FiEEugLDXPmKSktSkQsV/iaEJXNYjCkFAl1CwWwXHHVsZi5oYW5z c29uQGxpbmFyby5vcmcACgkQ/iaEJXNYjCljiQ//X06DrePaJ9KUzN7nomTeVRB0 spPPPQwZRTVd4UFi8pZVXtvE7is20IZA2yRknrjHK3uQb6peC3ogbKD9J+0Fxggn ImCzjAmvACK9gdyyGv5MI9yKZca6HGRfIPuJ5nYw2VSzsyuMRIJwg3yzVcuGxnu7 zwWeCGOHLBq+aZ5dxB0F7jmoGnT1DPZqs0FRRDlQ1NvPjPBloJq1On5HH1RVmCmt tZD8DVVv7aj31yY/JnKJlrm8ddwVtoEIWtqCP0RQuQzBhFNXVbNr9oIVN/kOGvDD khKncKu4hQpj35EC2cqA0fMoX17ciq/HVUQuR8WJC9DxPSr6x1lwn/yAv9mearpM BsC28RrIx75iWg5U3ZrTMV2HFmhDEwnyufxkKS9w+2uKktVkoThe/bClfqo5wtrY kuq4snzvJMMJRYQfvefOi4W/qRaXutA+ehpdvvQvsC8X3GI2SPVfpOj8RQ1gFAK1 8xpbugDYnvim1M9FLARUdIDxIG3oEqGSEWxm1i4q6KKlSalckpQ1iT9y3HQLy36X YXdXDQ5ifHN3bTFnFvyDLAuOFM9Vdj/91nC+vu21NfBotDJmAsJJlIv494UvPFoq 0UOtht3upzi9tmuVk2gxh2pC9WnFBh5+61wfrXMRyoSamYYu+3N204sCY1uIAhDo fZw7jeJ8KKOEcUlX8ls= =arat -----END PGP SIGNATURE----- Merge tag 'mmc-v5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc Pull MMC fixes from Ulf Hansson: - sdhci-sprd: Add a missing pm_runtime_put_noidle() to fix deferred probe - dw_mmc: Fix occasional hang after tuning on eMMC - meson-mx-sdio: Fix misuse of GENMASK macro - mmc_spi: Fix CRC problems for writes by using BDI_CAP_STABLE_WRITES * tag 'mmc-v5.3-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/ulfh/mmc: mmc: mmc_spi: Enable stable writes mmc: meson-mx-sdio: Fix misuse of GENMASK macro mmc: dw_mmc: Fix occasional hang after tuning on eMMC mmc: host: sdhci-sprd: Fix the missing pm_runtime_put_noidle()
This commit is contained in:
		
						commit
						1e78030e5e
					
				
					 4 changed files with 8 additions and 3 deletions
				
			
		|  | @ -10,6 +10,7 @@ | |||
| #include <linux/kthread.h> | ||||
| #include <linux/scatterlist.h> | ||||
| #include <linux/dma-mapping.h> | ||||
| #include <linux/backing-dev.h> | ||||
| 
 | ||||
| #include <linux/mmc/card.h> | ||||
| #include <linux/mmc/host.h> | ||||
|  | @ -427,6 +428,10 @@ int mmc_init_queue(struct mmc_queue *mq, struct mmc_card *card) | |||
| 		goto free_tag_set; | ||||
| 	} | ||||
| 
 | ||||
| 	if (mmc_host_is_spi(host) && host->use_spi_crc) | ||||
| 		mq->queue->backing_dev_info->capabilities |= | ||||
| 			BDI_CAP_STABLE_WRITES; | ||||
| 
 | ||||
| 	mq->queue->queuedata = mq; | ||||
| 	blk_queue_rq_timeout(mq->queue, 60 * HZ); | ||||
| 
 | ||||
|  |  | |||
|  | @ -2012,8 +2012,7 @@ static void dw_mci_tasklet_func(unsigned long priv) | |||
| 				 * delayed. Allowing the transfer to take place | ||||
| 				 * avoids races and keeps things simple. | ||||
| 				 */ | ||||
| 				if ((err != -ETIMEDOUT) && | ||||
| 				    (cmd->opcode == MMC_SEND_TUNING_BLOCK)) { | ||||
| 				if (err != -ETIMEDOUT) { | ||||
| 					state = STATE_SENDING_DATA; | ||||
| 					continue; | ||||
| 				} | ||||
|  |  | |||
|  | @ -73,7 +73,7 @@ | |||
| 	#define MESON_MX_SDIO_IRQC_IF_CONFIG_MASK		GENMASK(7, 6) | ||||
| 	#define MESON_MX_SDIO_IRQC_FORCE_DATA_CLK		BIT(8) | ||||
| 	#define MESON_MX_SDIO_IRQC_FORCE_DATA_CMD		BIT(9) | ||||
| 	#define MESON_MX_SDIO_IRQC_FORCE_DATA_DAT_MASK		GENMASK(10, 13) | ||||
| 	#define MESON_MX_SDIO_IRQC_FORCE_DATA_DAT_MASK		GENMASK(13, 10) | ||||
| 	#define MESON_MX_SDIO_IRQC_SOFT_RESET			BIT(15) | ||||
| 	#define MESON_MX_SDIO_IRQC_FORCE_HALT			BIT(30) | ||||
| 	#define MESON_MX_SDIO_IRQC_HALT_HOLE			BIT(31) | ||||
|  |  | |||
|  | @ -624,6 +624,7 @@ static int sdhci_sprd_probe(struct platform_device *pdev) | |||
| 	sdhci_cleanup_host(host); | ||||
| 
 | ||||
| pm_runtime_disable: | ||||
| 	pm_runtime_put_noidle(&pdev->dev); | ||||
| 	pm_runtime_disable(&pdev->dev); | ||||
| 	pm_runtime_set_suspended(&pdev->dev); | ||||
| 
 | ||||
|  |  | |||
		Loading…
	
		Reference in a new issue
	
	 Linus Torvalds
						Linus Torvalds