Skip to contentSkip to conversation

rtsx patch for for-next branch in MFD tree

PATCH Superseded [email protected] 2 participants 6 messages Nov 20, 2012 MMC, SD and SDIO

v2 of 3 Superseded Latest is v3 →

lore
Share & tools
lore
#0 lore raw

v2 cover rtsx patch for for-next branch in MFD tree

From: Wei WANG <[email protected]>

Wei WANG (2):
mmc/host/rtsx: Configure SD_CFG2 register in sd_rw_multi mmc/host/rtsx: Explicitely include slab.h in rtsx_pci_sdmmc.c

 drivers/mmc/host/rtsx_pci_sdmmc.c |    2 ++
 1 file changed, 2 insertions(+)
Signature · 1 line
1.7.9.5
#1 lore raw

PATCH v2 1/2 mmc/host/rtsx: Configure SD_CFG2 register in sd_rw_multi

From: Wei WANG <[email protected]>

For Realtek card reader, internal regsiter SD_CFG2 should be configured before transferring data. In the prior version, the value of this register has been calculated, but forgotten to write back to the internal register.

---
 drivers/mmc/host/rtsx_pci_sdmmc.c |    1 +
 1 file changed, 1 insertion(+)
drivers/mmc/host/rtsx_pci_sdmmc.c +1 -0
index 0e934bf..067dd46 100644
@@ -405,6 +405,7 @@ static int sd_rw_multi(struct realtek_pci_sdmmc *host, struct mmc_request *mrq)
 	rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, CARD_DATA_SOURCE,
 			0x01, RING_BUFFER);
 
+	rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, SD_CFG2, 0xFF, cfg2);
 	rtsx_pci_add_cmd(pcr, WRITE_REG_CMD, SD_TRANSFER, 0xFF,
 			trans_mode | SD_TRANSFER_START);
 	rtsx_pci_add_cmd(pcr, CHECK_REG_CMD, SD_TRANSFER,
Signature · 1 line
1.7.9.5
#2 lore raw

Re: [PATCH v2 1/2] mmc/host/rtsx: Configure SD_CFG2 register in sd_rw_multi

Hi,

Sorry to be pedantic, but:

Quoted 3 lines · On Mon, Nov 19 2012, [email protected] wrote:

For Realtek card reader, internal regsiter SD_CFG2 should be configured before transferring data. In the prior version, the value of this register has been calculated, but forgotten to write back to the internal register.

With what consequences? Was the data transfer failing? Under which circumstances?

Thanks,

- Chris.

Signature · 2 lines
Chris Ball   <[email protected]>   <http://printf.net/>
One Laptop Per Child
author
#3 lore raw

Re: [PATCH v2 1/2] mmc/host/rtsx: Configure SD_CFG2 register in sd_rw_multi

Quoted 8 lines · Chris Ball

Hi,

Sorry to be pedantic, but:

Quoted 3 lines · On Mon, Nov 19 2012, [email protected] wrote:

For Realtek card reader, internal regsiter SD_CFG2 should be configured before transferring data. In the prior version, the value of this register has been calculated, but forgotten to write back to the internal register.

Quoted 6 lines

With what consequences? Was the data transfer failing? Under which circumstances?

Thanks,

- Chris.

Hi Chris:

It's about compatibility issue. The default value of SD_CFG2 is proper for writing data. But for reading sequence, the timing is not good enough. So in some extreme circumstance, card reader may sample the response data from the card as good even if the data is wrong. And this will cause the bad consequence.

Shall I modify the commit and resend the patchset again?

BR,
Wei WANG

Acked-by
#4 lore raw

Re: [PATCH v2 1/2] mmc/host/rtsx: Configure SD_CFG2 register in sd_rw_multi

Hi,

Quoted 7 lines · wwang

It's about compatibility issue. The default value of SD_CFG2 is proper for writing data. But for reading sequence, the timing is not good enough. So in some extreme circumstance, card reader may sample the response data from the card as good even if the data is wrong. And this will cause the bad consequence.

Shall I modify the commit and resend the patchset again?

Thanks! Yes, please resend.

I won't be merging this one because Samuel is merging the initial patchset, but I'll merge patches for the MMC side after 3.8. For these:

- Chris.

Signature · 2 lines
Chris Ball   <[email protected]>   <http://printf.net/>
One Laptop Per Child
#5 lore raw

PATCH v2 2/2 mmc/host/rtsx: Explicitely include slab.h in rtsx_pci_sdmmc.c

In reply to [email protected]

From: Wei WANG <[email protected]>

This fixes the following build error on some architectures (parisc at least):

drivers/mmc/host/rtsx_pci_sdmmc.c: In function 'sd_normal_rw':
drivers/mmc/host/rtsx_pci_sdmmc.c:448:2: error: implicit declaration of function 'kzalloc' [-Werror=implicit-function-declaration] drivers/mmc/host/rtsx_pci_sdmmc.c:448:6: warning: assignment makes pointer from integer without a cast [enabled by default] drivers/mmc/host/rtsx_pci_sdmmc.c:472:2: error: implicit declaration of function 'kfree' [-Werror=implicit-function-declaration]

---
 drivers/mmc/host/rtsx_pci_sdmmc.c |    1 +
 1 file changed, 1 insertion(+)
drivers/mmc/host/rtsx_pci_sdmmc.c +1 -0
index 067dd46..571915d 100644
@@ -21,6 +21,7 @@
  */
 
 #include <linux/module.h>
+#include <linux/slab.h>
 #include <linux/highmem.h>
 #include <linux/delay.h>
 #include <linux/platform_device.h>
Signature · 1 line
1.7.9.5