В сообщении от 15 февраля 2010 17:58:24 автор Maxim Levitsky написал: > Not sure if I need the SDHCI_QUIRK_CLOCK_BEFORE_RESET. Driver sometimes doesn't detect card without this quirk for me. > What I don't get is why DMA capability isn't advertised? > > Since xD and memstick portions do support DMA, I can't belive that they > don't use DMA in SD/SDHCI portion. > > Ah, I forgot that SDHCI is handled by microsoft driver.... Maybe it > doesn't test the DMA bits. > > If we were to follow the way MS driver works, we wouldn't need the > quirks, right? We need generic quirk for ricoh readers, see attached patch Regards Vasily
From 9cbd6c6667d8a2fce583e1e2e7c253b75ec1b675 Mon Sep 17 00:00:00 2001 From: Vasily Khoruzhick <anarsoul@xxxxxxxxx> Date: Mon, 15 Feb 2010 18:10:41 +0200 Subject: [PATCH] Enable DMA on Ricoh sdhci reader by default Signed-off-by: Vasily Khoruzhick <anarsoul@xxxxxxxxx> --- drivers/mmc/host/sdhci-pci.c | 7 +++---- 1 files changed, 3 insertions(+), 4 deletions(-) diff --git a/drivers/mmc/host/sdhci-pci.c b/drivers/mmc/host/sdhci-pci.c index 5c3a176..12f5b09 100644 --- a/drivers/mmc/host/sdhci-pci.c +++ b/drivers/mmc/host/sdhci-pci.c @@ -80,9 +80,6 @@ struct sdhci_pci_chip { static int ricoh_probe(struct sdhci_pci_chip *chip) { - if (chip->pdev->subsystem_vendor == PCI_VENDOR_ID_IBM) - chip->quirks |= SDHCI_QUIRK_CLOCK_BEFORE_RESET; - if (chip->pdev->subsystem_vendor == PCI_VENDOR_ID_SAMSUNG || chip->pdev->subsystem_vendor == PCI_VENDOR_ID_SONY) chip->quirks |= SDHCI_QUIRK_NO_CARD_NO_RESET; @@ -92,7 +89,9 @@ static int ricoh_probe(struct sdhci_pci_chip *chip) static const struct sdhci_pci_fixes sdhci_ricoh = { .probe = ricoh_probe, - .quirks = SDHCI_QUIRK_32BIT_DMA_ADDR, + .quirks = SDHCI_QUIRK_32BIT_DMA_ADDR | + SDHCI_QUIRK_FORCE_DMA | + SDHCI_QUIRK_CLOCK_BEFORE_RESET, }; static const struct sdhci_pci_fixes sdhci_ene_712 = { -- 1.6.6.1
Attachment:
signature.asc
Description: This is a digitally signed message part.