<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/drivers/mmc, branch v6.16</title>
<subtitle>Mirror of https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/
</subtitle>
<id>https://git.shady.money/linux/atom?h=v6.16</id>
<link rel='self' href='https://git.shady.money/linux/atom?h=v6.16'/>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/'/>
<updated>2025-07-03T12:16:16Z</updated>
<entry>
<title>mmc: bcm2835: Fix dma_unmap_sg() nents value</title>
<updated>2025-07-03T12:16:16Z</updated>
<author>
<name>Thomas Fourier</name>
<email>fourier.thomas@gmail.com</email>
</author>
<published>2025-06-30T09:35:07Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ff09b71bf9daeca4f21d6e5e449641c9fad75b53'/>
<id>urn:sha1:ff09b71bf9daeca4f21d6e5e449641c9fad75b53</id>
<content type='text'>
The dma_unmap_sg() functions should be called with the same nents as the
dma_map_sg(), not the value the map function returned.

Fixes: 2f5da678351f ("mmc: bcm2835: Properly handle dmaengine_prep_slave_sg")
Signed-off-by: Thomas Fourier &lt;fourier.thomas@gmail.com&gt;
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250630093510.82871-2-fourier.thomas@gmail.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mmc: sdhci_am654: Workaround for Errata i2312</title>
<updated>2025-07-03T11:37:34Z</updated>
<author>
<name>Judith Mendez</name>
<email>jm@ti.com</email>
</author>
<published>2025-06-26T23:14:52Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=6d0b1c01847fedd7c85a5cdf59b8cfc7d14512e6'/>
<id>urn:sha1:6d0b1c01847fedd7c85a5cdf59b8cfc7d14512e6</id>
<content type='text'>
Errata i2312 [0] for K3 silicon mentions the maximum obtainable
timeout through MMC host controller is 700ms. And for commands taking
longer than 700ms, hardware timeout should be disabled and software
timeout should be used.

The workaround for Errata i2312 can be achieved by adding
SDHCI_QUIRK2_DISABLE_HW_TIMEOUT quirk in sdhci_am654.

[0] https://www.ti.com/lit/pdf/sprz487

Signed-off-by: Judith Mendez &lt;jm@ti.com&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Fixes: 41fd4caeb00b ("mmc: sdhci_am654: Add Initial Support for AM654 SDHCI driver")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250626231452.3460987-1-jm@ti.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mmc: sdhci-pci: Quirk for broken command queuing on Intel GLK-based Positivo models</title>
<updated>2025-07-03T11:01:50Z</updated>
<author>
<name>Edson Juliano Drosdeck</name>
<email>edson.drosdeck@gmail.com</email>
</author>
<published>2025-06-26T11:24:42Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=50c78f398e92fafa1cbba3469c95fe04b2e4206d'/>
<id>urn:sha1:50c78f398e92fafa1cbba3469c95fe04b2e4206d</id>
<content type='text'>
Disable command queuing on Intel GLK-based Positivo models.

Without this quirk, CQE (Command Queuing Engine) causes instability
or I/O errors during operation. Disabling it ensures stable
operation on affected devices.

Signed-off-by: Edson Juliano Drosdeck &lt;edson.drosdeck@gmail.com&gt;
Fixes: bedf9fc01ff1 ("mmc: sdhci: Workaround broken command queuing on Intel GLK")
Cc: stable@vger.kernel.org
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Link: https://lore.kernel.org/r/20250626112442.9791-1-edson.drosdeck@gmail.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mtk-sd: reset host-&gt;mrq on prepare_data() error</title>
<updated>2025-06-25T12:42:51Z</updated>
<author>
<name>Sergey Senozhatsky</name>
<email>senozhatsky@chromium.org</email>
</author>
<published>2025-06-25T05:20:37Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=ec54c0a20709ed6e56f40a8d59eee725c31a916b'/>
<id>urn:sha1:ec54c0a20709ed6e56f40a8d59eee725c31a916b</id>
<content type='text'>
Do not leave host with dangling -&gt;mrq pointer if we hit
the msdc_prepare_data() error out path.

Signed-off-by: Sergey Senozhatsky &lt;senozhatsky@chromium.org&gt;
Reviewed-by: Masami Hiramatsu (Google) &lt;mhiramat@kernel.org&gt;
Fixes: f5de469990f1 ("mtk-sd: Prevent memory corruption from DMA map failure")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250625052106.584905-1-senozhatsky@chromium.org
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>Revert "mmc: sdhci: Disable SD card clock before changing parameters"</title>
<updated>2025-06-24T12:18:07Z</updated>
<author>
<name>Ulf Hansson</name>
<email>ulf.hansson@linaro.org</email>
</author>
<published>2025-06-24T11:09:32Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=dcc3bcfc5b50c625b475dcc25d167b6b947a6637'/>
<id>urn:sha1:dcc3bcfc5b50c625b475dcc25d167b6b947a6637</id>
<content type='text'>
It has turned out the trying to strictly conform to the SDHCI specification
is causing problems. Let's revert and start over.

This reverts commit fb3bbc46c94f261b6156ee863c1b06c84cf157dc.

Cc: Erick Shepherd &lt;erick.shepherd@ni.com&gt;
Cc: stable@vger.kernel.org
Fixes: fb3bbc46c94f ("mmc: sdhci: Disable SD card clock before changing parameters")
Suggested-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Reported-by: Jonathan Liu &lt;net147@gmail.com&gt;
Reported-by: Salvatore Bonaccorso &lt;carnil@debian.org&gt;
Closes: https://bugs.debian.org/1108065
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
Link: https://lore.kernel.org/r/20250624110932.176925-1-ulf.hansson@linaro.org
</content>
</entry>
<entry>
<title>mmc: sdhci-uhs2: Adjust some error messages and register dump for SD UHS-II card</title>
<updated>2025-06-24T10:38:32Z</updated>
<author>
<name>Victor Shih</name>
<email>victor.shih@genesyslogic.com.tw</email>
</author>
<published>2025-06-06T11:01:21Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=49b14db035135341f6cf4de7af6ac2cbc8ad29b6'/>
<id>urn:sha1:49b14db035135341f6cf4de7af6ac2cbc8ad29b6</id>
<content type='text'>
Adjust some error messages to debug mode and register dump to dynamic
debug mode to avoid causing misunderstanding it is an error.

Signed-off-by: Victor Shih &lt;victor.shih@genesyslogic.com.tw&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250606110121.96314-4-victorshihgli@gmail.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mmc: sdhci: Add a helper function for dump register in dynamic debug mode</title>
<updated>2025-06-24T10:38:10Z</updated>
<author>
<name>Victor Shih</name>
<email>victor.shih@genesyslogic.com.tw</email>
</author>
<published>2025-06-06T11:01:20Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=2881ba9af073faa8ee7408a8d1e0575e50eb3f6c'/>
<id>urn:sha1:2881ba9af073faa8ee7408a8d1e0575e50eb3f6c</id>
<content type='text'>
Add a helper function for dump register in dynamic debug mode.

Signed-off-by: Victor Shih &lt;victor.shih@genesyslogic.com.tw&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250606110121.96314-3-victorshihgli@gmail.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mmc: core: Adjust some error messages for SD UHS-II cards</title>
<updated>2025-06-24T10:38:02Z</updated>
<author>
<name>Victor Shih</name>
<email>victor.shih@genesyslogic.com.tw</email>
</author>
<published>2025-06-06T11:01:19Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=14633da0f416fdbb6844d1b295cdc828b666e273'/>
<id>urn:sha1:14633da0f416fdbb6844d1b295cdc828b666e273</id>
<content type='text'>
Adjust some error messages to debug mode to avoid causing
misunderstanding it is an error.

Signed-off-by: Victor Shih &lt;victor.shih@genesyslogic.com.tw&gt;
Acked-by: Adrian Hunter &lt;adrian.hunter@intel.com&gt;
Fixes: 9a9f7e13952b ("mmc: core: Support UHS-II card control and access")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250606110121.96314-2-victorshihgli@gmail.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mtk-sd: Prevent memory corruption from DMA map failure</title>
<updated>2025-06-19T11:00:40Z</updated>
<author>
<name>Masami Hiramatsu (Google)</name>
<email>mhiramat@kernel.org</email>
</author>
<published>2025-06-12T11:26:10Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=f5de469990f19569627ea0dd56536ff5a13beaa3'/>
<id>urn:sha1:f5de469990f19569627ea0dd56536ff5a13beaa3</id>
<content type='text'>
If msdc_prepare_data() fails to map the DMA region, the request is
not prepared for data receiving, but msdc_start_data() proceeds
the DMA with previous setting.
Since this will lead a memory corruption, we have to stop the
request operation soon after the msdc_prepare_data() fails to
prepare it.

Signed-off-by: Masami Hiramatsu (Google) &lt;mhiramat@kernel.org&gt;
Fixes: 208489032bdd ("mmc: mediatek: Add Mediatek MMC driver")
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/174972756982.3337526.6755001617701603082.stgit@mhiramat.tok.corp.google.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
<entry>
<title>mtk-sd: Fix a pagefault in dma_unmap_sg() for not prepared data</title>
<updated>2025-06-09T13:32:34Z</updated>
<author>
<name>Masami Hiramatsu (Google)</name>
<email>mhiramat@kernel.org</email>
</author>
<published>2025-06-05T01:07:38Z</published>
<link rel='alternate' type='text/html' href='https://git.shady.money/linux/commit/?id=539d80575b810c7a5987c7ac8915e3bc99c03695'/>
<id>urn:sha1:539d80575b810c7a5987c7ac8915e3bc99c03695</id>
<content type='text'>
When swiotlb buffer is full, the dma_map_sg() returns 0 to
msdc_prepare_data(), but it does not check it and sets the
MSDC_PREPARE_FLAG.

swiotlb_tbl_map_single() /* prints "swiotlb buffer is full" */
  &lt;-swiotlb_map()
    &lt;-dma_direct_map_page()
      &lt;-dma_direct_map_sg()
        &lt;-__dma_map_sg_attrs()
          &lt;-dma_map_sg_attrs()
            &lt;-dma_map_sg()  /* returns 0 (pages mapped) */
              &lt;-msdc_prepare_data()

Then, the msdc_unprepare_data() checks MSDC_PREPARE_FLAG and calls
dma_unmap_sg() with unmapped pages. It causes a page fault.

To fix this problem, Do not set MSDC_PREPARE_FLAG if dma_map_sg()
fails because this is not prepared.

Fixes: 208489032bdd ("mmc: mediatek: Add Mediatek MMC driver")
Signed-off-by: Masami Hiramatsu (Google) &lt;mhiramat@kernel.org&gt;
Tested-by: Sergey Senozhatsky &lt;senozhatsky@chromium.org&gt;
Reviewed-by: AngeloGioacchino Del Regno &lt;angelogioacchino.delregno@collabora.com&gt;
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/174908565814.4056588.769599127120955383.stgit@mhiramat.tok.corp.google.com
Signed-off-by: Ulf Hansson &lt;ulf.hansson@linaro.org&gt;
</content>
</entry>
</feed>
