[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <20140115000832.56c62878@alan.etchedpixels.co.uk>
Date: Wed, 15 Jan 2014 00:08:32 +0000
From: One Thousand Gnomes <gnomes@...rguk.ukuu.org.uk>
To: Ondrej Zary <linux@...nbow-software.org>
Cc: linux-mmc@...r.kernel.org,
Kernel development list <linux-kernel@...r.kernel.org>
Subject: Re: [RFC PATCH] mmc: add Toshiba PCI SD controller driver
> + pr_debug("Command IRQ complete %d %d %x\n", cmd->opcode, cmd->error,
> + cmd->flags);
dev_dbg... (and a few other places)
> +/* Set MMC clock / power.
> + * Note: This controller uses a simple divider scheme therefore it cannot run
> + * SD/MMC cards at full speed (24/20MHz). HCLK (=33MHz PCI clock?) is too high
> + * and the next slowest is 16MHz (div=2).
> + */
> +static void toshsd_set_ios(struct mmc_host *mmc, struct mmc_ios *ios)
This has some very long delays with interrupts off from the
spin_lock_irqsave. I guess thats hardly #1 priority though nor a killer.
> + /* reset */
> + toshsd_writew(host, SD_SOFTWARERESET, 0); /* assert */
> + mdelay(2);
> + toshsd_writew(host, SD_SOFTWARERESET, 1); /* deassert */
> + mdelay(2);
This doesn't do quite what you might think - if the device is mmio mapped
then the write can be posted so the mdelay(2) may not be 2mS. I guess if
the old driver didn't do it then it was already plenty long enough...
> + base = pci_resource_start(pdev, 0);
> + dev_info(&pdev->dev, "MMIO %pa, IRQ %d\n", &base, pdev->irq);
dbg
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists