There's some merge problem between sdhic core and sdhci-s3c host.  After
mutex is changed to spinlock.  It needs to use use spin lock functions and
use the correct card detection function.
Signed-off-by: Kyungmin Park <kyungmin.park@samsung.com>
Cc: <linux-mmc@vger.kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
 {
        struct sdhci_host *host = platform_get_drvdata(dev);
        if (host) {
-               mutex_lock(&host->lock);
+               spin_lock(&host->lock);
                if (state) {
                        dev_dbg(&dev->dev, "card inserted.\n");
                        host->flags &= ~SDHCI_DEVICE_DEAD;
                        host->flags |= SDHCI_DEVICE_DEAD;
                        host->quirks &= ~SDHCI_QUIRK_BROKEN_CARD_DETECTION;
                }
-               sdhci_card_detect(host);
-               mutex_unlock(&host->lock);
+               tasklet_schedule(&host->card_tasklet);
+               spin_unlock(&host->lock);
        }
 }